22 lines
443 B
Factor
22 lines
443 B
Factor
|
|
USING: kernel math math.functions math.vectors sequences self ;
|
|
|
|
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 ;
|
|
|