47 lines
1.8 KiB
Factor
47 lines
1.8 KiB
Factor
USING: accessors kernel tools.test euler.b-rep euler.operators
|
|
euler.modeling game.models.half-edge ;
|
|
IN: euler.modeling.tests
|
|
|
|
! polygon>double-face
|
|
[ ] [
|
|
[
|
|
{ { -1 -1 0 } { 1 -1 0 } { 1 1 0 } { -1 1 0 } }
|
|
smooth-smooth polygon>double-face
|
|
[ face-sides 4 assert= ]
|
|
[ opposite-edge>> face-sides 4 assert= ]
|
|
[ face-normal { 0.0 0.0 1.0 } assert= ]
|
|
tri
|
|
] make-b-rep check-b-rep
|
|
] unit-test
|
|
|
|
! extrude-simple
|
|
[ ] [
|
|
[
|
|
{ { -1 -1 0 } { 1 -1 0 } { 1 1 0 } }
|
|
smooth-smooth polygon>double-face
|
|
1 f extrude-simple
|
|
[ face-sides 3 assert= ]
|
|
[ opposite-edge>> face-sides 4 assert= ]
|
|
bi
|
|
] make-b-rep check-b-rep
|
|
] unit-test
|
|
|
|
! project-pt-line
|
|
[ { 0 1 0 } ] [ { 0 0 0 } { 0 1 0 } { 1 1 0 } project-pt-line ] unit-test
|
|
[ { 0 1 0 } ] [ { 0 0 0 } { 1 1 0 } { 0 1 0 } project-pt-line ] unit-test
|
|
[ { 0 1 0 } ] [ { 0 0 0 } { 2 1 0 } { 1 1 0 } project-pt-line ] unit-test
|
|
[ { -1 1 0 } ] [ { -1 0 0 } { 2 1 0 } { 1 1 0 } project-pt-line ] unit-test
|
|
[ { 1/2 1/2 0 } ] [ { 0 0 0 } { 0 1 0 } { 1 0 0 } project-pt-line ] unit-test
|
|
|
|
! project-pt-plane
|
|
[ { 0 0 1 } ] [ { 0 0 0 } { 0 0 1 } { 0 0 1 } -1 project-pt-plane ] unit-test
|
|
[ { 0 0 -1 } ] [ { 0 0 0 } { 0 0 1 } { 0 0 1 } 1 project-pt-plane ] unit-test
|
|
[ { 0 0 3 } ] [ { 0 0 0 } { 0 0 1 } { 0 0 1 } -3 project-pt-plane ] unit-test
|
|
[ { 0 0 3 } ] [ { 0 0 0 } { 0 0 1 } { 0 0 -1 } 3 project-pt-plane ] unit-test
|
|
[ { 0 0 1 } ] [ { 0 0 0 } { 0 0 1 } { 0 1 1 } -1 project-pt-plane ] unit-test
|
|
|
|
[ { 0 2/3 1/3 } ] [ { 0 0 0 } { 0 2 1 } { 0 1 1 } -1 project-pt-plane ] unit-test
|
|
|
|
[ { 0 0 1 } ] [ { 0 0 0 } { 0 0 1/2 } { 0 0 1 } -1 project-pt-plane ] unit-test
|
|
[ { 0 1 1 } ] [ { 0 0 0 } { 0 1/2 1/2 } { 0 0 1 } -1 project-pt-plane ] unit-test
|