quad-strip-to-triangles ( vertices colors -- float-array )


Vocabulary
ui.pens.gradient.private

Inputs
verticesan object
colorsan object


Outputs
float-arrayan object


Definition


:: quad-strip-to-triangles
( vertices colors -- float-array )
vertices length 4 / >integer :> num-colors num-colors 1 -
:> num-quads num-quads 6 * 6 *
<float-array> :> result num-quads <iota> [| i |
i 2 * 2 * :> v0-idx v0-idx 2 + :> v2-idx v0-idx 2 +
:> v1-idx-offset v0-idx 2 + 2 + :> v3-idx i 2 * 2 *
:> v0-pos i 2 * 1 + 2 * :> v1-pos i 1 + 2 * 2 *
:> v2-pos i 1 + 2 * 1 + 2 * :> v3-pos i 8 *
:> c0-idx i 1 + 8 * :> c1-idx i 36 *
:> base-idx v0-pos vertices nth base-idx 0 +
result set-nth v0-pos 1 + vertices nth base-idx 1 +
result set-nth c0-idx colors nth base-idx 2 +
result set-nth c0-idx 1 + colors nth
base-idx 3 ~303 more~
] each result ;