factor/extra/pos/pos.factor

22 lines
443 B
Factor
Raw Normal View History

2007-09-20 18:09:08 -04:00
USING: kernel math math.functions math.vectors sequences self ;
2007-09-20 18:09:08 -04:00
IN: pos
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
TUPLE: pos val ;
C: <pos> pos
: pos> ( -- val ) self> pos-val ;
: >pos ( val -- ) self> set-pos-val ;
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
: distance ( pos pos -- n ) pos-val swap pos-val v- [ sq ] map sum sqrt ;
: move-by ( point -- ) pos> v+ >pos ;