allow width and height to have a different number of click points

This commit is contained in:
2025-02-18 11:53:28 +00:00
parent 68cbf59f04
commit 78905b59f0
9 changed files with 129 additions and 75 deletions

View File

@@ -80,7 +80,8 @@ struct
{ triangleStage = _
, mode
, triangles
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -108,7 +109,8 @@ struct
, redo = []
, mode = mode
, triangles = triangles
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -136,7 +138,8 @@ struct
{ mode
, triangles
, triangleStage = _
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -176,7 +179,8 @@ struct
, triangles = newTriangles
, undo = newUndo
, redo = []
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -202,7 +206,8 @@ struct
{ mode
, xClickPoints
, yClickPoints
, numClickPoints
, numClickPointsX
, numClickPointsY
, windowWidth
, windowHeight
, triangles
@@ -226,7 +231,8 @@ struct
{ mode = mode
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, triangles = triangles
, triangleStage = triangleStage
, windowWidth = windowWidth
@@ -254,7 +260,8 @@ struct
{ mode
, xClickPoints
, yClickPoints
, numClickPoints
, numClickPointsX
, numClickPointsY
, windowWidth
, windowHeight
, triangles
@@ -278,7 +285,8 @@ struct
{ mode = mode
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, triangles = triangles
, triangleStage = triangleStage
, windowWidth = windowWidth
@@ -308,7 +316,8 @@ struct
{ mode
, xClickPoints = _
, yClickPoints = _
, numClickPoints
, numClickPointsX
, numClickPointsY
, windowWidth = _
, windowHeight = _
, triangles
@@ -329,13 +338,14 @@ struct
, num
} = app
val xClickPoints = ClickPoints.generate (wStart, wFinish, numClickPoints)
val yClickPoints = ClickPoints.generate (hStart, hFinish, numClickPoints)
val xClickPoints = ClickPoints.generate (wStart, wFinish, numClickPointsX)
val yClickPoints = ClickPoints.generate (hStart, hFinish, numClickPointsY)
in
{ mode = mode
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, triangles = triangles
, triangleStage = triangleStage
, windowWidth = windowWidth
@@ -388,7 +398,8 @@ struct
, mouseY = _
, triangles
, triangleStage
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -412,7 +423,8 @@ struct
, mouseY = mouseY
, triangles = triangles
, triangleStage = triangleStage
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -439,7 +451,8 @@ struct
{ mode
, triangleStage = _
, triangles = _
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -472,7 +485,8 @@ struct
, triangles = newTriangles
, undo = newUndo
, redo = newRedo
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -499,7 +513,8 @@ struct
{ mode
, triangleStage = _
, triangles = _
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -531,7 +546,8 @@ struct
, triangles = newTriangles
, undo = newUndo
, redo = newRedo
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -557,7 +573,8 @@ struct
{ mode
, triangleStage
, triangles
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -584,7 +601,8 @@ struct
, triangles = triangles
, undo = undo
, redo = redo
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -609,7 +627,8 @@ struct
{ mode = _
, triangleStage
, triangles
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -636,7 +655,8 @@ struct
, triangles = triangles
, undo = undo
, redo = redo
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -661,7 +681,8 @@ struct
{ mode = _
, xClickPoints
, yClickPoints
, numClickPoints
, numClickPointsX
, numClickPointsY
, windowWidth
, windowHeight
, undo
@@ -690,7 +711,8 @@ struct
, undo = []
, redo = []
, showGraph = showGraph
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -715,7 +737,8 @@ struct
{ mode
, xClickPoints
, yClickPoints
, numClickPoints
, numClickPointsX
, numClickPointsY
, windowWidth
, windowHeight
, triangles
@@ -739,7 +762,8 @@ struct
{ mode = mode
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, triangles = triangles
, triangleStage = triangleStage
, windowWidth = windowWidth
@@ -767,7 +791,8 @@ struct
{ mode
, xClickPoints
, yClickPoints
, numClickPoints
, numClickPointsX
, numClickPointsY
, windowWidth
, windowHeight
, triangles
@@ -791,7 +816,8 @@ struct
{ mode = mode
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, triangles = triangles
, triangleStage = triangleStage
, windowWidth = windowWidth
@@ -813,13 +839,14 @@ struct
}
end
fun num (app: app_type, newNum): app_type =
fun num (app: app_type, newNum) : app_type =
let
val
{ triangleStage
, mode
, triangles
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -846,7 +873,8 @@ struct
, redo = []
, mode = mode
, triangles = triangles
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -866,13 +894,14 @@ struct
}
end
fun r (app: app_type): app_type =
fun r (app: app_type) : app_type =
let
val
{ triangleStage
, mode
, triangles
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -900,7 +929,8 @@ struct
, redo = []
, mode = mode
, triangles = triangles
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -920,13 +950,14 @@ struct
}
end
fun g (app: app_type): app_type =
fun g (app: app_type) : app_type =
let
val
{ triangleStage
, mode
, triangles
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -954,7 +985,8 @@ struct
, redo = []
, mode = mode
, triangles = triangles
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth
@@ -974,13 +1006,14 @@ struct
}
end
fun b (app: app_type): app_type =
fun b (app: app_type) : app_type =
let
val
{ triangleStage
, mode
, triangles
, numClickPoints
, numClickPointsX
, numClickPointsY
, xClickPoints
, yClickPoints
, windowWidth
@@ -1008,7 +1041,8 @@ struct
, redo = []
, mode = mode
, triangles = triangles
, numClickPoints = numClickPoints
, numClickPointsX = numClickPointsX
, numClickPointsY = numClickPointsY
, xClickPoints = xClickPoints
, yClickPoints = yClickPoints
, windowWidth = windowWidth