op –gltf 4 op –gltf 44
10.0198 SstTopCirRibBase0xc264f78 lvidx 69 nsp 242 intersection difference cylinder slab box3 nds[ 16] 4465 4466 4467 4468 4469 4470 4471 4472 6125 6126 ...
10.0198 SstTopCirRibBase0xc264f78 lvidx 69 nsp 242
amn ( 848.528 0.000 -115.945) bmn ( 854.653 10.020 -115.945) dmn ( -6.125 -10.020 0.000)
amx ( 1220.000 862.670 115.945) bmx ( 1218.680 854.688 115.945) dmx ( 1.320 7.982 0.000)
080 # generated by tboolean.py : 20170708-1036
81 # opticks-;opticks-tbool 69
82 # opticks-;opticks-tbool-vi 69
83
84
85 a = CSG("cylinder", param = [0.000,0.000,0.000,1220.000],param1 = [-115.945,115.945,0.000,0.000])
86 b = CSG("cylinder", param = [0.000,0.000,0.000,1200.000],param1 = [-117.104,117.104,0.000,0.000])
87 ab = CSG("difference", left=a, right=b)
88
89 c = CSG("slab", param = [0.000,1.000,0.000,0.000],param1 = [0.000,1221.000,0.000,0.000])
90 abc = CSG("intersection", left=ab, right=c)
91
92 d = CSG("slab", param = [0.707,-0.707,0.000,0.000],param1 = [0.000,1221.000,0.000,0.000])
93 abcd = CSG("intersection", left=abc, right=d)
94
95 e = CSG("box3", param = [2460.000,20.000,231.890,0.000],param1 = [0.000,0.000,0.000,0.000])
96 e.transform = [[1.000,0.000,0.000,0.000],[0.000,1.000,0.000,0.000],[0.000,0.000,1.000,0.000],[0.000,0.000,0.000,1.000]]
97 abcde = CSG("difference", left=abcd, right=e)
98
99 f = CSG("box3", param = [2460.000,100.000,20.000,0.000],param1 = [0.000,0.000,0.000,0.000])
100 f.transform = [[1.000,0.000,0.000,0.000],[0.000,1.000,0.000,0.000],[0.000,0.000,1.000,0.000],[0.000,0.000,-105.945,1.000]]
101 abcdef = CSG("difference", left=abcde, right=f)
/// this one too
/// (-10, 10 ) -> (-115.945, -95.945 )
/// ^^^^^^^^^
/// cylinder-z edge coincidence
102
103 g = CSG("box3", param = [2460.000,20.000,231.890,0.000],param1 = [0.000,0.000,0.000,0.000])
104 g.transform = [[0.707,-0.707,0.000,0.000],[0.707,0.707,0.000,0.000],[0.000,0.000,1.000,0.000],[0.000,0.000,0.000,1.000]]
105 abcdefg = CSG("difference", left=abcdef, right=g)
106
107 h = CSG("box3", param = [2460.000,100.000,20.000,0.000],param1 = [0.000,0.000,0.000,0.000])
108 h.transform = [[0.707,-0.707,0.000,0.000],[0.707,0.707,0.000,0.000],[0.000,0.000,1.000,0.000],[0.000,0.000,-105.945,1.000]]
109 abcdefgh = CSG("difference", left=abcdefg, right=h)
/// (-10, 10 ) -> (-115.945, -95.945 )
/// ^^^^^^^^^
/// cylinder-z edge coincidence
110
111
112
113 raw = abcdefgh
delta:cu blyth$ opticks-;opticks-tbool- 69
opticks-tbool- : sourcing /usr/local/opticks/opticksdata/export/DayaBay_VGDX_20140414-1300/extras/69/tbool69.bash
args:
[2017-07-08 11:32:20,894] p8952 {/Users/blyth/opticks/analytic/csg.py:822} INFO - raw name:difference
di(di(di(di(in(in(di(cy,cy),sl),sl),bo),bo),bo),bo) height:7 totnodes:255
di abcdefgh
di abcdefg bo h
di abcdef bo g
di abcde bo f
in abcd bo e
in abc sl d
di ab sl c
cy a cy b
[2017-07-08 11:32:20,895] p8952 {/Users/blyth/opticks/analytic/csg.py:822} INFO - optimized name:intersection_prim_balanced
in(in(in(cy,!cy),in(sl,sl)),in(in(!bo,!bo),in(!bo,!bo))) height:3 totnodes:15
in abcdefgh
in abcd in efgh
in ab in cd in ef in gh
cy a !cy b sl c sl d !bo e !bo f !bo g !bo h
[2017-07-08 11:32:20,895] p8952 {/Users/blyth/opticks/analytic/csg.py:417} INFO - CSG.Serialize : writing 2 trees to directory /tmp/blyth/opticks/tbool/69
analytic=1_csgpath=/tmp/blyth/opticks/tbool/69_name=69_mode=PyCsgInBox