def addNegativesByRadius(elementNode, end, negatives, radius, start): "Add teardrop drill hole to negatives." if radius <= 0.0: return copyShallow = elementNode.getCopyShallow() extrude.setElementNodeToEndStart(copyShallow, end, start) extrudeDerivation = extrude.ExtrudeDerivation(copyShallow) extrude.addNegatives(extrudeDerivation, negatives, [getTeardropPathByEndStart(elementNode, end, radius, start)])
def addNegativesByRadius(elementNode, end, negatives, radius, start): "Add teardrop drill hole to negatives." if radius <= 0.0: return copyShallow = elementNode.getCopyShallow() extrude.setElementNodeToEndStart(copyShallow, end, start) extrudeDerivation = extrude.ExtrudeDerivation(copyShallow) extrude.addNegatives( extrudeDerivation, negatives, [getTeardropPathByEndStart(elementNode, end, radius, start)])
def addGroove(derivation, negatives): 'Add groove on each side of cage.' copyShallow = derivation.elementNode.getCopyShallow() extrude.setElementNodeToEndStart(copyShallow, Vector3(-derivation.demilength), Vector3(derivation.demilength)) extrudeDerivation = extrude.ExtrudeDerivation(copyShallow) bottom = derivation.demiheight - 0.5 * derivation.grooveWidth outside = derivation.demiwidth top = derivation.demiheight leftGroove = [ complex(-outside, bottom), complex(-derivation.innerDemiwidth, derivation.demiheight), complex(-outside, top)] rightGroove = [ complex(outside, top), complex(derivation.innerDemiwidth, derivation.demiheight), complex(outside, bottom)] extrude.addNegatives(extrudeDerivation, negatives, euclidean.getVector3Paths([leftGroove, rightGroove]))