Handbook
Glossary
quad-strip-to-triangles ( vertices colors -- float-array )
Vocabulary
ui
.
pens
.
gradient
.
private
Inputs
vertices
an
object
colors
an
object
Outputs
float-array
an
object
Definition
USING:
math
sequences
specialized-arrays.instances.alien.c-types.float
;
IN:
ui.pens.gradient.private
::
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
;