improve generated graph lines, so it aligns perfectly with clickPoints (but there are two 'todo' notes: one when the height is greather than the width, and also the constant vector when the program starts is an empty vector)

This commit is contained in:
2024-08-03 04:40:53 +01:00
parent 5a14f5300b
commit ee2274ffbc
8 changed files with 148 additions and 107 deletions

View File

@@ -28,6 +28,7 @@ struct
( drawMailbox
, window
, graphDrawObject
, drawGraphLength
, buttonDrawObject
, buttonDrawLength
, triangleDrawObject
@@ -40,7 +41,7 @@ struct
val _ = Gles3.clearColor (1.0, 1.0, 1.0, 1.0)
val _ = Gles3.clear ()
val _ = AppDraw.drawGraphLines graphDrawObject
val _ = AppDraw.drawGraphLines (graphDrawObject, drawGraphLength)
val _ =
AppDraw.drawTriangles (triangleDrawObject, triangleDrawLength)
val _ = AppDraw.drawButton (buttonDrawObject, buttonDrawLength)
@@ -52,6 +53,7 @@ struct
( drawMailbox
, window
, graphDrawObject
, drawGraphLength
, buttonDrawObject
, buttonDrawLength
, triangleDrawObject
@@ -69,6 +71,7 @@ struct
( drawMailbox
, window
, graphDrawObject
, drawGraphLength
, buttonDrawObject
, buttonDrawLength
, triangleDrawObject
@@ -87,6 +90,31 @@ struct
( drawMailbox
, window
, graphDrawObject
, drawGraphLength
, buttonDrawObject
, 0
, triangleDrawObject
, triangleDrawLength
)
end
| RESIZE_TRIANGLES_BUTTONS_AND_GRAPH {triangles, graphLines} =>
let
val _ = print ("resize in event loop\n")
val _ =
AppDraw.uploadTrianglesVector
(triangleDrawObject, triangles)
val triangleDrawLength = Vector.length triangles div 2
(* buttons are reset by setting buttonDrawLength to 0 *)
val _ =
AppDraw.uploadGraphLines
(graphDrawObject, graphLines)
val drawGraphLength = Vector.length graphLines div 2
in
draw
( drawMailbox
, window
, graphDrawObject
, drawGraphLength
, buttonDrawObject
, 0
, triangleDrawObject
@@ -98,6 +126,7 @@ struct
( drawMailbox
, window
, graphDrawObject
, drawGraphLength
, buttonDrawObject
, buttonDrawLength
, triangleDrawObject