save grid to custom format

This commit is contained in:
2025-07-12 06:03:59 +01:00
parent 04bb7a18c0
commit eb0b8d31b2
6 changed files with 41 additions and 15 deletions

View File

@@ -520,19 +520,25 @@ struct
, Int.toString b
, " "
, Int.toString a
, " }"
, " } "
]
in
item :: acc
end
fun toString (squares, size) =
fun toString (squares, canvasWidth, canvasHeight) =
let
val size = Int.max (canvasWidth, canvasHeight)
val qtree = buildTree (0, 0, size, squares)
val bintree = merge (qtree, squares)
val vec = BinTree.foldr (toStringFolder, bintree, [])
val initial = ["}"]
val acc = BinTree.foldr (toStringFolder, bintree, initial)
val acc =
String.concat
[Int.toString canvasWidth, " ", Int.toString canvasHeight, " { "]
:: acc
in
Vector.concat vec
String.concat acc
end
end