New distance word in math.vectors, replaces distance in math.points, more efficient

db4
Slava Pestov 2008-11-29 10:19:23 -06:00
parent 84c5cf2ff6
commit f79041545a
2 changed files with 3 additions and 1 deletions

View File

@ -22,6 +22,5 @@ PRIVATE>
: rise ( pt2 pt1 -- n ) [ second ] bi@ - ;
: run ( pt2 pt1 -- n ) [ first ] bi@ - ;
: slope ( pt pt -- slope ) [ rise ] [ run ] 2bi / ;
: distance ( point point -- float ) v- norm ;
: midpoint ( point point -- point ) v+ 2 v/n ;
: linear-solution ( pt pt -- x ) [ drop first2 ] [ slope ] 2bi / - ;

View File

@ -24,6 +24,8 @@ IN: math.vectors
: norm ( v -- x ) norm-sq sqrt ;
: normalize ( u -- v ) dup norm v/n ;
: distance ( u v -- x ) [ - absq ] [ + ] 2map-reduce sqrt ;
: set-axis ( u v axis -- w )
[ [ zero? 2over ? ] dip swap nth ] map-index 2nip ;
@ -31,6 +33,7 @@ HINTS: vneg { array } ;
HINTS: norm-sq { array } ;
HINTS: norm { array } ;
HINTS: normalize { array } ;
HINTS: distance { array array } ;
HINTS: n*v { object array } ;
HINTS: v*n { array object } ;