def getCubicPath(xmlElement): "Get the cubic path." end = evaluate.getVector3FromXMLElement(xmlElement) previousXMLElement = xmlElement.getPreviousXMLElement() if previousXMLElement == None: print( 'Warning, can not get previousXMLElement in getCubicPath in cubic for:' ) print(xmlElement) return [end] begin = xmlElement.getPreviousVertex(Vector3()) controlPoint0 = evaluate.getVector3ByPrefix('controlPoint0', None, xmlElement) if controlPoint0 == None: oldControlPoint = evaluate.getVector3ByPrefixes( ['controlPoint', 'controlPoint1'], None, previousXMLElement) if oldControlPoint == None: print( 'Warning, can not get oldControlPoint in getCubicPath in cubic for:' ) print(xmlElement) return [end] controlPoint0 = begin + begin - oldControlPoint controlPoints = [ controlPoint0, evaluate.getVector3ByPrefix('controlPoint1', None, xmlElement) ] return svg_reader.getCubicPoints( begin, controlPoints, end, lineation.getNumberOfBezierPoints(begin, end, xmlElement))
def getCubicPath(elementNode): "Get the cubic path." end = evaluate.getVector3FromElementNode(elementNode) previousElementNode = elementNode.getPreviousElementNode() if previousElementNode == None: print('Warning, can not get previousElementNode in getCubicPath in cubic for:') print(elementNode) return [end] begin = elementNode.getPreviousVertex(Vector3()) evaluatedControlPoints = evaluate.getTransformedPathByKey([], elementNode, 'controlPoints') if len(evaluatedControlPoints) > 1: return getCubicPathByBeginEnd(begin, evaluatedControlPoints, elementNode, end) controlPoint0 = evaluate.getVector3ByPrefix(None, elementNode, 'controlPoint0') controlPoint1 = evaluate.getVector3ByPrefix(None, elementNode, 'controlPoint1') if len(evaluatedControlPoints) == 1: controlPoint1 = evaluatedControlPoints[0] if controlPoint0 == None: oldControlPoint = evaluate.getVector3ByPrefixes(previousElementNode, ['controlPoint','controlPoint1'], None) if oldControlPoint == None: oldControlPoints = evaluate.getTransformedPathByKey([], previousElementNode, 'controlPoints') if len(oldControlPoints) > 0: oldControlPoint = oldControlPoints[-1] if oldControlPoint == None: oldControlPoint = end controlPoint0 = begin + begin - oldControlPoint return getCubicPathByBeginEnd(begin, [controlPoint0, controlPoint1], elementNode, end)
def getCubicPath(elementNode): "Get the cubic path." end = evaluate.getVector3FromElementNode(elementNode) previousElementNode = elementNode.getPreviousElementNode() if previousElementNode is None: print('Warning, can not get previousElementNode in getCubicPath in cubic for:') print(elementNode) return [end] begin = elementNode.getPreviousVertex(Vector3()) evaluatedControlPoints = evaluate.getTransformedPathByKey([], elementNode, 'controlPoints') if len(evaluatedControlPoints) > 1: return getCubicPathByBeginEnd(begin, evaluatedControlPoints, elementNode, end) controlPoint0 = evaluate.getVector3ByPrefix(None, elementNode, 'controlPoint0') controlPoint1 = evaluate.getVector3ByPrefix(None, elementNode, 'controlPoint1') if len(evaluatedControlPoints) == 1: controlPoint1 = evaluatedControlPoints[0] if controlPoint0 is None: oldControlPoint = evaluate.getVector3ByPrefixes(previousElementNode, ['controlPoint','controlPoint1'], None) if oldControlPoint is None: oldControlPoints = evaluate.getTransformedPathByKey([], previousElementNode, 'controlPoints') if len(oldControlPoints) > 0: oldControlPoint = oldControlPoints[-1] if oldControlPoint is None: oldControlPoint = end controlPoint0 = begin + begin - oldControlPoint return getCubicPathByBeginEnd(begin, [controlPoint0, controlPoint1], elementNode, end)
def __init__(self, elementNode): 'Set defaults.' self.inradius = evaluate.getVector3ByPrefixes(elementNode, ['demisize', 'inradius'], Vector3(1.0, 1.0, 1.0)) self.inradius = evaluate.getVector3ByMultiplierPrefix( elementNode, 2.0, 'size', self.inradius)
def __init__(self, xmlElement): 'Set defaults.' self.fileName = evaluate.getEvaluatedString('', 'file', xmlElement) self.heightGrid = evaluate.getEvaluatedValue([], 'heightGrid', xmlElement) self.inradius = evaluate.getVector3ByPrefixes(['demisize', 'inradius'], Vector3(10.0, 10.0, 5.0), xmlElement) self.inradius = evaluate.getVector3ByMultiplierPrefix(2.0, 'size', self.inradius, xmlElement) self.start = evaluate.getEvaluatedFloat(0.0, 'start', xmlElement)
def getCubicPath(xmlElement): "Get the cubic path." end = evaluate.getVector3FromXMLElement(xmlElement) previousXMLElement = xmlElement.getPreviousXMLElement() if previousXMLElement == None: print('Warning, can not get previousXMLElement in getCubicPath in cubic for:') print(xmlElement) return [end] begin = xmlElement.getPreviousVertex(Vector3()) evaluatedControlPoints = evaluate.getTransformedPathByKey('controlPoints', xmlElement) if len(evaluatedControlPoints) > 1: return getCubicPathByBeginEnd(begin, evaluatedControlPoints, end, xmlElement) controlPoint0 = evaluate.getVector3ByPrefix('controlPoint0', None, xmlElement) controlPoint1 = evaluate.getVector3ByPrefix('controlPoint1', None, xmlElement) if len(evaluatedControlPoints) == 1: controlPoint1 = evaluatedControlPoints[0] if controlPoint0 == None: oldControlPoint = evaluate.getVector3ByPrefixes(['controlPoint','controlPoint1'], None, previousXMLElement) if oldControlPoint == None: oldControlPoints = evaluate.getTransformedPathByKey('controlPoints', previousXMLElement) if len(oldControlPoints) > 0: oldControlPoint = oldControlPoints[-1] if oldControlPoint == None: oldControlPoint = end controlPoint0 = begin + begin - oldControlPoint return getCubicPathByBeginEnd(begin, [controlPoint0, controlPoint1], end, xmlElement)
def __init__(self, elementNode): 'Set defaults.' self.fileName = evaluate.getEvaluatedString('', elementNode, 'file') self.heightGrid = evaluate.getEvaluatedValue([], elementNode, 'heightGrid') self.inradius = evaluate.getVector3ByPrefixes(elementNode, ['demisize', 'inradius'], Vector3(10.0, 10.0, 5.0)) self.inradius = evaluate.getVector3ByMultiplierPrefix(elementNode, 2.0, 'size', self.inradius) self.start = evaluate.getEvaluatedFloat(0.0, elementNode, 'start')
def setToObjectAttributeDictionary(self): "Set the shape of this carvable object info." self.inradius = evaluate.getVector3ByPrefixes( ['demisize', 'inradius'], Vector3(1.0, 1.0, 1.0), self.xmlElement ) self.inradius = evaluate.getVector3ByMultiplierPrefix( 2.0, 'size', self.inradius, self.xmlElement ) self.xmlElement.attributeDictionary['inradius.x'] = self.inradius.x self.xmlElement.attributeDictionary['inradius.y'] = self.inradius.y self.xmlElement.attributeDictionary['inradius.z'] = self.inradius.z self.createShape()
def setToObjectAttributeDictionary(self): "Set the shape of this carvable object info." self.radius = evaluate.getVector3ByPrefixes(["demisize", "radius"], Vector3(1.0, 1.0, 1.0), self.xmlElement) self.radius = evaluate.getVector3ByMultiplierPrefixes(2.0, ["diameter", "size"], self.radius, self.xmlElement) self.xmlElement.attributeDictionary["radius.x"] = self.radius.x self.xmlElement.attributeDictionary["radius.y"] = self.radius.y self.xmlElement.attributeDictionary["radius.z"] = self.radius.z self.createShape()
def __init__(self, elementNode): 'Set defaults.' self.inradius = evaluate.getVector3ByPrefixes( elementNode, ['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0)) self.inradius = evaluate.getVector3ByMultiplierPrefixes( elementNode, 2.0, ['diameter', 'size'], self.inradius) self.inradius.z = 0.5 * evaluate.getEvaluatedFloat( self.inradius.z + self.inradius.z, elementNode, 'height') self.topOverBottom = evaluate.getEvaluatedFloat( 1.0, elementNode, 'topOverBottom')
def setToObjectAttributeDictionary(self): "Set the shape of this carvable object info." self.inradius = evaluate.getVector3ByPrefixes( ['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0), self.xmlElement ) self.inradius = evaluate.getVector3ByMultiplierPrefixes( 2.0, ['diameter', 'size'], self.inradius, self.xmlElement ) self.inradius.z = 0.5 * evaluate.getEvaluatedFloatDefault( self.inradius.z + self.inradius.z, 'height', self.xmlElement ) self.topOverBottom = evaluate.getEvaluatedFloatOne('topoverbottom', self.xmlElement ) self.xmlElement.attributeDictionary['height'] = self.inradius.z + self.inradius.z self.xmlElement.attributeDictionary['radius.x'] = self.inradius.x self.xmlElement.attributeDictionary['radius.y'] = self.inradius.y self.xmlElement.attributeDictionary['topoverbottom'] = self.topOverBottom self.createShape()
def __init__(self, xmlElement): 'Set defaults.' self.fileName = evaluate.getEvaluatedString('', 'file', xmlElement) self.heightGrid = evaluate.getEvaluatedValue([], 'heightGrid', xmlElement) self.inradius = evaluate.getVector3ByPrefixes(['demisize', 'inradius'], Vector3(10.0, 10.0, 5.0), xmlElement) self.inradius = evaluate.getVector3ByMultiplierPrefix( 2.0, 'size', self.inradius, xmlElement) self.start = evaluate.getEvaluatedFloat(0.0, 'start', xmlElement)
def __init__(self, elementNode): 'Set defaults.' self.fileName = evaluate.getEvaluatedString('', elementNode, 'file') self.heightGrid = evaluate.getEvaluatedValue([], elementNode, 'heightGrid') self.inradius = evaluate.getVector3ByPrefixes(elementNode, ['demisize', 'inradius'], Vector3(10.0, 10.0, 5.0)) self.inradius = evaluate.getVector3ByMultiplierPrefix( elementNode, 2.0, 'size', self.inradius) self.start = evaluate.getEvaluatedFloat(0.0, elementNode, 'start')
def setToObjectAttributeDictionary(self): 'Set the shape of this carvable object info.' self.inradius = evaluate.getVector3ByPrefixes(['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0), self.xmlElement) self.inradius = evaluate.getVector3ByMultiplierPrefixes(2.0, ['diameter', 'size'], self.inradius, self.xmlElement) self.inradius.z = 0.5 * evaluate.getEvaluatedFloatDefault(self.inradius.z + self.inradius.z, 'height', self.xmlElement) self.topOverBottom = evaluate.getEvaluatedFloatDefault(1.0, 'topOverBottom', self.xmlElement ) self.xmlElement.attributeDictionary['height'] = self.inradius.z + self.inradius.z self.xmlElement.attributeDictionary['radius.x'] = self.inradius.x self.xmlElement.attributeDictionary['radius.y'] = self.inradius.y self.xmlElement.attributeDictionary['topOverBottom'] = self.topOverBottom self.createShape()
def setToElementNode(self, elementNode): 'Set to elementNode.' attributes = elementNode.attributes self.elementNode = elementNode self.radius = evaluate.getVector3ByPrefixes( elementNode, ['demisize', 'radius'], Vector3(1.0, 1.0, 1.0) ) self.radius = evaluate.getVector3ByMultiplierPrefixes( elementNode, 2.0, ['diameter', 'size'], self.radius ) if 'radius' in attributes: del attributes['radius'] attributes['radius.x'] = self.radius.x attributes['radius.y'] = self.radius.y attributes['radius.z'] = self.radius.z self.createShape() self.liftByMinimumZ(-self.radius.z) solid.processArchiveRemoveSolid(elementNode, self.getGeometryOutput())
def setToXMLElement(self, xmlElement): 'Set to xmlElement.' attributeDictionary = xmlElement.attributeDictionary self.radius = evaluate.getVector3ByPrefixes( ['demisize', 'radius'], Vector3(1.0, 1.0, 1.0), xmlElement ) self.radius = evaluate.getVector3ByMultiplierPrefixes( 2.0, ['diameter', 'size'], self.radius, xmlElement ) self.xmlElement = xmlElement if 'radius' in attributeDictionary: del attributeDictionary['radius'] attributeDictionary['radius.x'] = self.radius.x attributeDictionary['radius.y'] = self.radius.y attributeDictionary['radius.z'] = self.radius.z self.createShape() self.liftByMinimumZ(-self.radius.z) solid.processArchiveRemoveSolid(self.getGeometryOutput(), xmlElement)
def setToXMLElement(self, xmlElement): """Set to xmlElement.""" attributeDictionary = xmlElement.attributeDictionary self.inradius = evaluate.getVector3ByPrefixes(['demisize', 'inradius'], Vector3(1.0, 1.0, 1.0), xmlElement) self.inradius = evaluate.getVector3ByMultiplierPrefix(2.0, 'size', self.inradius, xmlElement) self.xmlElement = xmlElement attributeDictionary['inradius.x'] = self.inradius.x attributeDictionary['inradius.y'] = self.inradius.y attributeDictionary['inradius.z'] = self.inradius.z if 'inradius' in attributeDictionary: del attributeDictionary['inradius'] self.createShape() self.liftByMinimumZ(-self.inradius.z) solid.processArchiveRemoveSolid(self.getGeometryOutput(), xmlElement)
def setToElementNode(self, elementNode): 'Set to elementNode.' attributes = elementNode.attributes self.elementNode = elementNode self.inradius = evaluate.getVector3ByPrefixes(elementNode, ['demisize', 'inradius'], Vector3(1.0, 1.0, 1.0)) self.inradius = evaluate.getVector3ByMultiplierPrefix( elementNode, 2.0, 'size', self.inradius) attributes['inradius.x'] = self.inradius.x attributes['inradius.y'] = self.inradius.y attributes['inradius.z'] = self.inradius.z if 'inradius' in attributes: del attributes['inradius'] self.createShape() self.liftByMinimumZ(-self.inradius.z) solid.processArchiveRemoveSolid(elementNode, self.getGeometryOutput())
def getQuadraticPath(elementNode): "Get the quadratic path." end = evaluate.getVector3FromElementNode(elementNode) previousElementNode = elementNode.getPreviousElementNode() if previousElementNode == None: print('Warning, can not get previousElementNode in getQuadraticPath in quadratic for:') print(elementNode) return [end] begin = elementNode.getPreviousVertex(Vector3()) controlPoint = evaluate.getVector3ByPrefix(None, elementNode, 'controlPoint') if controlPoint == None: oldControlPoint = evaluate.getVector3ByPrefixes(previousElementNode, ['controlPoint','controlPoint1'], None) if oldControlPoint == None: oldControlPoint = end controlPoint = begin + begin - oldControlPoint evaluate.addVector3ToElementNode(elementNode, 'controlPoint', controlPoint) return svg_reader.getQuadraticPoints(begin, controlPoint, end, lineation.getNumberOfBezierPoints(begin, elementNode, end))
def setToXMLElement(self, xmlElement): 'Set to xmlElement.' attributeDictionary = xmlElement.attributeDictionary self.inradius = evaluate.getVector3ByPrefixes(['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0), xmlElement) self.inradius = evaluate.getVector3ByMultiplierPrefixes(2.0, ['diameter', 'size'], self.inradius, xmlElement) self.inradius.z = 0.5 * evaluate.getEvaluatedFloat(self.inradius.z + self.inradius.z, 'height', xmlElement) self.topOverBottom = evaluate.getEvaluatedFloat(1.0, 'topOverBottom', xmlElement ) self.xmlElement = xmlElement if 'inradius' in attributeDictionary: del attributeDictionary['inradius'] attributeDictionary['height'] = self.inradius.z + self.inradius.z attributeDictionary['radius.x'] = self.inradius.x attributeDictionary['radius.y'] = self.inradius.y attributeDictionary['topOverBottom'] = self.topOverBottom self.createShape() self.liftByMinimumZ(-self.inradius.z) solid.processArchiveRemoveSolid(self.getGeometryOutput(), xmlElement)
def setToXMLElement(self, xmlElement): """Set to xmlElement.""" attributeDictionary = xmlElement.attributeDictionary self.inradius = evaluate.getVector3ByPrefixes(['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0), xmlElement) self.inradius = evaluate.getVector3ByMultiplierPrefixes(2.0, ['diameter', 'size'], self.inradius, xmlElement) self.inradius.z = 0.5 * evaluate.getEvaluatedFloat(self.inradius.z + self.inradius.z, 'height', xmlElement) self.topOverBottom = evaluate.getEvaluatedFloat(1.0, 'topOverBottom', xmlElement ) self.xmlElement = xmlElement if 'inradius' in attributeDictionary: del attributeDictionary['inradius'] attributeDictionary['height'] = self.inradius.z + self.inradius.z attributeDictionary['radius.x'] = self.inradius.x attributeDictionary['radius.y'] = self.inradius.y attributeDictionary['topOverBottom'] = self.topOverBottom self.createShape() self.liftByMinimumZ(-self.inradius.z) solid.processArchiveRemoveSolid(self.getGeometryOutput(), xmlElement)
def getQuadraticPath(xmlElement): "Get the quadratic path." end = evaluate.getVector3FromXMLElement(xmlElement) previousXMLElement = xmlElement.getPreviousXMLElement() if previousXMLElement == None: print('Warning, can not get previousXMLElement in getQuadraticPath in quadratic for:') print(xmlElement) return [end] begin = xmlElement.getPreviousVertex(Vector3()) controlPoint = evaluate.getVector3ByPrefix(None, 'controlPoint', xmlElement) if controlPoint == None: oldControlPoint = evaluate.getVector3ByPrefixes(['controlPoint','controlPoint1'], None, previousXMLElement) if oldControlPoint == None: oldControlPoint = end controlPoint = begin + begin - oldControlPoint evaluate.addVector3ToXMLElement('controlPoint', controlPoint, xmlElement) return svg_reader.getQuadraticPoints(begin, controlPoint, end, lineation.getNumberOfBezierPoints(begin, end, xmlElement))
def setToElementNode(self, elementNode): 'Set to elementNode.' attributes = elementNode.attributes self.elementNode = elementNode self.inradius = evaluate.getVector3ByPrefixes(elementNode, ['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0)) self.inradius = evaluate.getVector3ByMultiplierPrefixes(elementNode, 2.0, ['diameter', 'size'], self.inradius) self.inradius.z = 0.5 * evaluate.getEvaluatedFloat(self.inradius.z + self.inradius.z, elementNode, 'height') self.topOverBottom = evaluate.getEvaluatedFloat(1.0, elementNode, 'topOverBottom') if 'inradius' in attributes: del attributes['inradius'] attributes['height'] = self.inradius.z + self.inradius.z attributes['radius.x'] = self.inradius.x attributes['radius.y'] = self.inradius.y attributes['topOverBottom'] = self.topOverBottom self.createShape() self.liftByMinimumZ(-self.inradius.z) solid.processArchiveRemoveSolid(elementNode, self.getGeometryOutput())
def getCubicPath(xmlElement): "Get the cubic path." end = evaluate.getVector3FromXMLElement(xmlElement) previousXMLElement = xmlElement.getPreviousXMLElement() if previousXMLElement == None: print('Warning, can not get previousXMLElement in getCubicPath in cubic for:') print(xmlElement) return [end] begin = xmlElement.getPreviousVertex(Vector3()) controlPoint0 = evaluate.getVector3ByPrefix('controlPoint0', None, xmlElement) if controlPoint0 == None: oldControlPoint = evaluate.getVector3ByPrefixes(['controlPoint','controlPoint1'], None, previousXMLElement) if oldControlPoint == None: print('Warning, can not get oldControlPoint in getCubicPath in cubic for:') print(xmlElement) return [end] controlPoint0 = begin + begin - oldControlPoint controlPoints = [controlPoint0, evaluate.getVector3ByPrefix('controlPoint1', None, xmlElement)] return svg_reader.getCubicPoints(begin, controlPoints, end, lineation.getNumberOfBezierPoints(begin, end, xmlElement))
def setToElementNode(self, elementNode): 'Set to elementNode.' attributes = elementNode.attributes self.elementNode = elementNode self.inradius = evaluate.getVector3ByPrefixes( elementNode, ['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0)) self.inradius = evaluate.getVector3ByMultiplierPrefixes( elementNode, 2.0, ['diameter', 'size'], self.inradius) self.inradius.z = 0.5 * evaluate.getEvaluatedFloat( self.inradius.z + self.inradius.z, elementNode, 'height') self.topOverBottom = evaluate.getEvaluatedFloat( 1.0, elementNode, 'topOverBottom') if 'inradius' in attributes: del attributes['inradius'] attributes['height'] = self.inradius.z + self.inradius.z attributes['radius.x'] = self.inradius.x attributes['radius.y'] = self.inradius.y attributes['topOverBottom'] = self.topOverBottom self.createShape() self.liftByMinimumZ(-self.inradius.z) solid.processArchiveRemoveSolid(elementNode, self.getGeometryOutput())
def getCubicPath(xmlElement): "Get the cubic path." end = evaluate.getVector3FromXMLElement(xmlElement) previousXMLElement = xmlElement.getPreviousXMLElement() if previousXMLElement == None: print( 'Warning, can not get previousXMLElement in getCubicPath in cubic for:' ) print(xmlElement) return [end] begin = xmlElement.getPreviousVertex(Vector3()) evaluatedControlPoints = evaluate.getTransformedPathByKey([], 'controlPoints', xmlElement) if len(evaluatedControlPoints) > 1: return getCubicPathByBeginEnd(begin, evaluatedControlPoints, end, xmlElement) controlPoint0 = evaluate.getVector3ByPrefix(None, 'controlPoint0', xmlElement) controlPoint1 = evaluate.getVector3ByPrefix(None, 'controlPoint1', xmlElement) if len(evaluatedControlPoints) == 1: controlPoint1 = evaluatedControlPoints[0] if controlPoint0 == None: oldControlPoint = evaluate.getVector3ByPrefixes( ['controlPoint', 'controlPoint1'], None, previousXMLElement) if oldControlPoint == None: oldControlPoints = evaluate.getTransformedPathByKey( [], 'controlPoints', previousXMLElement) if len(oldControlPoints) > 0: oldControlPoint = oldControlPoints[-1] if oldControlPoint == None: oldControlPoint = end controlPoint0 = begin + begin - oldControlPoint return getCubicPathByBeginEnd(begin, [controlPoint0, controlPoint1], end, xmlElement)
def __init__(self, elementNode): 'Set defaults.' self.inradius = evaluate.getVector3ByPrefixes(elementNode, ['demisize', 'inradius', 'radius'], Vector3(1.0, 1.0, 1.0)) self.inradius = evaluate.getVector3ByMultiplierPrefixes(elementNode, 2.0, ['diameter', 'size'], self.inradius) self.inradius.z = 0.5 * evaluate.getEvaluatedFloat(self.inradius.z + self.inradius.z, elementNode, 'height') self.topOverBottom = evaluate.getEvaluatedFloat(1.0, elementNode, 'topOverBottom')
def __init__(self, elementNode): "Set defaults." self.inradius = evaluate.getVector3ByPrefixes(elementNode, ["demisize", "inradius"], Vector3(1.0, 1.0, 1.0)) self.inradius = evaluate.getVector3ByMultiplierPrefix(elementNode, 2.0, "size", self.inradius)
def __init__(self, elementNode): 'Set defaults.' self.radius = evaluate.getVector3ByPrefixes(elementNode, ['demisize', 'radius'], Vector3(1.0, 1.0, 1.0)) self.radius = evaluate.getVector3ByMultiplierPrefixes(elementNode, 2.0, ['diameter', 'size'], self.radius)