]> gitweb.factorcode.org Git - factor.git/commitdiff
add a "vmask" vector op to selectively zero out elements
authorJoe Groff <arcata@gmail.com>
Tue, 29 Sep 2009 23:10:36 +0000 (18:10 -0500)
committerJoe Groff <arcata@gmail.com>
Tue, 29 Sep 2009 23:10:36 +0000 (18:10 -0500)
basis/math/vectors/vectors.factor

index e3d4f1b3425d098b590ec40107865a3b35d6eb1a..bac7183c6d09865bae071a8fc83bcf392f8124cd 100644 (file)
@@ -97,7 +97,9 @@ PRIVATE>
 : vunordered? ( u v -- w ) [ unordered? ] { } 2map-as ;
 : v=  ( u v -- w ) [ =   ] { } 2map-as ;
 
-: v?   ( ? u v -- w ) [ ? ] pick 3map-as ;
+: v?   ( ? true false -- w ) [ ? ] pick 3map-as ;
+
+: vmask ( u ? -- u' ) swap dup dup vbitxor v? ;
 
 : vfloor    ( u -- v ) [ floor ] map ;
 : vceiling  ( u -- v ) [ ceiling ] map ;