def getManipulatedPaths(close, elementNode, loop, prefix, sideLength): "Get flipped paths." if len(loop) < 1: return [[]] derivation = BottomDerivation(elementNode, prefix) targetMatrix = matrix.getBranchMatrixSetElementNode(elementNode) transformedLoop = matrix.getTransformedVector3s(matrix.getIdentityTetragrid(targetMatrix.tetragrid), loop) lift = derivation.altitude + derivation.getAdditionalPathLift() - euclidean.getBottomByPath(transformedLoop) for point in loop: point.z += lift return [loop]
def getManipulatedPaths(close, elementNode, loop, prefix, sideLength): 'Get flipped paths.' if len(loop) < 1: return [[]] derivation = BottomDerivation(elementNode, prefix) targetMatrix = matrix.getBranchMatrixSetElementNode(elementNode) transformedLoop = matrix.getTransformedVector3s(matrix.getIdentityTetragrid(targetMatrix.tetragrid), loop) lift = derivation.altitude + derivation.getAdditionalPathLift() - euclidean.getBottomByPath(transformedLoop) for point in loop: point.z += lift return [loop]
def bottomElementNode(derivation, target): "Bottom target." xmlObject = target.xmlObject if xmlObject == None: print("Warning, bottomTarget in bottom could not get xmlObject for:") print(target) print(derivation.elementNode) return targetMatrix = matrix.getBranchMatrixSetElementNode(target) lift = derivation.altitude transformedPaths = xmlObject.getTransformedPaths() if len(transformedPaths) > 0: lift += derivation.getAdditionalPathLift() - euclidean.getBottomByPaths(transformedPaths) else: lift -= boolean_geometry.getMinimumZ(xmlObject) targetMatrix.tetragrid = matrix.getIdentityTetragrid(targetMatrix.tetragrid) targetMatrix.tetragrid[2][3] += lift matrix.setElementNodeDictionaryMatrix(target, targetMatrix)
def bottomElementNode(derivation, target): "Bottom target." xmlObject = target.xmlObject if xmlObject == None: print('Warning, bottomTarget in bottom could not get xmlObject for:') print(target) print(derivation.elementNode) return targetMatrix = matrix.getBranchMatrixSetElementNode(target) lift = derivation.altitude transformedPaths = xmlObject.getTransformedPaths() if len(transformedPaths) > 0: lift += derivation.getAdditionalPathLift() - euclidean.getBottomByPaths(transformedPaths) else: lift -= boolean_geometry.getMinimumZ(xmlObject) targetMatrix.tetragrid = matrix.getIdentityTetragrid(targetMatrix.tetragrid) targetMatrix.tetragrid[2][3] += lift matrix.setElementNodeDictionaryMatrix(target, targetMatrix)