View Issue Details

IDProjectCategoryView StatusLast Update
0004761OpenSCADBugpublic2022-01-25 21:59
Reporterozzee Assigned Tochennes  
PrioritynormalSeveritymajorReproducibilityalways
Status confirmedResolutionopen 
Product Version0.20 
Summary0004761: CSG file from OpenSCAD does not load. Part.OCCError
Description
Log shows:
00:02:29 End processing CSG file
00:02:33 Traceback (most recent call last):
  File "C:\Users\gianni\Downloads\FreeCAD_0.20.25645_Win-LPv12.5.4_vc17.x-x86-64\Mod\OpenSCAD\OpenSCADFeatures.py", line 406, in execute
    self.createGeometry(fp)
  File "C:\Users\gianni\Downloads\FreeCAD_0.20.25645_Win-LPv12.5.4_vc17.x-x86-64\Mod\OpenSCAD\OpenSCADFeatures.py", line 448, in createGeometry
    pipe_shell.build()
<class 'Part.OCCError'>: Approx_CurvlinFunc::GetUParameter
Steps To ReproduceImport attached CSG file.
Tags#post-to-forum, OpenSCAD

Activities

ozzee

2021-10-09 13:12

reporter  

anchorcad_FilterFunnel_default_example.csg (21,983 bytes)   
difference() {
	union() {
		difference() {
			union() {
				multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -55], [0, 0, 0, 1]]) {
					multmatrix([[1, 0, 0, 0], [0, 1, 0, -25], [0, 0, 1, -55], [0, 0, 0, 1]]) {
						cylinder($fn = 128, $fa = 12, $fs = 2, h = 110, r1 = 47.7465, r2 = 1, center = false);
					}
					multmatrix([[-1, 0, 0, 0], [0, -1, 0, 25], [0, 0, 1, -55], [0, 0, 0, 1]]) {
						cylinder($fn = 128, $fa = 12, $fs = 2, h = 110, r1 = 47.7465, r2 = 1, center = false);
					}
					multmatrix([[-1, 0, 0, 0], [0, 0, 1, -25], [0, 1, 0, -55], [0, 0, 0, 1]]) {
						linear_extrude(height = 50, center = false, convexity = 1, scale = [1, 1], $fn = 128, $fa = 12, $fs = 2) {
							polygon(points = [[0, 0], [-47.7465, 0], [-1, 110], [0, 110], [1, 110], [47.7465, 0], [0, 0]], paths = undef, convexity = 1);
						}
					}
				}
				multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -109.25], [0, 0, 0, 1]]) {
					multmatrix([[1, 0, 0, 0], [0, 1, 0, -25], [0, 0, 1, -0.75], [0, 0, 0, 1]]) {
						cylinder($fn = 128, $fa = 12, $fs = 2, h = 1.5, r1 = 52.7465, r2 = 52.7465, center = false);
					}
					multmatrix([[-1, 0, 0, 0], [0, -1, 0, 25], [0, 0, 1, -0.75], [0, 0, 0, 1]]) {
						cylinder($fn = 128, $fa = 12, $fs = 2, h = 1.5, r1 = 52.7465, r2 = 52.7465, center = false);
					}
					multmatrix([[-1, 0, 0, 0], [0, 0, 1, -25], [0, 1, 0, -0.75], [0, 0, 0, 1]]) {
						linear_extrude(height = 50, center = false, convexity = 1, scale = [1, 1], $fn = 128, $fa = 12, $fs = 2) {
							polygon(points = [[0, 0], [-52.7465, 0], [-52.7465, 1.5], [0, 1.5], [52.7465, 1.5], [52.7465, 0], [0, 0]], paths = undef, convexity = 1);
						}
					}
				}
				multmatrix([[1, 0, 0, 0], [0, -1, 0, 0], [0, 0, -1, -12.999], [0, 0, 0, 1]]) {
					multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -25], [0, 0, 0, 1]]) {
						linear_extrude(height = 25, center = false, convexity = 1, scale = [0.416667, 2.54167], $fn = 128, $fa = 12, $fs = 2) {
							polygon(points = [[0, 12], [-0.588812, 11.9855], [-1.17621, 11.9422], [-1.76077, 11.8701], [-2.34108, 11.7694], [-2.91576, 11.6404], [-3.48342, 11.4833], [-4.04268, 11.2985], [-4.5922, 11.0866], [-5.13066, 10.8479], [-5.65676, 10.5831], [-6.16923, 10.2927], [-6.66684, 9.97764], [-7.14839, 9.63849], [-7.61272, 9.27613], [-8.05871, 8.89141], [-8.48528, 8.48528], [-8.89141, 8.05871], [-9.27613, 7.61272], [-9.63849, 7.14839], [-9.97764, 6.66684], [-10.2927, 6.16923], [-10.5831, 5.65676], [-10.8479, 5.13066], [-11.0866, 4.5922], [-11.2985, 4.04268], [-11.4833, 3.48342], [-11.6404, 2.91576], [-11.7694, 2.34108], [-11.8701, 1.76077], [-11.9422, 1.17621], [-11.9855, 0.588812], [-12, 1.46958e-15], [-11.9855, -0.588812], [-11.9422, -1.17621], [-11.8701, -1.76077], [-11.7694, -2.34108], [-11.6404, -2.91576], [-11.4833, -3.48342], [-11.2985, -4.04268], [-11.0866, -4.5922], [-10.8479, -5.13066], [-10.5831, -5.65676], [-10.2927, -6.16923], [-9.97764, -6.66684], [-9.63849, -7.14839], [-9.27613, -7.61272], [-8.89141, -8.05871], [-8.48528, -8.48528], [-8.05871, -8.89141], [-7.61272, -9.27613], [-7.14839, -9.63849], [-6.66684, -9.97764], [-6.16923, -10.2927], [-5.65676, -10.5831], [-5.13066, -10.8479], [-4.5922, -11.0866], [-4.04268, -11.2985], [-3.48342, -11.4833], [-2.91576, -11.6404], [-2.34108, -11.7694], [-1.76077, -11.8701], [-1.17621, -11.9422], [-0.588812, -11.9855], [-2.20436e-15, -12], [0.588812, -11.9855], [1.17621, -11.9422], [1.76077, -11.8701], [2.34108, -11.7694], [2.91576, -11.6404], [3.48342, -11.4833], [4.04268, -11.2985], [4.5922, -11.0866], [5.13066, -10.8479], [5.65676, -10.5831], [6.16923, -10.2927], [6.66684, -9.97764], [7.14839, -9.63849], [7.61272, -9.27613], [8.05871, -8.89141], [8.48528, -8.48528], [8.89141, -8.05871], [9.27613, -7.61272], [9.63849, -7.14839], [9.97764, -6.66684], [10.2927, -6.16923], [10.5831, -5.65676], [10.8479, -5.13066], [11.0866, -4.5922], [11.2985, -4.04268], [11.4833, -3.48342], [11.6404, -2.91576], [11.7694, -2.34108], [11.8701, -1.76077], [11.9422, -1.17621], [11.9855, -0.588812], [12, -2.93915e-15], [11.9855, 0.588812], [11.9422, 1.17621], [11.8701, 1.76077], [11.7694, 2.34108], [11.6404, 2.91576], [11.4833, 3.48342], [11.2985, 4.04268], [11.0866, 4.5922], [10.8479, 5.13066], [10.5831, 5.65676], [10.2927, 6.16923], [9.97764, 6.66684], [9.63849, 7.14839], [9.27613, 7.61272], [8.89141, 8.05871], [8.48528, 8.48528], [8.05871, 8.89141], [7.61272, 9.27613], [7.14839, 9.63849], [6.66684, 9.97764], [6.16923, 10.2927], [5.65676, 10.5831], [5.13066, 10.8479], [4.5922, 11.0866], [4.04268, 11.2985], [3.48342, 11.4833], [2.91576, 11.6404], [2.34108, 11.7694], [1.76077, 11.8701], [1.17621, 11.9422], [0.588812, 11.9855], [3.67394e-15, 12]], paths = undef, convexity = 1);
						}
					}
				}
			}
			multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -55], [0, 0, 0, 1]]) {
				multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -1.5], [0, 0, 0, 1]]) {
					multmatrix([[1, 0, 0, 0], [0, 1, 0, -25], [0, 0, 1, -53.501], [0, 0, 0, 1]]) {
						cylinder($fn = 128, $fa = 12, $fs = 2, h = 107.002, r1 = 46.2465, r2 = 0.774904, center = false);
					}
					multmatrix([[-1, 0, 0, 0], [0, -1, 0, 25], [0, 0, 1, -53.501], [0, 0, 0, 1]]) {
						cylinder($fn = 128, $fa = 12, $fs = 2, h = 107.002, r1 = 46.2465, r2 = 0.774904, center = false);
					}
					multmatrix([[-1, 0, 0, 0], [0, 0, 1, -25], [0, 1, 0, -53.501], [0, 0, 0, 1]]) {
						linear_extrude(height = 50, center = false, convexity = 1, scale = [1, 1], $fn = 128, $fa = 12, $fs = 2) {
							polygon(points = [[0, 0], [-46.2465, 0], [-0.774904, 107.002], [0, 107.002], [0.774904, 107.002], [46.2465, 0], [0, 0]], paths = undef, convexity = 1);
						}
					}
				}
			}
			multmatrix([[1, 0, 0, 0], [0, -1, 0, 0], [0, 0, -1, -12.999], [0, 0, 0, 1]]) {
				multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -25.001], [0, 0, 0, 1]]) {
					linear_extrude(height = 25.002, center = false, convexity = 1, scale = [0.3, 2.85], $fn = 128, $fa = 12, $fs = 2) {
						polygon(points = [[0, 10], [-0.490677, 9.98795], [-0.980171, 9.95185], [-1.4673, 9.89177], [-1.9509, 9.80785], [-2.4298, 9.70031], [-2.90285, 9.5694], [-3.3689, 9.41544], [-3.82683, 9.2388], [-4.27555, 9.03989], [-4.71397, 8.81921], [-5.14103, 8.57729], [-5.5557, 8.3147], [-5.95699, 8.03208], [-6.34393, 7.7301], [-6.71559, 7.40951], [-7.07107, 7.07107], [-7.40951, 6.71559], [-7.7301, 6.34393], [-8.03208, 5.95699], [-8.3147, 5.5557], [-8.57729, 5.14103], [-8.81921, 4.71397], [-9.03989, 4.27555], [-9.2388, 3.82683], [-9.41544, 3.3689], [-9.5694, 2.90285], [-9.70031, 2.4298], [-9.80785, 1.9509], [-9.89177, 1.4673], [-9.95185, 0.980171], [-9.98795, 0.490677], [-10, 1.22465e-15], [-9.98795, -0.490677], [-9.95185, -0.980171], [-9.89177, -1.4673], [-9.80785, -1.9509], [-9.70031, -2.4298], [-9.5694, -2.90285], [-9.41544, -3.3689], [-9.2388, -3.82683], [-9.03989, -4.27555], [-8.81921, -4.71397], [-8.57729, -5.14103], [-8.3147, -5.5557], [-8.03208, -5.95699], [-7.7301, -6.34393], [-7.40951, -6.71559], [-7.07107, -7.07107], [-6.71559, -7.40951], [-6.34393, -7.7301], [-5.95699, -8.03208], [-5.5557, -8.3147], [-5.14103, -8.57729], [-4.71397, -8.81921], [-4.27555, -9.03989], [-3.82683, -9.2388], [-3.3689, -9.41544], [-2.90285, -9.5694], [-2.4298, -9.70031], [-1.9509, -9.80785], [-1.4673, -9.89177], [-0.980171, -9.95185], [-0.490677, -9.98795], [-1.83697e-15, -10], [0.490677, -9.98795], [0.980171, -9.95185], [1.4673, -9.89177], [1.9509, -9.80785], [2.4298, -9.70031], [2.90285, -9.5694], [3.3689, -9.41544], [3.82683, -9.2388], [4.27555, -9.03989], [4.71397, -8.81921], [5.14103, -8.57729], [5.5557, -8.3147], [5.95699, -8.03208], [6.34393, -7.7301], [6.71559, -7.40951], [7.07107, -7.07107], [7.40951, -6.71559], [7.7301, -6.34393], [8.03208, -5.95699], [8.3147, -5.5557], [8.57729, -5.14103], [8.81921, -4.71397], [9.03989, -4.27555], [9.2388, -3.82683], [9.41544, -3.3689], [9.5694, -2.90285], [9.70031, -2.4298], [9.80785, -1.9509], [9.89177, -1.4673], [9.95185, -0.980171], [9.98795, -0.490677], [10, -2.44929e-15], [9.98795, 0.490677], [9.95185, 0.980171], [9.89177, 1.4673], [9.80785, 1.9509], [9.70031, 2.4298], [9.5694, 2.90285], [9.41544, 3.3689], [9.2388, 3.82683], [9.03989, 4.27555], [8.81921, 4.71397], [8.57729, 5.14103], [8.3147, 5.5557], [8.03208, 5.95699], [7.7301, 6.34393], [7.40951, 6.71559], [7.07107, 7.07107], [6.71559, 7.40951], [6.34393, 7.7301], [5.95699, 8.03208], [5.5557, 8.3147], [5.14103, 8.57729], [4.71397, 8.81921], [4.27555, 9.03989], [3.82683, 9.2388], [3.3689, 9.41544], [2.90285, 9.5694], [2.4298, 9.70031], [1.9509, 9.80785], [1.4673, 9.89177], [0.980171, 9.95185], [0.490677, 9.98795], [3.06162e-15, 10]], paths = undef, convexity = 1);
					}
				}
			}
		}
		multmatrix([[0.90266, -0.186218, 0.387979, -45.0455], [0.17955, 0.982281, 0.053728, -32.739], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.90266, 0.20386, -0.379007, 44.5782], [-0.17955, -0.978771, -0.0988351, 35.0883], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.850287, -0.377039, 0.367224, -42.6719], [0.3522, 0.926088, 0.135338, -41.3787], [-0.39111, 0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.850287, 0.388236, -0.355365, 41.7551], [-0.3522, -0.92145, -0.163968, 43.5921], [-0.39111, -0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.765238, -0.547945, 0.337885, -38.6551], [0.511316, 0.836246, 0.198111, -49.3881], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.765238, 0.562901, -0.312334, 37.3243], [-0.511316, -0.826253, -0.236351, 51.3797], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.650782, -0.703828, 0.284798, -33.1565], [0.650782, 0.710289, 0.268276, -56.4624], [-0.39111, 0.0107521, 0.920281, -110.229], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 102.537, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.650782, 0.710289, -0.268276, 31.4624], [-0.650782, -0.703828, -0.284798, 58.1565], [-0.39111, -0.0107521, 0.920281, -110.229], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 102.537, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.511316, -0.826253, 0.236351, -26.3797], [0.765238, 0.562901, 0.312334, -62.3243], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.511316, 0.836246, -0.198111, 24.3881], [-0.765238, -0.547945, -0.337885, 63.6551], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.3522, -0.92145, 0.163968, -18.5921], [0.850287, 0.388236, 0.355365, -66.7551], [-0.39111, 0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.3522, 0.926088, -0.135338, 16.3787], [-0.850287, -0.377039, -0.367224, 67.6719], [-0.39111, -0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.17955, -0.978771, 0.0988351, -10.0883], [0.90266, 0.20386, 0.379007, -69.5782], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.17955, 0.982281, -0.053728, 7.73897], [-0.90266, -0.186218, -0.387979, 70.0455], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[2.93878e-17, -0.999948, 0.0101612, -1.19794], [0.920344, 0.00397416, 0.391089, -70.6928], [-0.39111, 0.00935184, 0.920297, -110.23], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 117.893, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[2.93878e-17, 0.999948, 0.0101612, -1.19794], [-0.920344, 0.00397416, -0.391089, 70.6928], [-0.39111, -0.00935184, 0.920297, -110.23], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 117.893, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.17955, -0.982281, -0.053728, 7.73897], [0.90266, -0.186218, 0.387979, -70.0455], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.17955, 0.978771, 0.0988351, -10.0883], [-0.90266, 0.20386, -0.379007, 69.5782], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.3522, -0.926088, -0.135338, 16.3787], [0.850287, -0.377039, 0.367224, -67.6719], [-0.39111, 0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.3522, 0.92145, 0.163968, -18.5921], [-0.850287, 0.388236, -0.355365, 66.7551], [-0.39111, -0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.511316, -0.836246, -0.198111, 24.3881], [0.765238, -0.547945, 0.337885, -63.6551], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.511316, 0.826253, 0.236351, -26.3797], [-0.765238, 0.562901, -0.312334, 62.3243], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.650782, -0.710289, -0.268276, 31.4624], [0.650782, -0.703828, 0.284798, -58.1565], [-0.39111, 0.0107521, 0.920281, -110.229], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 102.537, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.650782, 0.703828, 0.284798, -33.1565], [-0.650782, 0.710289, -0.268276, 56.4624], [-0.39111, -0.0107521, 0.920281, -110.229], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 102.537, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.765238, -0.562901, -0.312334, 37.3243], [0.511316, -0.826253, 0.236351, -51.3797], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.765238, 0.547945, 0.337885, -38.6551], [-0.511316, 0.836246, -0.198111, 49.3881], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.850287, -0.388236, -0.355365, 41.7551], [0.3522, -0.92145, 0.163968, -43.5921], [-0.39111, 0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.850287, 0.377039, 0.367224, -42.6719], [-0.3522, 0.926088, -0.135338, 41.3787], [-0.39111, -0.0142599, 0.920234, -110.227], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 77.3105, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.90266, -0.20386, -0.379007, 44.5782], [0.17955, -0.978771, 0.0988351, -35.0883], [-0.39111, 0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.90266, 0.186218, 0.387979, -45.0455], [-0.17955, 0.982281, -0.053728, 32.739], [-0.39111, -0.0211637, 0.920101, -110.223], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 52.0836, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.920344, -8.51922e-9, -0.39111, 45.6934], [5.80851e-9, -1, 8.11384e-9, -25], [-0.39111, 5.19576e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 104.637, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.920344, -1.06314e-8, 0.39111, -45.6934], [5.80851e-9, 1, 1.35143e-8, -25], [-0.39111, -1.01661e-8, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 104.637, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.920344, -2.21987e-9, -0.39111, 45.6934], [-2.10036e-16, -1, 5.67583e-9, -15], [-0.39111, 5.22371e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.920344, -2.21987e-9, 0.39111, -45.6934], [-2.10036e-16, 1, 5.67583e-9, -15], [-0.39111, -5.22371e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.920344, -2.36137e-9, -0.39111, 45.6934], [-1.32294e-16, -1, 6.03761e-9, -5], [-0.39111, 5.55668e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.920344, -2.36137e-9, 0.39111, -45.6934], [-1.32294e-16, 1, 6.03761e-9, -5], [-0.39111, -5.55668e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.920344, -2.36137e-9, -0.39111, 45.6934], [-1.32294e-16, -1, 6.03761e-9, 5], [-0.39111, 5.55668e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.920344, -2.36137e-9, 0.39111, -45.6934], [-1.32294e-16, 1, 6.03761e-9, 5], [-0.39111, -5.55668e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.920344, -2.07837e-9, -0.39111, 45.6934], [1.8087e-16, -1, 5.31404e-9, 15], [-0.39111, 4.89075e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.920344, -2.07837e-9, 0.39111, -45.6934], [-2.87777e-16, 1, 5.31404e-9, 15], [-0.39111, -4.89075e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 116.844, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[-0.920344, -8.19625e-9, -0.39111, 45.6934], [5.80851e-9, -1, 7.28805e-9, 25], [-0.39111, 4.43575e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 104.637, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[0.920344, -1.03084e-8, 0.39111, -45.6934], [5.80851e-9, 1, 1.26885e-8, 25], [-0.39111, -9.40606e-9, 0.920344, -110.236], [0, 0, 0, 1]]) {
			cylinder($fn = 3, $fa = 12, $fs = 2, h = 104.637, r1 = 1.95, r2 = 1.5, center = false);
		}
		multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 32.001], [0, 0, 0, 1]]) {
			multmatrix([[1, 0, 0, 0], [0, -1, 0, 0], [0, 0, -1, 20], [0, 0, 0, 1]]) {
				cylinder($fn = 128, $fa = 12, $fs = 2, h = 40, r1 = 9.5, r2 = 12, center = false);
			}
			multmatrix([[0, 0.0623783, 0.998053, 9.50487], [-1, 0, 0, 0.75], [0, -0.998053, 0.0623783, 19.9221], [0, 0, 0, 1]]) {
				cube(size = [1.5, 40, 0.5], center = false);
			}
			multmatrix([[-0.866025, 0.0311891, 0.499026, 5.40195], [-0.5, -0.0540212, -0.864339, -7.85646], [0, -0.998053, 0.0623783, 19.9221], [0, 0, 0, 1]]) {
				cube(size = [1.5, 40, 0.5], center = false);
			}
			multmatrix([[-0.866025, -0.0311891, -0.499026, -4.10292], [0.5, -0.0540212, -0.864339, -8.60646], [0, -0.998053, 0.0623783, 19.9221], [0, 0, 0, 1]]) {
				cube(size = [1.5, 40, 0.5], center = false);
			}
			multmatrix([[0, -0.0623783, -0.998053, -9.50487], [1, 0, 0, -0.75], [0, -0.998053, 0.0623783, 19.9221], [0, 0, 0, 1]]) {
				cube(size = [1.5, 40, 0.5], center = false);
			}
			multmatrix([[0.866025, -0.0311891, -0.499026, -5.40195], [0.5, 0.0540212, 0.864339, 7.85646], [0, -0.998053, 0.0623783, 19.9221], [0, 0, 0, 1]]) {
				cube(size = [1.5, 40, 0.5], center = false);
			}
			multmatrix([[0.866025, 0.0311891, 0.499026, 4.10292], [-0.5, 0.0540212, 0.864339, 8.60646], [0, -0.998053, 0.0623783, 19.9221], [0, 0, 0, 1]]) {
				cube(size = [1.5, 40, 0.5], center = false);
			}
		}
	}
	multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, -110.749], [0, 0, 0, 1]]) {
		multmatrix([[1, 0, 0, 0], [0, 1, 0, -25], [0, 0, 1, -0.75], [0, 0, 0, 1]]) {
			cylinder($fn = 128, $fa = 12, $fs = 2, h = 1.5, r1 = 52.7465, r2 = 52.7465, center = false);
		}
		multmatrix([[-1, 0, 0, 0], [0, -1, 0, 25], [0, 0, 1, -0.75], [0, 0, 0, 1]]) {
			cylinder($fn = 128, $fa = 12, $fs = 2, h = 1.5, r1 = 52.7465, r2 = 52.7465, center = false);
		}
		multmatrix([[-1, 0, 0, 0], [0, 0, 1, -25], [0, 1, 0, -0.75], [0, 0, 0, 1]]) {
			linear_extrude(height = 50, center = false, convexity = 1, scale = [1, 1], $fn = 128, $fa = 12, $fs = 2) {
				polygon(points = [[0, 0], [-52.7465, 0], [-52.7465, 1.5], [0, 1.5], [52.7465, 1.5], [52.7465, 0], [0, 0]], paths = undef, convexity = 1);
			}
		}
	}
	multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 32.001], [0, 0, 0, 1]]) {
		multmatrix([[1, 0, 0, 0], [0, -1, 0, 0], [0, 0, -1, 20.0005], [0, 0, 0, 1]]) {
			cylinder($fn = 128, $fa = 12, $fs = 2, h = 40.001, r1 = 8, r2 = 10, center = false);
		}
	}
}

anchorcad_FilterFunnel_default_example.scad (37,806 bytes)   
// '_combine_solids_and_holes'
difference() {
  // '_combine_solids_and_holes'
  union() {
    // 'default'
    difference() {
      // '_combine_solids_and_holes'
      union() {
        // 'hull'
        multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, -55.0], [0.0, 0.0, 0.0, 1.0]]) {
          // 'shell'
          multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, -25.0], [0.0, 0.0, 1.0, -55.0], [0.0, 0.0, 0.0, 1.0]]) {
            // 'cone1'
            cylinder(h=110.0, r1=47.7464829275686, r2=1.0, center=false, $fn=128);
          }
          // 'shell'
          multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, -1.0, 0.0, 25.0], [0.0, 0.0, 1.0, -55.0], [0.0, 0.0, 0.0, 1.0]]) {
            // 'cone2'
            cylinder(h=110.0, r1=47.7464829275686, r2=1.0, center=false, $fn=128);
          }
          // 'shell'
          multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, -25.0], [0.0, 1.0, 0.0, -55.0], [0.0, 0.0, 0.0, 1.0]]) {
            // 'prism'
            linear_extrude(height=50.0, twist=0.0, scale=[1.0, 1.0], $fn=128) {
              polygon(points=[[0.0, 0.0], [-47.7464829275686, 0.0], [-1.0, 110.0], [0.0, 110.0], [1.0, 110.0], [47.7464829275686, 0.0], [0.0, 0.0]]);
            }
          }
        }
        // 'hull'
        multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, -109.25], [0.0, 0.0, 0.0, 1.0]]) {
          // 'rim'
          multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, -25.0], [0.0, 0.0, 1.0, -0.75], [0.0, 0.0, 0.0, 1.0]]) {
            // 'cone1'
            cylinder(h=1.5, r1=52.7464829275686, r2=52.7464829275686, center=false, $fn=128);
          }
          // 'rim'
          multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, -1.0, 0.0, 25.0], [0.0, 0.0, 1.0, -0.75], [0.0, 0.0, 0.0, 1.0]]) {
            // 'cone2'
            cylinder(h=1.5, r1=52.7464829275686, r2=52.7464829275686, center=false, $fn=128);
          }
          // 'rim'
          multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, -25.0], [0.0, 1.0, 0.0, -0.75], [0.0, 0.0, 0.0, 1.0]]) {
            // 'prism'
            linear_extrude(height=50.0, twist=0.0, scale=[1.0, 1.0], $fn=128) {
              polygon(points=[[0.0, 0.0], [-52.7464829275686, 0.0], [-52.7464829275686, 1.5], [0.0, 1.5], [52.7464829275686, 1.5], [52.7464829275686, 0.0], [0.0, 0.0]]);
            }
          }
        }
        // 'hull'
        multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, -1.0, 0.0, 0.0], [0.0, 0.0, -1.0, -12.999000000000002], [0.0, 0.0, 0.0, 1.0]]) {
          // 'adapter'
          multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, -25.0], [0.0, 0.0, 0.0, 1.0]]) {
            // 'outer'
            linear_extrude(height=25.0, twist=0.0, scale=[0.4166666666666667, 2.5416666666666665], $fn=128) {
              polygon(points=[[0.0, 12.0], [-0.5888120919290161, 11.985545474462068], [-1.1762056839547277, 11.942216720066362], [-1.7607656934643396, 11.870118119577372], [-2.3410838641935383, 11.769423364838765], [-2.9157621588391667, 11.640375038334527], [-3.483416127053546, 11.483284028786507], [-4.042678240706639, 11.29852878219625], [-4.592201188381077, 11.08655439013544], [-5.130661121163382, 10.847871517481321], [-5.656760841911972, 10.583055172180261], [-6.169232930318659, 10.292743320003265], [-6.6668427962352235, 9.977635347630544], [-7.148391653909201, 9.63849037776774], [-7.612719409963745, 9.276125440352846], [-8.058707458164221, 8.891413504259507], [-8.48528137423857, 8.485281374238571], [-8.891413504259507, 8.058707458164223], [-9.276125440352844, 7.612719409963746], [-9.638490377767738, 7.148391653909202], [-9.977635347630544, 6.666842796235226], [-10.292743320003265, 6.169232930318661], [-10.58305517218026, 5.656760841911973], [-10.847871517481318, 5.130661121163389], [-11.08655439013544, 4.592201188381079], [-11.29852878219625, 4.042678240706639], [-11.483284028786507, 3.4834161270535486], [-11.640375038334527, 2.915762158839169], [-11.769423364838765, 2.341083864193543], [-11.870118119577372, 1.7607656934643416], [-11.942216720066362, 1.17620568395473], [-11.985545474462068, 0.5888120919290156], [-12.0, 1.4695761589768238e-15], [-11.985545474462068, -0.5888120919290127], [-11.942216720066362, -1.176205683954727], [-11.870118119577372, -1.760765693464339], [-11.769423364838765, -2.34108386419354], [-11.640375038334527, -2.915762158839166], [-11.483284028786507, -3.4834161270535455], [-11.29852878219625, -4.0426782407066355], [-11.086554390135442, -4.592201188381076], [-10.847871517481321, -5.1306611211633815], [-10.583055172180261, -5.6567608419119715], [-10.292743320003265, -6.169232930318659], [-9.977635347630546, -6.6668427962352235], [-9.63849037776774, -7.148391653909199], [-9.276125440352846, -7.612719409963743], [-8.891413504259509, -8.058707458164221], [-8.485281374238571, -8.48528137423857], [-8.058707458164225, -8.891413504259507], [-7.612719409963741, -9.276125440352846], [-7.148391653909197, -9.638490377767742], [-6.666842796235226, -9.977635347630542], [-6.169232930318661, -10.292743320003265], [-5.656760841911974, -10.58305517218026], [-5.1306611211633895, -10.847871517481318], [-4.592201188381084, -11.086554390135438], [-4.04267824070665, -11.298528782196247], [-3.483416127053549, -11.483284028786507], [-2.9157621588391693, -11.640375038334527], [-2.341083864193544, -11.769423364838763], [-1.7607656934643372, -11.870118119577372], [-1.1762056839547255, -11.942216720066362], [-0.5888120919290163, -11.985545474462068], [-2.204364238465236e-15, -12.0], [0.588812091929012, -11.985545474462068], [1.176205683954721, -11.942216720066362], [1.760765693464333, -11.870118119577374], [2.3410838641935396, -11.769423364838765], [2.915762158839165, -11.640375038334527], [3.4834161270535446, -11.483284028786507], [4.042678240706645, -11.298528782196247], [4.59220118838108, -11.08655439013544], [5.130661121163386, -10.84787151748132], [5.6567608419119715, -10.583055172180261], [6.169232930318659, -10.292743320003266], [6.666842796235223, -9.977635347630546], [7.148391653909194, -9.638490377767743], [7.61271940996374, -9.27612544035285], [8.05870745816422, -8.891413504259509], [8.485281374238568, -8.485281374238571], [8.891413504259507, -8.058707458164225], [9.276125440352839, -7.612719409963751], [9.638490377767742, -7.148391653909199], [9.977635347630542, -6.666842796235226], [10.292743320003265, -6.169232930318662], [10.583055172180257, -5.656760841911975], [10.847871517481318, -5.13066112116339], [11.086554390135438, -4.592201188381084], [11.29852878219625, -4.04267824070664], [11.483284028786507, -3.48341612705355], [11.640375038334527, -2.9157621588391702], [11.769423364838763, -2.3410838641935445], [11.87011811957737, -1.7607656934643487], [11.942216720066362, -1.1762056839547261], [11.985545474462068, -0.5888120919290171], [12.0, -2.9391523179536475e-15], [11.985545474462068, 0.5888120919290112], [11.942216720066362, 1.1762056839547204], [11.87011811957737, 1.7607656934643425], [11.769423364838765, 2.341083864193539], [11.640375038334529, 2.9157621588391645], [11.483284028786507, 3.4834161270535438], [11.29852878219625, 4.042678240706635], [11.08655439013544, 4.592201188381079], [10.84787151748132, 5.130661121163385], [10.583055172180261, 5.656760841911971], [10.292743320003266, 6.169232930318657], [9.977635347630546, 6.666842796235223], [9.638490377767743, 7.148391653909194], [9.276125440352843, 7.612719409963746], [8.89141350425951, 8.05870745816422], [8.485281374238571, 8.485281374238568], [8.058707458164225, 8.891413504259505], [7.612719409963751, 9.276125440352839], [7.148391653909199, 9.63849037776774], [6.666842796235228, 9.977635347630542], [6.169232930318662, 10.292743320003265], [5.656760841911976, 10.583055172180257], [5.130661121163391, 10.847871517481318], [4.592201188381085, 11.086554390135438], [4.042678240706641, 11.29852878219625], [3.483416127053551, 11.483284028786507], [2.9157621588391707, 11.640375038334525], [2.3410838641935454, 11.769423364838763], [1.7607656934643492, 11.87011811957737], [1.176205683954727, 11.942216720066362], [0.5888120919290178, 11.985545474462068], [3.67394039744206e-15, 12.0]]);
            }
          }
        }
      }
      // 'hull'
      multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, -55.0], [0.0, 0.0, 0.0, 1.0]]) {
        // 'shell'
        multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, -1.5], [0.0, 0.0, 0.0, 1.0]]) {
          // 'inner'
          multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, -25.0], [0.0, 0.0, 1.0, -53.501], [0.0, 0.0, 0.0, 1.0]]) {
            // 'cone1'
            cylinder(h=107.002, r1=46.2464829275686, r2=0.7749040798427798, center=false, $fn=128);
          }
          // 'inner'
          multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, -1.0, 0.0, 25.0], [0.0, 0.0, 1.0, -53.501], [0.0, 0.0, 0.0, 1.0]]) {
            // 'cone2'
            cylinder(h=107.002, r1=46.2464829275686, r2=0.7749040798427798, center=false, $fn=128);
          }
          // 'inner'
          multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, -25.0], [0.0, 1.0, 0.0, -53.501], [0.0, 0.0, 0.0, 1.0]]) {
            // 'prism'
            linear_extrude(height=50.0, twist=0.0, scale=[1.0, 1.0], $fn=128) {
              polygon(points=[[0.0, 0.0], [-46.2464829275686, 0.0], [-0.7749040798427798, 107.002], [0.0, 107.002], [0.7749040798427798, 107.002], [46.2464829275686, 0.0], [0.0, 0.0]]);
            }
          }
        }
      }
      // 'hull'
      multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, -1.0, 0.0, 0.0], [0.0, 0.0, -1.0, -12.999000000000002], [0.0, 0.0, 0.0, 1.0]]) {
        // 'adapter'
        multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, -25.000999999999998], [0.0, 0.0, 0.0, 1.0]]) {
          // 'inner'
          linear_extrude(height=25.002, twist=0.0, scale=[0.3, 2.85], $fn=128) {
            polygon(points=[[0.0, 10.0], [-0.4906767432741801, 9.987954562051724], [-0.9801714032956065, 9.95184726672197], [-1.4673047445536165, 9.89176509964781], [-1.950903220161282, 9.807852804032304], [-2.4298017990326386, 9.700312531945439], [-2.9028467725446214, 9.56940335732209], [-3.3688985339221995, 9.415440651830208], [-3.826834323650897, 9.238795325112868], [-4.275550934302819, 9.039892931234434], [-4.713967368259977, 8.819212643483551], [-5.1410274419322155, 8.577286100002722], [-5.55570233019602, 8.314696123025453], [-5.956993044924333, 8.03207531480645], [-6.3439328416364535, 7.730104533627371], [-6.715589548470184, 7.40951125354959], [-7.071067811865475, 7.0710678118654755], [-7.409511253549589, 6.715589548470185], [-7.73010453362737, 6.343932841636455], [-8.032075314806448, 5.956993044924335], [-8.314696123025453, 5.555702330196022], [-8.57728610000272, 5.141027441932218], [-8.81921264348355, 4.713967368259978], [-9.039892931234432, 4.275550934302824], [-9.238795325112868, 3.826834323650899], [-9.415440651830208, 3.3688985339221986], [-9.569403357322088, 2.902846772544624], [-9.700312531945439, 2.429801799032641], [-9.807852804032304, 1.9509032201612861], [-9.89176509964781, 1.467304744553618], [-9.951847266721968, 0.9801714032956083], [-9.987954562051724, 0.49067674327417965], [-10.0, 1.2246467991473533e-15], [-9.987954562051724, -0.4906767432741772], [-9.95184726672197, -0.9801714032956059], [-9.89176509964781, -1.4673047445536158], [-9.807852804032304, -1.9509032201612837], [-9.700312531945439, -2.429801799032638], [-9.56940335732209, -2.902846772544621], [-9.41544065183021, -3.368898533922197], [-9.238795325112868, -3.8268343236508966], [-9.039892931234434, -4.275550934302818], [-8.819212643483551, -4.7139673682599765], [-8.577286100002722, -5.1410274419322155], [-8.314696123025454, -5.55570233019602], [-8.03207531480645, -5.9569930449243325], [-7.730104533627371, -6.343932841636453], [-7.409511253549591, -6.715589548470184], [-7.071067811865477, -7.071067811865475], [-6.715589548470186, -7.409511253549589], [-6.343932841636452, -7.730104533627372], [-5.956993044924332, -8.03207531480645], [-5.555702330196022, -8.314696123025453], [-5.141027441932218, -8.57728610000272], [-4.713967368259978, -8.81921264348355], [-4.275550934302824, -9.039892931234432], [-3.8268343236509033, -9.238795325112864], [-3.3688985339222075, -9.415440651830204], [-2.9028467725446245, -9.569403357322088], [-2.4298017990326413, -9.700312531945439], [-1.9509032201612866, -9.807852804032303], [-1.4673047445536145, -9.89176509964781], [-0.9801714032956045, -9.95184726672197], [-0.4906767432741803, -9.987954562051724], [-1.8369701987210296e-15, -10.0], [0.4906767432741766, -9.987954562051724], [0.9801714032956009, -9.95184726672197], [1.4673047445536107, -9.891765099647811], [1.950903220161283, -9.807852804032304], [2.4298017990326377, -9.700312531945439], [2.9028467725446205, -9.56940335732209], [3.3688985339222044, -9.415440651830206], [3.8268343236509, -9.238795325112866], [4.275550934302822, -9.039892931234434], [4.713967368259976, -8.819212643483551], [5.1410274419322155, -8.577286100002722], [5.555702330196018, -8.314696123025454], [5.956993044924328, -8.032075314806452], [6.343932841636449, -7.730104533627374], [6.7155895484701835, -7.409511253549591], [7.071067811865474, -7.071067811865477], [7.409511253549589, -6.715589548470186], [7.730104533627365, -6.343932841636459], [8.03207531480645, -5.9569930449243325], [8.314696123025453, -5.555702330196022], [8.57728610000272, -5.141027441932219], [8.819212643483548, -4.713967368259979], [9.039892931234432, -4.275550934302825], [9.238795325112864, -3.826834323650904], [9.415440651830208, -3.3688985339222], [9.569403357322088, -2.902846772544625], [9.700312531945439, -2.4298017990326417], [9.807852804032303, -1.9509032201612873], [9.89176509964781, -1.4673047445536238], [9.95184726672197, -0.980171403295605], [9.987954562051724, -0.4906767432741809], [10.0, -2.4492935982947065e-15], [9.987954562051724, 0.490676743274176], [9.95184726672197, 0.9801714032956002], [9.89176509964781, 1.467304744553619], [9.807852804032304, 1.9509032201612824], [9.70031253194544, 2.429801799032637], [9.56940335732209, 2.90284677254462], [9.41544065183021, 3.3688985339221955], [9.238795325112868, 3.8268343236508997], [9.039892931234434, 4.275550934302821], [8.819212643483551, 4.713967368259976], [8.577286100002722, 5.141027441932215], [8.314696123025456, 5.555702330196018], [8.032075314806452, 5.956993044924328], [7.730104533627369, 6.343932841636455], [7.409511253549592, 6.7155895484701835], [7.071067811865477, 7.071067811865474], [6.715589548470186, 7.409511253549588], [6.343932841636459, 7.730104533627365], [5.9569930449243325, 8.03207531480645], [5.555702330196023, 8.314696123025453], [5.141027441932219, 8.57728610000272], [4.71396736825998, 8.819212643483548], [4.275550934302826, 9.039892931234432], [3.8268343236509046, 9.238795325112864], [3.3688985339222004, 9.415440651830208], [2.9028467725446254, 9.569403357322088], [2.429801799032642, 9.700312531945439], [1.9509032201612877, 9.807852804032303], [1.4673047445536245, 9.89176509964781], [0.9801714032956057, 9.95184726672197], [0.49067674327418154, 9.987954562051724], [3.061616997868383e-15, 10.0]]);
          }
        }
      }
    }
    // 'default'
    multmatrix(m=[[0.9026599878361166, -0.18621782520950345, 0.38797921069813135, -45.045549770967426], [0.17955023511937546, 0.9822805200352495, 0.053727953877445604, -32.73896972976321], [-0.39110952357144046, 0.021163684308804765, 0.9201007765664576, -110.2225992340309], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 1)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9026599878361166, 0.20385964365263093, -0.3790068496076615, 44.57823696327059], [-0.17955023511937537, -0.978771344163845, -0.09883505912517815, 35.08830986307373], [-0.3911095235714406, -0.021163684308805827, 0.9201007765664576, -110.2225992340309], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 1)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.8502871160911114, -0.3770388867310883, 0.36722404346943616, -42.67190339868019], [0.3522004553960446, 0.9260876486882507, 0.13533848737844673, -41.37873092160894], [-0.39110952357144113, 0.014259903213159427, 0.9202336636594378, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 2)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.8502871160911112, 0.38823610278198784, -0.3553653735328117, 41.75510396124355], [-0.35220045539604466, -0.9214496099391464, -0.16396784917115204, 43.59208055744456], [-0.3911095235714413, -0.014259903213159425, 0.9202336636594379, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 2)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.7652381873212339, -0.5479453182522783, 0.3378852540001142, -38.65508596496001], [0.5113158096881345, 0.8362463911263753, 0.19811137294734135, -49.38806133517891], [-0.39110952357144096, 0.02116368430880506, 0.9201007765664573, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 3)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.7652381873212338, 0.562901329760922, -0.31233413137007293, 37.3242916806402], [-0.5113158096881347, -0.8262531037278245, -0.23635133031803385, 51.37973573001425], [-0.39110952357144096, -0.021163684308805324, 0.9201007765664575, -110.2225992340309], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 3)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.6507815841631203, -0.7038275876610856, 0.2847982734521342, -33.156504362263576], [0.6507815841631199, 0.7102894608044072, 0.26827637164745727, -56.462392138201906], [-0.3911095235714411, 0.010752149429835123, 0.920281332992449, -110.2288342868876], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 4)
      cylinder(h=102.53736186606001, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.6507815841631202, 0.7102894608044069, -0.26827637164745743, 31.462392138201917], [-0.6507815841631202, -0.7038275876610858, -0.28479827345213404, 58.156504362263554], [-0.39110952357144124, -0.010752149429835033, 0.920281332992449, -110.2288342868876], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 4)
      cylinder(h=102.53736186606001, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.511315809688135, -0.8262531037278241, 0.23635133031803385, -26.379735730014247], [0.7652381873212334, 0.5629013297609224, 0.312334131370073, -62.3242916806402], [-0.3911095235714411, 0.0211636843088051, 0.9201007765664572, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 5)
      cylinder(h=52.08359349170651, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.5113158096881348, 0.8362463911263752, -0.19811137294734132, 24.38806133517891], [-0.7652381873212336, -0.5479453182522787, -0.33788525400011427, 63.655085964960016], [-0.391109523571441, -0.0211636843088052, 0.9201007765664572, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 5)
      cylinder(h=52.08359349170651, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.35220045539604516, -0.9214496099391462, 0.1639678491711523, -18.592080557444593], [0.850287116091111, 0.38823610278198856, 0.3553653735328114, -66.75510396124352], [-0.39110952357144113, 0.01425990321315951, 0.920233663659438, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 6)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.3522004553960451, 0.9260876486882504, -0.13533848737844698, 16.378730921608973], [-0.8502871160911113, -0.37703888673108893, -0.36722404346943616, 67.67190339868019], [-0.3911095235714412, -0.014259903213159557, 0.9202336636594379, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 6)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.17955023511937573, -0.9787713441638446, 0.09883505912517761, -10.088309863073714], [0.9026599878361161, 0.203859643652631, 0.379006849607662, -69.57823696327061], [-0.39110952357144096, 0.02116368430880505, 0.9201007765664574, -110.2225992340309], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 7)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.17955023511937557, 0.9822805200352496, -0.053727953877445216, 7.7389697297632], [-0.9026599878361161, -0.18621782520950342, -0.38797921069813185, 70.04554977096745], [-0.39110952357144096, -0.021163684308805216, 0.9201007765664573, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 7)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[2.9387825252767913e-17, -0.9999483732215368, 0.010161244589219087, -1.1979381511194014], [0.9203441424661325, 0.003974159530182387, 0.3910893318467128, -70.69281632612372], [-0.39110952357144096, 0.009351841937853454, 0.9202966280629794, -110.22967299590249], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 8)
      cylinder(h=117.89285658868934, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[2.9387825252767913e-17, 0.9999483732215368, 0.010161244589219087, -1.1979381511194014], [-0.9203441424661325, 0.003974159530182387, -0.3910893318467128, 70.69281632612372], [-0.39110952357144096, -0.009351841937853454, 0.9202966280629794, -110.22967299590249], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 8)
      cylinder(h=117.89285658868934, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.17955023511937512, -0.9822805200352497, -0.05372795387744511, 7.738969729763186], [0.9026599878361161, -0.18621782520950295, 0.38797921069813196, -70.04554977096747], [-0.391109523571441, 0.021163684308805154, 0.9201007765664572, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 9)
      cylinder(h=52.08359349170651, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.17955023511937526, 0.9787713441638448, 0.09883505912517752, -10.088309863073702], [-0.902659987836116, 0.20385964365263057, -0.3790068496076621, 69.57823696327063], [-0.391109523571441, -0.02116368430880512, 0.9201007765664572, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 9)
      cylinder(h=52.08359349170651, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.35220045539604466, -0.9260876486882507, -0.13533848737844684, 16.378730921608955], [0.8502871160911113, -0.3770388867310885, 0.3672240434694361, -67.67190339868019], [-0.39110952357144113, 0.014259903213159472, 0.9202336636594379, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 10)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.35220045539604483, 0.9214496099391463, 0.16396784917115217, -18.592080557444575], [-0.8502871160911112, 0.3882361027819881, -0.3553653735328114, 66.75510396124352], [-0.3911095235714411, -0.01425990321315954, 0.9202336636594379, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 10)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.5113158096881347, -0.8362463911263752, -0.19811137294734116, 24.388061335178897], [0.7652381873212338, -0.5479453182522782, 0.3378852540001144, -63.65508596496002], [-0.391109523571441, 0.021163684308805254, 0.9201007765664573, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 11)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.5113158096881347, 0.8262531037278245, 0.23635133031803365, -26.379735730014232], [-0.7652381873212338, 0.5629013297609221, -0.312334131370073, 62.32429168064021], [-0.39110952357144096, -0.021163684308805133, 0.9201007765664574, -110.2225992340309], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 11)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.6507815841631198, -0.7102894608044071, -0.2682763716474571, 31.462392138201885], [0.6507815841631203, -0.7038275876610853, 0.28479827345213415, -58.15650436226356], [-0.3911095235714411, 0.010752149429835193, 0.920281332992449, -110.2288342868876], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 12)
      cylinder(h=102.53736186606001, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.65078158416312, 0.703827587661086, 0.28479827345213404, -33.156504362263554], [-0.6507815841631204, 0.7102894608044068, -0.2682763716474574, 56.46239213820191], [-0.3911095235714411, -0.010752149429835108, 0.920281332992449, -110.2288342868876], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 12)
      cylinder(h=102.53736186606001, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.7652381873212335, -0.5629013297609226, -0.31233413137007293, 37.3242916806402], [0.5113158096881348, -0.826253103727824, 0.236351330318034, -51.379735730014254], [-0.39110952357144096, 0.021163684308805275, 0.9201007765664572, -110.22259923403087], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 13)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.7652381873212335, 0.5479453182522787, 0.3378852540001142, -38.65508596496001], [-0.511315809688135, 0.8362463911263752, -0.19811137294734152, 49.38806133517892], [-0.3911095235714411, -0.0211636843088051, 0.9201007765664573, -110.22259923403088], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 13)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.8502871160911112, -0.38823610278198845, -0.3553653735328114, 41.75510396124351], [0.3522004553960452, -0.921449609939146, 0.16396784917115248, -43.5920805574446], [-0.3911095235714412, 0.014259903213159637, 0.920233663659438, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 14)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.850287116091111, 0.3770388867310891, 0.36722404346943605, -42.67190339868018], [-0.35220045539604544, 0.9260876486882502, -0.13533848737844692, 41.37873092160897], [-0.39110952357144113, -0.014259903213159631, 0.9202336636594379, -110.22673343530036], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 14)
      cylinder(h=77.31047767888325, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9026599878361165, -0.20385964365263137, -0.3790068496076611, 44.57823696327057], [0.17955023511937573, -0.9787713441638447, 0.09883505912517848, -35.08830986307376], [-0.39110952357144024, 0.021163684308805962, 0.9201007765664574, -110.2225992340309], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone1', 15)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.9026599878361165, 0.18621782520950364, 0.38797921069813107, -45.04554977096741], [-0.1795502351193754, 0.9822805200352493, -0.05372795387744613, 32.73896972976325], [-0.3911095235714403, -0.021163684308804245, 0.9201007765664575, -110.2225992340309], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'cone2', 15)
      cylinder(h=52.0835934917065, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9203441419017464, -8.519222414312706e-09, -0.39110952489953243, 45.69335609828565], [5.8085053639153745e-09, -0.9999999999999997, 8.113836078360378e-09, -24.99999999650909], [-0.3911095248995323, 5.195759773046315e-09, 0.9203441419017462, -110.23605682446463], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'lside', 0)
      cylinder(h=104.63672832420274, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.9203441440139286, -1.0631404329880115e-08, 0.391109519929225, -45.69335609701623], [5.8085051556585585e-09, 0.9999999999999999, 1.3514323699661963e-08, -24.99999999650909], [-0.391109519929225, -1.016606693736092e-08, 0.9203441440139285, -110.23605682147748], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'rside', 0)
      cylinder(h=104.63672832420274, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9203441413387325, -2.21986994040218e-09, -0.3911095262243947, 45.69335609862402], [-2.100356750543753e-16, -0.9999999999999999, 5.675827511933107e-09, -15.0], [-0.39110952622439465, 5.223714634262024e-09, 0.9203441413387329, -110.23605682526086], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'lside', 1)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.9203441413387325, -2.21986994040218e-09, 0.3911095262243947, -45.69335609862402], [-2.100356750543753e-16, 0.9999999999999999, 5.675827511933107e-09, -15.0], [-0.39110952622439465, -5.223714634262024e-09, 0.9203441413387329, -110.23605682526086], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'rside', 1)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9203441414802298, -2.36136729750805e-09, -0.39110952589142883, 45.693356098538985], [-1.322939628994727e-16, -0.9999999999999999, 6.037611605086541e-09, -5.0], [-0.3911095258914287, 5.5566805037243e-09, 0.92034414148023, -110.23605682506076], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'lside', 2)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.9203441414802298, -2.36136729750805e-09, 0.39110952589142883, -45.693356098538985], [-1.322939628994727e-16, 0.9999999999999999, 6.037611605086541e-09, -5.0], [-0.3911095258914287, -5.5566805037243e-09, 0.92034414148023, -110.23605682506076], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'rside', 2)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9203441414802298, -2.36136729750805e-09, -0.39110952589142883, 45.693356098538985], [-1.322939628994727e-16, -0.9999999999999999, 6.037611605086541e-09, 5.0000000000000036], [-0.3911095258914287, 5.5566805037243e-09, 0.92034414148023, -110.23605682506076], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'lside', 3)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.9203441414802298, -2.36136729750805e-09, 0.39110952589142883, -45.693356098538985], [-1.322939628994727e-16, 0.9999999999999999, 6.037611605086541e-09, 5.0000000000000036], [-0.3911095258914287, -5.5566805037243e-09, 0.92034414148023, -110.23605682506076], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'rside', 3)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9203441411972353, -2.0783731142292795e-09, -0.3911095265573606, 45.69335609870906], [1.8087045767533554e-16, -1.0, 5.314043418779674e-09, 15.0], [-0.39110952655736053, 4.890748622444836e-09, 0.9203441411972355, -110.23605682546098], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'lside', 4)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.9203441411972354, -2.0783726882739767e-09, 0.3911095265573606, -45.69335609870906], [-2.8777738721940187e-16, 1.0, 5.314043418779674e-09, 15.0], [-0.39110952655736053, -4.89074883240017e-09, 0.9203441411972355, -110.23605682546098], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'rside', 4)
      cylinder(h=116.84434662869302, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[-0.9203441415787728, -8.196248716144039e-09, -0.39110952565954193, 45.69335609847976], [5.808505228315389e-09, -0.9999999999999994, 7.288047557791673e-09, 25.00000000349091], [-0.39110952565954193, 4.4357501805958745e-09, 0.9203441415787724, -110.23605682492139], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'lside', 5)
      cylinder(h=104.63672832420274, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[0.9203441436909549, -1.0308430659467022e-08, 0.3911095206892345, -45.693356097210334], [5.808505275505392e-09, 0.9999999999999996, 1.2688535281271985e-08, 25.00000000349091], [-0.3911095206892345, -9.406057487265392e-09, 0.920344143690955, -110.23605682193424], [0.0, 0.0, 0.0, 1.0]]) {
      // ('rib', 'rside', 5)
      cylinder(h=104.63672832420274, r1=1.9500000000000002, r2=1.5, center=false, $fn=3);
    }
    // 'default'
    multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 32.001], [0.0, 0.0, 0.0, 1.0]]) {
      // 'tail'
      multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [-0.0, -1.0, -0.0, -0.0], [-0.0, -0.0, -1.0, 20.0], [0.0, 0.0, 0.0, 1.0]]) {
        // 'tail_outer'
        cylinder(h=40.0, r1=9.5, r2=12.0, center=false, $fn=128);
      }
      // 'tail'
      multmatrix(m=[[0.0, 0.06237828615518053, 0.9980525784828885, 9.504868553792779], [-1.0, 0.0, 0.0, 0.75], [0.0, -0.9980525784828885, 0.06237828615518053, 19.92210313931554], [0.0, 0.0, 0.0, 1.0]]) {
        // ('tail_rib', 0)
        cube(size=[1.5, 40.0, 0.5]);
      }
      // 'tail'
      multmatrix(m=[[-0.8660254037844386, 0.031189143077590274, 0.4990262892414444, 5.40195332973472], [-0.5000000000000001, -0.05402118045492148, -0.8643388872787436, -7.856457627216405], [0.0, -0.9980525784828885, 0.06237828615518053, 19.92210313931554], [0.0, 0.0, 0.0, 1.0]]) {
        // ('tail_rib', 1)
        cube(size=[1.5, 40.0, 0.5]);
      }
      // 'tail'
      multmatrix(m=[[-0.8660254037844387, -0.031189143077590253, -0.49902628924144404, -4.102915224058059], [0.4999999999999998, -0.054021180454921484, -0.8643388872787438, -8.606457627216404], [0.0, -0.9980525784828885, 0.06237828615518053, 19.92210313931554], [0.0, 0.0, 0.0, 1.0]]) {
        // ('tail_rib', 2)
        cube(size=[1.5, 40.0, 0.5]);
      }
      // 'tail'
      multmatrix(m=[[0.0, -0.06237828615518053, -0.9980525784828885, -9.504868553792779], [1.0, 0.0, 0.0, -0.75], [0.0, -0.9980525784828885, 0.06237828615518053, 19.92210313931554], [0.0, 0.0, 0.0, 1.0]]) {
        // ('tail_rib', 3)
        cube(size=[1.5, 40.0, 0.5]);
      }
      // 'tail'
      multmatrix(m=[[0.8660254037844385, -0.031189143077590294, -0.4990262892414447, -5.401953329734722], [0.5000000000000004, 0.05402118045492147, 0.8643388872787435, 7.856457627216403], [0.0, -0.9980525784828885, 0.06237828615518053, 19.92210313931554], [0.0, 0.0, 0.0, 1.0]]) {
        // ('tail_rib', 4)
        cube(size=[1.5, 40.0, 0.5]);
      }
      // 'tail'
      multmatrix(m=[[0.8660254037844386, 0.031189143077590274, 0.4990262892414444, 4.102915224058062], [-0.5000000000000001, 0.05402118045492148, 0.8643388872787436, 8.606457627216406], [0.0, -0.9980525784828885, 0.06237828615518053, 19.92210313931554], [0.0, 0.0, 0.0, 1.0]]) {
        // ('tail_rib', 5)
        cube(size=[1.5, 40.0, 0.5]);
      }
    }
  }
  // 'default'
  multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, -110.749], [0.0, 0.0, 0.0, 1.0]]) {
    // 'rib_cleaner'
    multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, -25.0], [0.0, 0.0, 1.0, -0.75], [0.0, 0.0, 0.0, 1.0]]) {
      // 'cone1'
      cylinder(h=1.5, r1=52.7464829275686, r2=52.7464829275686, center=false, $fn=128);
    }
    // 'rib_cleaner'
    multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, -1.0, 0.0, 25.0], [0.0, 0.0, 1.0, -0.75], [0.0, 0.0, 0.0, 1.0]]) {
      // 'cone2'
      cylinder(h=1.5, r1=52.7464829275686, r2=52.7464829275686, center=false, $fn=128);
    }
    // 'rib_cleaner'
    multmatrix(m=[[-1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, -25.0], [0.0, 1.0, 0.0, -0.75], [0.0, 0.0, 0.0, 1.0]]) {
      // 'prism'
      linear_extrude(height=50.0, twist=0.0, scale=[1.0, 1.0], $fn=128) {
        polygon(points=[[0.0, 0.0], [-52.7464829275686, 0.0], [-52.7464829275686, 1.5], [0.0, 1.5], [52.7464829275686, 1.5], [52.7464829275686, 0.0], [0.0, 0.0]]);
      }
    }
  }
  // 'default'
  multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 32.001], [0.0, 0.0, 0.0, 1.0]]) {
    // 'tail'
    multmatrix(m=[[1.0, 0.0, 0.0, 0.0], [0.0, -1.0, 0.0, 0.0], [0.0, 0.0, -1.0, 20.0005], [0.0, 0.0, 0.0, 1.0]]) {
      // 'tail_inner'
      cylinder(h=40.001, r1=8.0, r2=10.0, center=false, $fn=128);
    }
  }
}

openBrain

2021-10-13 14:15

developer   ~0015972

@ozzee : could you please open a new thread in our forum (per our reporting guidelines) and add link here ? Thx

chennes

2021-12-29 03:08

administrator   ~0016134

The actual bit of failing code is the part that connects the circular part of the funnel to the highly-elongated part:

// 'inner'
          linear_extrude(height=25.002, twist=0.0, scale=[0.3, 2.85], $fn=128) {
            polygon(points=[[0.0, 10.0], [-0.4906767432741801, 9.987954562051724], [-0.9801714032956065, 9.95184726672197], [-1.4673047445536165, 9.89176509964781], [-1.950903220161282, 9.807852804032304], [-2.4298017990326386, 9.700312531945439], [-2.9028467725446214, 9.56940335732209], [-3.3688985339221995, 9.415440651830208], [-3.826834323650897, 9.238795325112868], [-4.275550934302819, 9.039892931234434], [-4.713967368259977, 8.819212643483551], [-5.1410274419322155, 8.577286100002722], [-5.55570233019602, 8.314696123025453], [-5.956993044924333, 8.03207531480645], [-6.3439328416364535, 7.730104533627371], [-6.715589548470184, 7.40951125354959], [-7.071067811865475, 7.0710678118654755], [-7.409511253549589, 6.715589548470185], [-7.73010453362737, 6.343932841636455], [-8.032075314806448, 5.956993044924335], [-8.314696123025453, 5.555702330196022], [-8.57728610000272, 5.141027441932218], [-8.81921264348355, 4.713967368259978], [-9.039892931234432, 4.275550934302824], [-9.238795325112868, 3.826834323650899], [-9.415440651830208, 3.3688985339221986], [-9.569403357322088, 2.902846772544624], [-9.700312531945439, 2.429801799032641], [-9.807852804032304, 1.9509032201612861], [-9.89176509964781, 1.467304744553618], [-9.951847266721968, 0.9801714032956083], [-9.987954562051724, 0.49067674327417965], [-10.0, 1.2246467991473533e-15], [-9.987954562051724, -0.4906767432741772], [-9.95184726672197, -0.9801714032956059], [-9.89176509964781, -1.4673047445536158], [-9.807852804032304, -1.9509032201612837], [-9.700312531945439, -2.429801799032638], [-9.56940335732209, -2.902846772544621], [-9.41544065183021, -3.368898533922197], [-9.238795325112868, -3.8268343236508966], [-9.039892931234434, -4.275550934302818], [-8.819212643483551, -4.7139673682599765], [-8.577286100002722, -5.1410274419322155], [-8.314696123025454, -5.55570233019602], [-8.03207531480645, -5.9569930449243325], [-7.730104533627371, -6.343932841636453], [-7.409511253549591, -6.715589548470184], [-7.071067811865477, -7.071067811865475], [-6.715589548470186, -7.409511253549589], [-6.343932841636452, -7.730104533627372], [-5.956993044924332, -8.03207531480645], [-5.555702330196022, -8.314696123025453], [-5.141027441932218, -8.57728610000272], [-4.713967368259978, -8.81921264348355], [-4.275550934302824, -9.039892931234432], [-3.8268343236509033, -9.238795325112864], [-3.3688985339222075, -9.415440651830204], [-2.9028467725446245, -9.569403357322088], [-2.4298017990326413, -9.700312531945439], [-1.9509032201612866, -9.807852804032303], [-1.4673047445536145, -9.89176509964781], [-0.9801714032956045, -9.95184726672197], [-0.4906767432741803, -9.987954562051724], [-1.8369701987210296e-15, -10.0], [0.4906767432741766, -9.987954562051724], [0.9801714032956009, -9.95184726672197], [1.4673047445536107, -9.891765099647811], [1.950903220161283, -9.807852804032304], [2.4298017990326377, -9.700312531945439], [2.9028467725446205, -9.56940335732209], [3.3688985339222044, -9.415440651830206], [3.8268343236509, -9.238795325112866], [4.275550934302822, -9.039892931234434], [4.713967368259976, -8.819212643483551], [5.1410274419322155, -8.577286100002722], [5.555702330196018, -8.314696123025454], [5.956993044924328, -8.032075314806452], [6.343932841636449, -7.730104533627374], [6.7155895484701835, -7.409511253549591], [7.071067811865474, -7.071067811865477], [7.409511253549589, -6.715589548470186], [7.730104533627365, -6.343932841636459], [8.03207531480645, -5.9569930449243325], [8.314696123025453, -5.555702330196022], [8.57728610000272, -5.141027441932219], [8.819212643483548, -4.713967368259979], [9.039892931234432, -4.275550934302825], [9.238795325112864, -3.826834323650904], [9.415440651830208, -3.3688985339222], [9.569403357322088, -2.902846772544625], [9.700312531945439, -2.4298017990326417], [9.807852804032303, -1.9509032201612873], [9.89176509964781, -1.4673047445536238], [9.95184726672197, -0.980171403295605], [9.987954562051724, -0.4906767432741809], [10.0, -2.4492935982947065e-15], [9.987954562051724, 0.490676743274176], [9.95184726672197, 0.9801714032956002], [9.89176509964781, 1.467304744553619], [9.807852804032304, 1.9509032201612824], [9.70031253194544, 2.429801799032637], [9.56940335732209, 2.90284677254462], [9.41544065183021, 3.3688985339221955], [9.238795325112868, 3.8268343236508997], [9.039892931234434, 4.275550934302821], [8.819212643483551, 4.713967368259976], [8.577286100002722, 5.141027441932215], [8.314696123025456, 5.555702330196018], [8.032075314806452, 5.956993044924328], [7.730104533627369, 6.343932841636455], [7.409511253549592, 6.7155895484701835], [7.071067811865477, 7.071067811865474], [6.715589548470186, 7.409511253549588], [6.343932841636459, 7.730104533627365], [5.9569930449243325, 8.03207531480645], [5.555702330196023, 8.314696123025453], [5.141027441932219, 8.57728610000272], [4.71396736825998, 8.819212643483548], [4.275550934302826, 9.039892931234432], [3.8268343236509046, 9.238795325112864], [3.3688985339222004, 9.415440651830208], [2.9028467725446254, 9.569403357322088], [2.429801799032642, 9.700312531945439], [1.9509032201612877, 9.807852804032303], [1.4673047445536245, 9.89176509964781], [0.9801714032956057, 9.95184726672197], [0.49067674327418154, 9.987954562051724], [3.061616997868383e-15, 10.0]]);
          }
For some reason a slight twist (approximately 10 degrees) is being applied when this transform is occurring in FreeCAD. (Note to self: that polygon is really just a circle, radius=10 I think -- no idea why it's defined as a polygon here).

Kunda1

2022-01-22 22:02

administrator   ~0016244

CC'ing @keithsloan52 on this too

keithsloan52

2022-01-25 21:37

developer   ~0016312

Chris @chennes have you been able to create a simpler test case that shows the same error, as I am not having much luck importing with the csg or scad file just seem to be spinning.

chennes

2022-01-25 21:41

administrator   ~0016313

Did you try that snippet I posted just above? My recollection is that was enough to get the failure: it turned out to be pretty easy to reproduce, but I did not have a chance to debug it.

keithsloan52

2022-01-25 21:59

developer   ~0016315

Not seeing any problem with Cut and paste of linear_extrude.
Image 25-01-2022 at 21.56.jpeg (157,378 bytes)   
Image 25-01-2022 at 21.56.jpeg (157,378 bytes)   
linearExtrude.FCStd (31,751 bytes)

yorik

2022-03-03 13:55

administrator   ~0017101

This ticket has been migrated to GitHub as issue 6270.

Issue History

Date Modified Username Field Change
2021-10-09 13:12 ozzee New Issue
2021-10-09 13:12 ozzee File Added: anchorcad_FilterFunnel_default_example.csg
2021-10-09 13:12 ozzee File Added: anchorcad_FilterFunnel_default_example.scad
2021-10-13 14:15 openBrain Status new => feedback
2021-10-13 14:15 openBrain Note Added: 0015972
2021-10-13 14:15 openBrain Tag Attached: #post-to-forum
2021-11-24 15:33 chennes Project FreeCAD => OpenSCAD
2021-12-29 03:08 chennes Note Added: 0016134
2021-12-29 03:08 chennes Assigned To => chennes
2021-12-29 03:08 chennes Status feedback => assigned
2021-12-29 03:08 chennes Status assigned => confirmed
2022-01-22 22:01 Kunda1 Tag Attached: OpenSCAD
2022-01-22 22:02 Kunda1 Note Added: 0016244
2022-01-25 21:37 keithsloan52 Note Added: 0016312
2022-01-25 21:41 chennes Note Added: 0016313
2022-01-25 21:59 keithsloan52 Note Added: 0016315
2022-01-25 21:59 keithsloan52 File Added: Image 25-01-2022 at 21.56.jpeg
2022-01-25 21:59 keithsloan52 File Added: linearExtrude.FCStd