paya.runtime.nodes.MakeThreePointCircularArc#

class MakeThreePointCircularArc(*args, **kwargs)#

Inheritance

MakeThreePointCircularArc MakeCircularArc MakeCircularArc AbstractBaseCreate AbstractBaseCreate DependNode DependNode PyNode ProxyUnicode

getCompensatedOutputCurve(jitterVector, replaceOutputs=False)#

Returns a curve output that will work even when the tree arc points are collinear. The curve output will be exposed on the node itself as .compensatedOutputCurve.

This is implemented by swapping-in a straight NURBS curve with matched spans and degree where appropriate.

Note

This method will move the point inputs (point1, point2 and point3) of the node into ‘proxy’ inputs (point1Proxy, point2Proxy and point3Proxy). To preserve the compensation, any subsequent edits should be performed on those proxies instead of the main inputs.

Warning

This method can only be run once per node. An error will be raised if the compensation attributes are already present.

Parameters
  • jitterVector (list, tuple, Vector) – equivalent to directionVector on a two-point circular arc; when the arc is collinear, the middle point will be moved along this vector to prevent Maya Script Editor errors; this will never be seen, since the ‘line’ curve will take over in those cases

  • replaceOutputs/ro (bool) – replace any existing outgoing curve connections; defaults to False

Returns

The compensated curve output.

Return type

NurbsCurve