You are here: Home » Public » Software » Daz Studio » v4.x » Reference Guide » Scripting » API Reference » Object Index » DzLine3

DAZ Script | |
---|---|

DzVec3 | getDirection () |

DzVec3 | getPoint ( Number t ) |

Number | length ( Number t=1.0 ) |

Object | linesIntersect ( DzLine3 line, Number tolerance=0.0 ) |

Object | minDistanceFromLine ( DzLine3 line ) |

Object | minDistanceFromLineSquared ( DzLine3 line ) |

Object | minDistanceFromPoint ( DzVec3 pnt, Boolean clampEnds=false ) |

Object | minDistanceFromPointSquared ( DzVec3 pnt, Boolean clampEnds=false ) |

Object | minDistanceFromRay ( DzLine3 ray ) |

Object | minDistanceFromRaySquared ( DzLine3 ray ) |

void | negate () |

Object | planeIntersect ( DzVec3 planePoint, DzVec3 planeNormal ) |

Object | segmentsIntersect ( DzLine3 line, Number tolerance=0.0 ) |

void | setLength ( Number length ) |

void | swapEnds () |

String | toString () |

**TODO:**
Add detailed description.

Holds the line's ending point in three dimensional space.

Holds the line's starting point in three dimensional space.

**DzLine3**()

Default Constructor. Creates an uninitialized line.

Creates a quaternion by parsing a string.

**Parameter(s):**

*line*- A string representation of the line in the form "[[ originX, originY, originZ ],[ endX, endY, endZ ]]"

**DzLine3**( *DzLine3* line )

Copy Constructor.

**DzLine3**( DzVec3 origin, DzVec3 end )

Parameterized Constructor.

**Parameter(s):**

*origin*- The origin point of the line.*end*- The end point of the line.

DzVec3 : **getDirection**()

**Return Value:**

- The vector direction of this line (end - origin).

**Since:**

- 4.11.0.216

**Return Value:**

- The point with the given parametric distance along the line.

**Since:**

- 4.11.0.216

Number : **length**( Number t=1.0 )

**Return Value:**

- The length of the line given a parametric distance along the line.

**See Also:**

**Since:**

- 4.11.0.216

Object : **linesIntersect**( *DzLine3* line, Number tolerance=0.0 )

Tests the intersection of two lines. This line and the given line are assumed to be infinitely long in both directions (i.e. the intersection can be outside the origin-end segment of either line).

**Parameter(s):**

*line*- The line to test intersection with.*tolerance*- If not zero, specifies the maximum distance between lines that will be counted as an intersection.

**Return Value:**

- An object where the “intersects” property represents whether or not this line intersects with the given line, and the “intersection” property represents the intersection point if the lines intersect.

**Since:**

- 4.11.0.216

Object : **minDistanceFromLine**( *DzLine3* line )

**Parameter(s):**

*line*- The line to calculate min distance from.

**Return Value:**

- An object where the “distance” property represents the minimum distance between this line and another line, the “s” property represents the parametric distance along this line, and the “t” property represents the parametric distance along the given line.

**Since:**

- 4.11.0.216

Object : **minDistanceFromLineSquared**( *DzLine3* line )

**Parameter(s):**

*line*- The line to calculate min distance from.

**Return Value:**

- An object where the “distance” property represents the minimum distance squared between this line and another line, the “s” property represents the parametric distance along this line, and the “t” property represents the parametric distance along the given line.

**Since:**

- 4.11.0.216

Object : **minDistanceFromPoint**( DzVec3 pnt, Boolean clampEnds=false )

**Parameter(s):**

*pnt*- The point to calculate the min distance from.*clampEnds*- If`true`

, the parametric distance is clamped to the [0-1] range and the nearest point to the line segment is returned rather than the nearest distance to the infinite line formed by the two end points of the segment.

**Return Value:**

- An object where the “distance” property represents the minimum distance between this line and a point, and the “s” property represents the parametric distance along the line to the minimum perpendicular distance point.

**Since:**

- 4.11.0.216

Object : **minDistanceFromPointSquared**( DzVec3 pnt, Boolean clampEnds=false )

**Parameter(s):**

*pnt*- The point to calculate the min distance from.*clampEnds*- If`true`

, the parametric distance is clamped to the [0-1] range and the nearest point to the line segment is returned rather than the nearest distance to the infinite line formed by the two end points of the segment.

**Return Value:**

- An object where the “distance” property represents the minimum distance squared between this line and a point, and the “s” property represents the parametric distance along the line to the minimum perpendicular distance point.

**Since:**

- 4.11.0.216

Object : **minDistanceFromRay**( *DzLine3* ray )

**Parameter(s):**

*ray*- The ray to calculate min distance from.

**Return Value:**

- An object where the “distance” property represents the minimum distance between this line and a ray, the “seg_t” property represents the parametric distance along this line, and the “ray_t” property represents the parametric distance along the given ray.

**Since:**

- 4.11.0.216

Object : **minDistanceFromRaySquared**( *DzLine3* ray )

**Parameter(s):**

*ray*- The ray to calculate min distance from.

**Return Value:**

- An object where the “distance” property represents the minimum distance squared between this line and a ray, the “seg_t” property represents the parametric distance along this line, and the “ray_t” property represents the parametric distance along the given ray.

**Since:**

- 4.11.0.216

void : **negate**()

Reverses the direction of the line by mirroring the endpoint.

**Since:**

- 4.11.0.216

Object : **planeIntersect**( DzVec3 planePoint, DzVec3 planeNormal )

Calculates the intersection of this line and the plane specified. The plane is defined by a point on the plane and the normal to the plane.

**Parameter(s):**

*planePoint*- A point on the plane (to define the plane).*planeNormal*- The normal to the plane (to define the plane).

**Return Value:**

- An object where the “intersects” property represents whether or not this line intersects with the given plane, the “t” property represents the parametric distance along this line to the intersection point (if there is one), and the “intersection” property represents the intersection point if the line and plane intersect.

**Since:**

- 4.11.0.216

Object : **segmentsIntersect**( *DzLine3* line, Number tolerance=0.0 )

Tests the intersection of two line segments.

**Parameter(s):**

*line*- The line to test intersection with.*tolerance*- If not zero, specifies the maximum distance between lines that will be counted as an intersection.

**Return Value:**

- An object where the “intersects” property represents whether or not this line segment intersects with the given line segment, and the “intersection” property represents the intersection point if the lines intersect.

**Since:**

- 4.11.0.216

void : **setLength**( Number length )

Sets the line to have the length given by setting the endpoint relative to the current origin.

**See Also:**

- length()

**Since:**

- 4.11.0.216

void : **swapEnds**()

Swaps the origin for the endpoint.

**Since:**

- 4.11.0.216

**Return Value:**

- A string representation of this line in the form "[[ originX, originY, originZ ],[ endX, endY, endZ ]]".

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution 3.0 Unported