clean up vector lerp functions to be better vectorizable
parent
b212e8edd0
commit
34344be636
|
@ -167,20 +167,20 @@ PRIVATE>
|
||||||
|
|
||||||
: bilerp ( aa ba ab bb {t,u} -- a_tu )
|
: bilerp ( aa ba ab bb {t,u} -- a_tu )
|
||||||
[ first lerp ] [ second lerp ] bi-curry
|
[ first lerp ] [ second lerp ] bi-curry
|
||||||
[ 2bi@ ] [ call ] bi* ;
|
[ 2bi@ ] [ call ] bi* ; inline
|
||||||
|
|
||||||
: vlerp ( a b t -- a_t )
|
: vlerp ( a b t -- a_t )
|
||||||
[ lerp ] 3map ;
|
[ over v- ] dip v* v+ ; inline
|
||||||
|
|
||||||
: vnlerp ( a b t -- a_t )
|
: vnlerp ( a b t -- a_t )
|
||||||
[ lerp ] curry 2map ;
|
[ over v- ] dip v*n v+ ; inline
|
||||||
|
|
||||||
: vbilerp ( aa ba ab bb {t,u} -- a_tu )
|
: vbilerp ( aa ba ab bb {t,u} -- a_tu )
|
||||||
[ first vnlerp ] [ second vnlerp ] bi-curry
|
[ first vnlerp ] [ second vnlerp ] bi-curry
|
||||||
[ 2bi@ ] [ call ] bi* ;
|
[ 2bi@ ] [ call ] bi* ; inline
|
||||||
|
|
||||||
: v~ ( a b epsilon -- ? )
|
: v~ ( a b epsilon -- ? )
|
||||||
[ ~ ] curry 2all? ;
|
[ ~ ] curry 2all? ; inline
|
||||||
|
|
||||||
HINTS: vneg { array } ;
|
HINTS: vneg { array } ;
|
||||||
HINTS: norm-sq { array } ;
|
HINTS: norm-sq { array } ;
|
||||||
|
|
Loading…
Reference in New Issue