You must specify two curves to intersect. This command either returns the parameter values at which the given pair of curves intersect, or returns a dependency node that provides the intersection information. If you want to find the intersection of the curves in a specific direction you must use BOTH the -useDirectionflag and the directionflag.
Flags:
Long Name / Short Name | Argument Types | Properties | |
---|---|---|---|
caching / cch | bool | ||
constructionHistory / ch | bool | ![]() |
|
|
|||
direction / d | float, float, float | ![]() ![]() |
|
|
|||
directionX / dx | float | ||
directionY / dy | float | ||
directionZ / dz | float | ||
frozen / fzn | bool | ||
nodeState / nds | int | ||
tolerance / tol | float | ![]() ![]() |
|
The tolerance that the intersection is calculated with. For example, given two curves end-to-end, the ends must be within tolerance for an intersection to be returned. Default:0.001 Flag can have multiple arguments, passed either as a tuple or a list. |
|||
useDirection / ud | bool | ![]() ![]() |
|
If true, use direction flag. The input curves are first projected in a specified direction and then intersected. If false, this command will only find true 3D intersections. Default:false |
Derived from mel command maya.cmds.curveIntersect
Example:
import pymel.core as pm
pm.curveIntersect( 'curve1', 'curve2' )
# Returns the parameter values that the curves intersect at.
# eg. if 6 parameter values are returned, the first 3 are
# on curve1 and the last 3 are on curve2.
pm.curveIntersect( 'curve1', 'curve2', useDirection=True, direction=(0, 1, 0) )
# Returns the parameter values that the curves intersect at
# when projected along vector (0, 1, 0). This is useful
# for example when you are viewing the two curves in an orthographic
# view and the curves appear to intersect, even though
# they do not intersect in 3D.
node = pm.curveIntersect('curve1', 'curve2', ch= True)
p1 = pm.getAttr(node + ".parameter1" ) # or use ".p1"
p2 = pm.getAttr(node + ".parameter2" ) # or use ".p2"
# Returns a string which is the name of a new curveIntersect
# dependency node.
# The "getAttr" commands return the parameter values at
# which the curves intersect each other.