def getBevelPath(begin, center, close, end, radius):
 beginComplex = begin.dropAxis()
 centerComplex = center.dropAxis()
 endComplex = end.dropAxis()
 beginComplexSegmentLength = abs((centerComplex - beginComplex))
 endComplexSegmentLength = abs((centerComplex - endComplex))
 minimumRadius = lineation.getMinimumRadius(beginComplexSegmentLength, endComplexSegmentLength, radius)
 if (minimumRadius <= close):
  return [center]
 beginBevel = (center + ((minimumRadius / beginComplexSegmentLength) * (begin - center)))
 endBevel = (center + ((minimumRadius / endComplexSegmentLength) * (end - center)))
 if (radius > 0.0):
  return [beginBevel, endBevel]
 midpointComplex = (0.5 * (beginBevel.dropAxis() + endBevel.dropAxis()))
 spikeComplex = ((centerComplex + centerComplex) - midpointComplex)
 return [beginBevel, Vector3(spikeComplex.real, spikeComplex.imag, center.z), endBevel]

def getBevelPath ( begin , center , close , end , radius ) : beginComplex = begin . dropAxis ( ) centerComplex = center . dropAxis ( ) endComplex = end . dropAxis ( ) beginComplexSegmentLength = abs ( ( centerComplex - beginComplex ) ) endComplexSegmentLength = abs ( ( centerComplex - endComplex ) ) minimumRadius = lineation . getMinimumRadius ( beginComplexSegmentLength , endComplexSegmentLength , radius ) if ( minimumRadius <= close ) : return [ center ] beginBevel = ( center + ( ( minimumRadius / beginComplexSegmentLength ) * ( begin - center ) ) ) endBevel = ( center + ( ( minimumRadius / endComplexSegmentLength ) * ( end - center ) ) ) if ( radius > 0.0 ) : return [ beginBevel , endBevel ] midpointComplex = ( 0.5 * ( beginBevel . dropAxis ( ) + endBevel . dropAxis ( ) ) ) spikeComplex = ( ( centerComplex + centerComplex ) - midpointComplex ) return [ beginBevel , Vector3 ( spikeComplex . real , spikeComplex . imag , center . z ) , endBevel ]
get bevel path .