def getArcDistance(relativeLocation, splitLine):
 halfPlaneLineDistance = (0.5 * abs(relativeLocation.dropAxis(2)))
 radius = getDoubleFromCharacterSplitLine('R', splitLine)
 if (radius == None):
  iFloat = getDoubleFromCharacterSplitLine('I', splitLine)
  jFloat = getDoubleFromCharacterSplitLine('J', splitLine)
  radius = abs(complex(iFloat, jFloat))
 angle = 0.0
 if (radius > 0.0):
  halfPlaneLineDistanceOverRadius = (halfPlaneLineDistance / radius)
  if (halfPlaneLineDistance < radius):
   angle = (2.0 * math.asin(halfPlaneLineDistanceOverRadius))
  else:
   angle = (math.pi * halfPlaneLineDistanceOverRadius)
 return abs(complex((angle * radius), relativeLocation.z))

def getArcDistance ( relativeLocation , splitLine ) : halfPlaneLineDistance = ( 0.5 * abs ( relativeLocation . dropAxis ( 2 ) ) ) radius = getDoubleFromCharacterSplitLine ( 'R' , splitLine ) if ( radius == None ) : iFloat = getDoubleFromCharacterSplitLine ( 'I' , splitLine ) jFloat = getDoubleFromCharacterSplitLine ( 'J' , splitLine ) radius = abs ( complex ( iFloat , jFloat ) ) angle = 0.0 if ( radius > 0.0 ) : halfPlaneLineDistanceOverRadius = ( halfPlaneLineDistance / radius ) if ( halfPlaneLineDistance < radius ) : angle = ( 2.0 * math . asin ( halfPlaneLineDistanceOverRadius ) ) else : angle = ( math . pi * halfPlaneLineDistanceOverRadius ) return abs ( complex ( ( angle * radius ) , relativeLocation . z ) )
get arc distance .