Code Duplication    Length = 13-14 lines in 2 locations

ed2d/csg/csg.py 2 locations

@@ 53-66 (lines=14) @@
50
        csgA.invert()
51
        return self.fromPolygons(csgA.allPolygons())
52
53
    def intersect(self, otherCSG):
54
        csgA = csgNode(self.clone().polygons)
55
        csgB = csgNode(otherCSG.clone().polygons)
56
57
        csgA.invert()
58
        csgB.clipTo(csgA)
59
        csgB.invert()
60
        csgA.clipTo(csgB)
61
        csgB.clipTo(csgA)
62
        csgA.build(csgB.allPolygons())
63
        csgA.invert()
64
65
66
        return self.fromPolygons(csgA.allPolygons())
67
68
    def inverse(self):
69
        newCSG = self.clone()
@@ 39-51 (lines=13) @@
36
37
        return self.fromPolygons(csgA.allPolygons())
38
39
    def subtract(self, otherCSG):
40
        csgA = csgNode(self.clone().polygons)
41
        csgB = csgNode(otherCSG.clone().polygons)
42
43
        csgA.invert()
44
        csgA.clipTo(csgB)
45
        csgB.clipTo(csgA)
46
        csgB.invert()
47
        csgB.clipTo(csgA)
48
        csgB.invert()
49
        csgA.build(csgB.allPolygons())
50
        csgA.invert()
51
        return self.fromPolygons(csgA.allPolygons())
52
53
    def intersect(self, otherCSG):
54
        csgA = csgNode(self.clone().polygons)