time python -c 'import esolid; solid1 = esolid.bryan_read_file("desolid/boxinp1"); solid2 = esolid.bryan_read_file("desolid/cylinp7"); solid1.boolean(solid2, "U")' &> esolid_output.txt ksolid: read_solid: type = 1 genbox: read_box: inp_pts[0] = ( 0, 2, 0 ) genbox: read_box: inp_pts[1] = ( 2, 2, 0 ) genbox: read_box: inp_pts[2] = ( 2, 0, 0 ) genbox: read_box: inp_pts[3] = ( 0, 0, 0 ) genbox: read_box: inp_pts[4] = ( 0, 0, 4 ) genbox: read_box: inp_pts[5] = ( 2, 0, 4 ) genbox: read_box: inp_pts[6] = ( 2, 2, 4 ) genbox: read_box: inp_pts[7] = ( 0, 2, 4 ) genbox: read_box: pts[0] = ( 0, 2, 0 ) genbox: read_box: pts[1] = ( 2, 2, 0 ) genbox: read_box: pts[2] = ( 2, 0, 0 ) genbox: read_box: pts[3] = ( 0, 0, 0 ) genbox: read_box: pts[4] = ( 0, 0, 4 ) genbox: read_box: pts[5] = ( 2, 0, 4 ) genbox: read_box: pts[6] = ( 2, 2, 4 ) genbox: read_box: pts[7] = ( 0, 2, 4 ) ksolid: read_solid: type = 2 gencyl: read_cyl: base = ( 1999/1000, 9/10, 3/10 ) gencyl: read_cyl: centerline = ( 0, -9/5, 12/5 ) gencyl: read_cyl: base_vecA = ( 1, 0, 0 ) gencyl: read_cyl: base_vecB = ( 0, 4/5, 3/5 ) gencyl: read_cyl: top_vecA = ( 1, 0, 0 ) gencyl: read_cyl: top_vecB = ( 0, 4/5, 3/5 ) Intersecting patch 0 and 0. Patch 0 on solid 1 has 1 intersection curves, and patch 0 on solid 2 has 1 intersection curves. Intersecting patch 0 and 1. Patch 0 on solid 1 has 1 intersection curves, and patch 1 on solid 2 has 0 intersection curves. Intersecting patch 0 and 2. Patch 0 on solid 1 has 1 intersection curves, and patch 2 on solid 2 has 0 intersection curves. Intersecting patch 0 and 3. Patch 0 on solid 1 has 2 intersection curves, and patch 3 on solid 2 has 1 intersection curves. Intersecting patch 0 and 4. Error: kpatch: intersect: num_inter_curves2 = 0 Patch 0 on solid 1 has 2 intersection curves, and patch 4 on solid 2 has 0 intersection curves. Intersecting patch 0 and 5; they do not overalp. Intersecting patch 1 and 0; they do not overalp. Intersecting patch 1 and 1. Error: kpatch: intersect: num_inter_curves2 = 0 Patch 1 on solid 1 has 0 intersection curves, and patch 1 on solid 2 has 0 intersection curves. Intersecting patch 1 and 2. Error: kpatch: intersect: num_inter_curves2 = 0 Patch 1 on solid 1 has 0 intersection curves, and patch 2 on solid 2 has 0 intersection curves. Intersecting patch 1 and 3. Error: kpatch: intersect: num_inter_curves2 = 0 Patch 1 on solid 1 has 0 intersection curves, and patch 3 on solid 2 has 1 intersection curves. Intersecting patch 1 and 4. Error: kpatch: intersect: num_inter_curves2 = 0 Patch 1 on solid 1 has 0 intersection curves, and patch 4 on solid 2 has 0 intersection curves. Intersecting patch 1 and 5; they do not overalp. Intersecting patch 2 and 0. Patch 2 on solid 1 has 1 intersection curves, and patch 0 on solid 2 has 2 intersection curves. Intersecting patch 2 and 1. Patch 2 on solid 1 has 2 intersection curves, and patch 1 on solid 2 has 1 intersection curves. Intersecting patch 2 and 2. Patch 2 on solid 1 has 2 intersection curves, and patch 2 on solid 2 has 0 intersection curves. Intersecting patch 2 and 3. Patch 2 on solid 1 has 2 intersection curves, and patch 3 on solid 2 has 1 intersection curves. Intersecting patch 2 and 4. Patch 2 on solid 1 has 2 intersection curves, and patch 4 on solid 2 has 0 intersection curves. Intersecting patch 2 and 5. Patch 2 on solid 1 has 2 intersection curves, and patch 5 on solid 2 has 0 intersection curves. Intersecting patch 3 and 0. Patch 3 on solid 1 has 0 intersection curves, and patch 0 on solid 2 has 2 intersection curves. Intersecting patch 3 and 1. Patch 3 on solid 1 has 1 intersection curves, and patch 1 on solid 2 has 2 intersection curves. Intersecting patch 3 and 2. Patch 3 on solid 1 has 1 intersection curves, and patch 2 on solid 2 has 0 intersection curves. Intersecting patch 3 and 3. Patch 3 on solid 1 has 2 intersection curves, and patch 3 on solid 2 has 2 intersection curves. Intersecting patch 3 and 4. Patch 3 on solid 1 has 3 intersection curves, and patch 4 on solid 2 has 1 intersection curves. Intersecting patch 3 and 5. Patch 3 on solid 1 has 3 intersection curves, and patch 5 on solid 2 has 0 intersection curves. Intersecting patch 4 and 0; they do not overalp. Intersecting patch 4 and 1; they do not overalp. Intersecting patch 4 and 2; they do not overalp. Intersecting patch 4 and 3. Error: kpatch: intersect: num_inter_curves1 = 0 Patch 4 on solid 1 has 0 intersection curves, and patch 3 on solid 2 has 2 intersection curves. Intersecting patch 4 and 4; they do not overalp. Intersecting patch 4 and 5; they do not overalp. Intersecting patch 5 and 0; they do not overalp. Intersecting patch 5 and 1. Error: kpatch: intersect: num_inter_curves1 = 0 Patch 5 on solid 1 has 0 intersection curves, and patch 1 on solid 2 has 2 intersection curves. Intersecting patch 5 and 2. Error: kpatch: intersect: num_inter_curves1 = 0 Patch 5 on solid 1 has 0 intersection curves, and patch 2 on solid 2 has 0 intersection curves. Intersecting patch 5 and 3. Error: kpatch: intersect: num_inter_curves1 = 0 Patch 5 on solid 1 has 0 intersection curves, and patch 3 on solid 2 has 2 intersection curves. Intersecting patch 5 and 4. Error: kpatch: intersect: num_inter_curves1 = 0 Patch 5 on solid 1 has 0 intersection curves, and patch 4 on solid 2 has 1 intersection curves. Intersecting patch 5 and 5; they do not overalp. Patch 0 on solid 1 has 2 intersection curves, and Patch 1 on solid 1 has 0 intersection curves, and Patch 2 on solid 1 has 2 intersection curves, and Patch 3 on solid 1 has 3 intersection curves, and Patch 4 on solid 1 has 0 intersection curves, and Patch 5 on solid 1 has 0 intersection curves, and patch 0 on solid 2 has 2 intersection curves. patch 1 on solid 2 has 2 intersection curves. patch 2 on solid 2 has 0 intersection curves. patch 3 on solid 2 has 2 intersection curves. patch 4 on solid 2 has 1 intersection curves. patch 5 on solid 2 has 0 intersection curves. Patch 0 on solid 1 has 0 loops. Patch 1 on solid 1 has 0 loops. Patch 2 on solid 1 has 0 loops. Patch 3 on solid 1 has 0 loops. Patch 4 on solid 1 has 0 loops. Patch 5 on solid 1 has 0 loops. Patch 0 on solid 2 has 0 loops. Patch 1 on solid 2 has 0 loops. Patch 2 on solid 2 has 0 loops. Patch 3 on solid 2 has 0 loops. Patch 4 on solid 2 has 0 loops. Patch 5 on solid 2 has 0 loops. Generating partitions for patches on solid 1 Patch 0 forms 2 partitions on solid 1 Patch 1 forms 1 partitions on solid 1 Patch 2 forms 2 partitions on solid 1 Patch 3 forms 2 partitions on solid 1 Patch 4 forms 1 partitions on solid 1 Patch 5 forms 1 partitions on solid 1 Generating partitions for patches on solid 2 Patch 0 forms 2 partitions on solid 2 Patch 1 forms 2 partitions on solid 2 Patch 2 forms 1 partitions on solid 2 Patch 3 forms 2 partitions on solid 2 Patch 4 forms 2 partitions on solid 2 Patch 5 forms 1 partitions on solid 2 Shooting 3D rays. Selecting partitions of the resulting solid. 6 partitions are selected from solid 1. 6 partitions are selected from solid 2. Build the resulting solid. The resulting solid has 12 patches. real 0m0.267s user 0m0.248s sys 0m0.020s