3 AddDriver D PntXYZ PntRLT Line3D Attach;
4 set Pnt1 [AddPoint D 0 0 0]; ## add point1
5 ComputeFun D $Pnt1:1; ## compute function
6 GetShape D $Pnt1:1:2 P1; ## check result
9 GetReference D $Pnt1; ## check is reference set
11 set Pnt2 [AddPoint D 0 200 0];
13 set Pnt3 [AddPoint D 200 200 0];
15 set Pnt4 [AddPoint D 200 0 0];
17 GetShape D $Pnt2:1:2 P2;
18 GetShape D $Pnt3:1:2 P3;
19 GetShape D $Pnt4:1:2 P4;
23 #set Lin1 [ AddLine3D D 0 $Pnt1 $Pnt2 $Pnt3 $Pnt4]
24 #ComputeFun D $Lin1:1;
25 #GetShape D $Lin1:1:2 L1;
29 set Lin2 [ AddLine3D D 1 $Pnt1 $Pnt2 $Pnt3 $Pnt4]
31 GetShape D $Lin2:1:2 L1;
33 #4 Prism (after step #1)
36 set Prism [AddPrism D $Lin2 300 0]
38 GetShape D $Prism:1:2 Pr
39 GetReference D $Prism; ## check is reference set
44 set Bas1 [AttachShape D Pr_1 ${Prism} ${Prism} 1]
45 set Bas2 [AttachShape D Pr_4 ${Prism} ${Prism} 1]
47 set Prism2 [AddPrism D $Bas1 300 0]
48 ComputeFun D $Prism2:1
49 GetShape D $Prism2:1:2 Pr2
52 set Prism3 [AddPrism D $Bas2 500 0]
53 ComputeFun D $Prism3:1
54 GetShape D $Prism3:1:2 Pr3
58 AddDriver D Fuse Sph Cut
59 set FS1 [AddFuse D $Prism $Prism2]
63 set FS2 [AddFuse D $Prism $Prism3]
67 set Sph [AddSphere D $Pnt3 150]
70 GetShape D $Sph:1:2 Sp
74 set Cut1 [AddCut D $Prism $Sph]
81 set SL [TestSingleSelection D $Prism 0]
82 set SL2 [TestMultipleSelection D $Prism 0]
87 PntOffset D $Pnt1 50 30 skip
96 ComputeFun D $Prism2:1
97 ComputeFun D $Prism3:1
103 GetShape D $Cut1:2 Pr
104 #GetShape D $Prism:1:2 Pr
105 #GetShape D $Prism2:1:2 Pr2
106 #GetShape D $Prism3:1:2 Pr3
108 #recomputation of entities of the TestSelection commands