1 USING: accessors euler.b-rep euler.modeling euler.operators
\r
2 euler.b-rep.examples kernel locals math.vectors.simd.cords
\r
3 namespaces sequences tools.test ;
\r
4 IN: euler.b-rep.tests
\r
6 [ double-4{ 0.0 0.0 -1.0 0.0 } ]
\r
7 [ valid-cube-b-rep edges>> first face-normal ] unit-test
\r
9 [ double-4{ 0.0 0.0 -1.0 0.0 } -1.0 ]
\r
10 [ valid-cube-b-rep edges>> first face-plane ] unit-test
\r
12 [ t ] [ 0 multi-ringed-face-cube-b-rep faces>> nth base-face? ] unit-test
\r
13 [ t ] [ 5 multi-ringed-face-cube-b-rep faces>> nth base-face? ] unit-test
\r
14 [ f ] [ 6 multi-ringed-face-cube-b-rep faces>> nth base-face? ] unit-test
\r
16 :: mock-face ( p0 p1 p2 -- edge )
\r
17 b-edge new vertex new p0 >>position >>vertex :> e0
\r
18 b-edge new vertex new p1 >>position >>vertex :> e1
\r
19 b-edge new vertex new p2 >>position >>vertex :> e2
\r
29 0x1.279a74590331dp-1
\r
30 0x1.279a74590331dp-1
\r
31 0x1.279a74590331dp-1
\r
34 -0x1.bb67ae8584cabp1
\r
38 double-4{ 0 0 6 0 } mock-face face-plane
\r
41 V{ t } clone sharpness-stack [
\r
42 [ t ] [ get-sharpness ] unit-test
\r
43 [ V{ f } ] [ f set-sharpness sharpness-stack get ] unit-test
\r
44 [ V{ f t } t ] [ t push-sharpness sharpness-stack get get-sharpness ] unit-test
\r
45 [ t V{ f } f ] [ pop-sharpness sharpness-stack get get-sharpness ] unit-test
\r
48 [ t ] [ valid-cube-b-rep [ edges>> first ] keep is-valid-edge? ] unit-test
\r
49 [ f ] [ b-edge new valid-cube-b-rep is-valid-edge? ] unit-test
\r
52 valid-cube-b-rep edges>>
\r
53 [ [ 0 swap nth ] [ 1 swap nth ] bi connecting-edge ]
\r
54 [ 0 swap nth ] bi eq?
\r
58 valid-cube-b-rep edges>>
\r
59 [ [ 1 swap nth ] [ 0 swap nth ] bi connecting-edge ]
\r
60 [ 6 swap nth ] bi eq?
\r
64 valid-cube-b-rep edges>>
\r
65 [ [ 0 swap nth ] [ 3 swap nth ] bi connecting-edge ]
\r
66 [ 21 swap nth ] bi eq?
\r
70 valid-cube-b-rep edges>>
\r
71 [ 0 swap nth ] [ 2 swap nth ] bi connecting-edge
\r
74 [ double-4{ 0 0 -1 0 } ] [
\r
76 { double-4{ 0 0 0 0 } double-4{ 0 1 0 0 } double-4{ 0 2 0 0 } double-4{ 1 1 0 0 } }
\r
77 smooth-smooth polygon>double-face face-normal
\r