sequences.extras: using sift.

db4
John Benediktsson 2014-12-06 21:20:24 -08:00
parent 17de36ddfc
commit a7b782542d
2 changed files with 5 additions and 5 deletions

View File

@ -25,7 +25,7 @@ IN: sequences.extras
: find-all ( seq quot: ( elt -- ? ) -- elts )
[ [ length iota ] keep ] dip
[ dupd call( a -- ? ) [ 2array ] [ 2drop f ] if ] curry
2map [ ] filter ; inline
2map sift ; inline
: reduce-from ( ... seq identity quot: ( ... prev elt -- ... next ) i -- ... result )
[ swap ] 2dip each-from ; inline

View File

@ -212,14 +212,14 @@ TUPLE: face { halfspace array }
: intersections-into-faces ( face -- faces )
clone dup
adjacent-faces>> [ intersection-into-face ] with map
[ ] filter ;
sift ;
: (face-silhouette) ( face -- faces )
clone dup adjacent-faces>>
[ backface?
[ intersection-into-silhouette-face ] [ 2drop f ] if
] with map
[ ] filter
sift
; inline
: face-silhouette ( face -- faces )
@ -290,7 +290,7 @@ TUPLE: solid dimension silhouettes
! find-adjacencies
faces>> { }
[ face-silhouette append ] reduce
[ ] filter
sift
<solid>
swap >>faces
over dimension>> >>dimension
@ -372,7 +372,7 @@ TUPLE: solid dimension silhouettes
ensure-adjacencies
[ color>> ] [ faces>> ] bi [ 3array ] dip
[ face-project ] with map
[ ] filter
sift
[ ensure-adjacencies ] map
;