upload new dots to GPU when there is a window resize too
This commit is contained in:
@@ -40,8 +40,7 @@ struct
|
||||
end
|
||||
| FIRST {x1, y1} =>
|
||||
let
|
||||
val drawVec =
|
||||
TriangleStage.firstToVector (x1, y1, dotVec, model)
|
||||
val drawVec = TriangleStage.firstToVector (x1, y1, dotVec, model)
|
||||
val drawMsg = DRAW_DOT drawVec
|
||||
|
||||
val newTriangleStage = SECOND
|
||||
@@ -74,9 +73,11 @@ struct
|
||||
if #showGraph model then GraphLines.generate model
|
||||
else Vector.fromList []
|
||||
|
||||
val dots = TriangleStage.toVector (model, Vector.fromList [])
|
||||
|
||||
val drawMsg =
|
||||
RESIZE_TRIANGLES_DOTS_AND_GRAPH
|
||||
{triangles = triangles, graphLines = graphLines}
|
||||
{triangles = triangles, graphLines = graphLines, dots = dots}
|
||||
in
|
||||
(model, drawMsg)
|
||||
end
|
||||
|
||||
@@ -126,14 +126,17 @@ struct
|
||||
, triangleDrawLength
|
||||
)
|
||||
end
|
||||
| RESIZE_TRIANGLES_DOTS_AND_GRAPH {triangles, graphLines} =>
|
||||
| RESIZE_TRIANGLES_DOTS_AND_GRAPH {triangles, graphLines, dots} =>
|
||||
let
|
||||
val _ =
|
||||
AppDraw.uploadTrianglesVector (triangleDrawObject, triangles)
|
||||
val triangleDrawLength = Vector.length triangles div 2
|
||||
|
||||
val _ = AppDraw.uploadGraphLines (graphDrawObject, graphLines)
|
||||
val drawGraphLength = Vector.length graphLines div 2
|
||||
(* to do: upload dots *)
|
||||
|
||||
val _ = AppDraw.uploadDotVector (dotDrawObject, dots)
|
||||
val dotDrawLength = Vector.length dots div 5
|
||||
in
|
||||
draw
|
||||
( drawMailbox
|
||||
@@ -141,7 +144,7 @@ struct
|
||||
, graphDrawObject
|
||||
, drawGraphLength
|
||||
, dotDrawObject
|
||||
, 0
|
||||
, dotDrawLength
|
||||
, triangleDrawObject
|
||||
, triangleDrawLength
|
||||
)
|
||||
|
||||
@@ -7,7 +7,10 @@ sig
|
||||
| DRAW_TRIANGLES_AND_RESET_DOTS of Real32.real vector
|
||||
| DRAW_GRAPH of Real32.real vector
|
||||
| RESIZE_TRIANGLES_DOTS_AND_GRAPH of
|
||||
{triangles: Real32.real vector, graphLines: Real32.real vector}
|
||||
{ triangles: Real32.real vector
|
||||
, graphLines: Real32.real vector
|
||||
, dots: Real32.real vector
|
||||
}
|
||||
| CLEAR_DOTS
|
||||
| NO_DRAW
|
||||
end
|
||||
@@ -21,7 +24,10 @@ struct
|
||||
| DRAW_TRIANGLES_AND_RESET_DOTS of Real32.real vector
|
||||
| DRAW_GRAPH of Real32.real vector
|
||||
| RESIZE_TRIANGLES_DOTS_AND_GRAPH of
|
||||
{triangles: Real32.real vector, graphLines: Real32.real vector}
|
||||
{ triangles: Real32.real vector
|
||||
, graphLines: Real32.real vector
|
||||
, dots: Real32.real vector
|
||||
}
|
||||
| CLEAR_DOTS
|
||||
| NO_DRAW
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user