Logo Euclid

AutoOpenPnt Module

When Euclid is opened this module will be auto-opened. It only contains extension members for type Pnt.

Type extensions

Type extension Description

this.Angle2PiInXYTo

Full Usage: this.Angle2PiInXYTo

Parameters:
Returns: float
Modifiers: inline

Returns the angle in Radians from this point to another point projected in X-Y plane. 0.0 = Xaxis, going Counter-Clockwise till two Pi.

Extended Type: Pnt

o : Pnt
Returns: float

this.Angle360InXYTo

Full Usage: this.Angle360InXYTo

Parameters:
Returns: float
Modifiers: inline

Returns the angle in Degrees from this point to another point projected in X-Y plane. 0.0 = Xaxis, going Counter-Clockwise till 360.

Extended Type: Pnt

o : Pnt
Returns: float

this.AsPt

Full Usage: this.AsPt

Parameters:
    () : unit

Returns: Pt
Modifiers: inline

Returns the 3D point as 2D point.

Extended Type: Pnt

() : unit
Returns: Pt

this.AsVec

Full Usage: this.AsVec

Parameters:
    () : unit

Returns: Vec
Modifiers: inline

Returns the 3D point as 3D vector.

Extended Type: Pnt

() : unit
Returns: Vec

this.ClosestPointOnLine

Full Usage: this.ClosestPointOnLine

Parameters:
Returns: Pnt
Modifiers: inline

Returns the closest point on a finite line segment to test point. The line segment is given as a Line3D `ln`. Fails if the line is degenerate (zero-length).

Extended Type: Pnt

ln : Line3D
Returns: Pnt

this.DirectionDiamondInXYTo

Full Usage: this.DirectionDiamondInXYTo

Parameters:
Returns: float
Modifiers: inline

Returns the Diamond Angle from this point to another point projected in X-Y plane. The diamond angle is always positive and in the range of 0.0 to 4.0 (for 360 Degrees) 0.0 = Xaxis, going Counter-Clockwise. Ignoring Z component. This is the fastest angle computation since it does not use Math.Cos or Math.Sin. It is useful for radial sorting.

Extended Type: Pnt

o : Pnt
Returns: float

this.DistanceFromOrigin

Full Usage: this.DistanceFromOrigin

Parameters:
    () : unit

Returns: float
Modifiers: inline

Returns the distance from Origin (0, 0, 0)

Extended Type: Pnt

() : unit
Returns: float

this.DistanceInXYFromOrigin

Full Usage: this.DistanceInXYFromOrigin

Parameters:
    () : unit

Returns: float
Modifiers: inline

Returns the projected distance from Origin (0, 0, 0). Ignoring the Z component.

Extended Type: Pnt

() : unit
Returns: float

this.DistanceInXYFromOriginSquare

Full Usage: this.DistanceInXYFromOriginSquare

Parameters:
    () : unit

Returns: float
Modifiers: inline

Returns the projected squared distance from Origin (0, 0, 0). Ignoring the Z component.

Extended Type: Pnt

() : unit
Returns: float

this.DistanceTo

Full Usage: this.DistanceTo

Parameters:
Returns: float
Modifiers: inline

Returns the distance between two 3D points.

Extended Type: Pnt

b : Pnt
Returns: float

this.DistanceToLine

Full Usage: this.DistanceToLine

Parameters:
Returns: float
Modifiers: inline

Returns the distance between point and finite line segment. The line segment is given as a Line3D `ln`.

Extended Type: Pnt

ln : Line3D
Returns: float

this.DistanceToXYZ

Full Usage: this.DistanceToXYZ

Parameters:
    x : float
    y : float
    z : float

Returns: float
Modifiers: inline

Returns the distance between a 3D point and given x, y, z coordinates.

Extended Type: Pnt

x : float
y : float
z : float
Returns: float

this.IsAlmostOrigin

Full Usage: this.IsAlmostOrigin

Parameters:
    tol : float

Returns: bool
Modifiers: inline

Returns a boolean indicating whether the absolute value of X, Y and Z is each less than the given tolerance.

Extended Type: Pnt

tol : float
Returns: bool

this.IsInValid

Full Usage: this.IsInValid

Parameters:
    () : unit

Returns: bool
Modifiers: inline

Returns a boolean indicating whether X, Y or Z is NaN or Infinity.

Extended Type: Pnt

() : unit
Returns: bool

this.IsNotOrigin

Full Usage: this.IsNotOrigin

Parameters:
    () : unit

Returns: bool
Modifiers: inline

Returns a boolean indicating if any of X, Y and Z is not exactly 0.0.

Extended Type: Pnt

() : unit
Returns: bool

this.IsOrigin

Full Usage: this.IsOrigin

Parameters:
    () : unit

Returns: bool
Modifiers: inline

Returns a boolean indicating whether X, Y and Z are exactly 0.0.

Extended Type: Pnt

() : unit
Returns: bool

this.IsValid

Full Usage: this.IsValid

Parameters:
    () : unit

Returns: bool
Modifiers: inline

Returns a boolean indicating whether X, Y and Z are valid (not NaN or Infinity).

Extended Type: Pnt

() : unit
Returns: bool

this.SqDistanceFromOrigin

Full Usage: this.SqDistanceFromOrigin

Parameters:
    () : unit

Returns: float
Modifiers: inline

Returns the squared distance from Origin (0, 0, 0)

Extended Type: Pnt

() : unit
Returns: float

this.SqDistanceTo

Full Usage: this.SqDistanceTo

Parameters:
Returns: float
Modifiers: inline

Returns the squared distance between two 3D points. This operation is slightly faster than the distance function, and sufficient for many algorithms like finding closest points.

Extended Type: Pnt

b : Pnt
Returns: float

this.SqDistanceToLine

Full Usage: this.SqDistanceToLine

Parameters:
Returns: float
Modifiers: inline

Returns the squared distance between point and finite line segment. The line segment is given as a Line3D `ln`.

Extended Type: Pnt

ln : Line3D
Returns: float

this.SqDistanceToXYZ

Full Usage: this.SqDistanceToXYZ

Parameters:
    x : float
    y : float
    z : float

Returns: float
Modifiers: inline

Returns the squared distance between a 3D point and given x, y, z coordinates.

Extended Type: Pnt

x : float
y : float
z : float
Returns: float

this.Transform

Full Usage: this.Transform

Parameters:
Returns: Pnt
Modifiers: inline

Multiplies (or applies) a Matrix to a 3D point (with an implicit 1 in the 4th dimension, so that it also works correctly for projections.)

Extended Type: Pnt

m : Matrix
Returns: Pnt

this.TransformRigid

Full Usage: this.TransformRigid

Parameters:
Returns: Pnt
Modifiers: inline

Multiplies (or applies) a RigidMatrix to a 3D point.

Extended Type: Pnt

m : RigidMatrix
Returns: Pnt

this.TransformRigidRotateOnly

Full Usage: this.TransformRigidRotateOnly

Parameters:
Returns: Pnt
Modifiers: inline

Multiplies (or applies) only the 3x3 rotation part of a RigidMatrix to a 3D point.

Extended Type: Pnt

m : RigidMatrix
Returns: Pnt

this.WithDistanceFromOrigin

Full Usage: this.WithDistanceFromOrigin

Parameters:
    l : float

Returns: Pnt
Modifiers: inline

Returns new 3D point with given distance from Origin by scaling it up or down.

Extended Type: Pnt

l : float
Returns: Pnt

this.WithX

Full Usage: this.WithX

Parameters:
    x : float

Returns: Pnt
Modifiers: inline

Returns new 3D point with new X coordinate, Y and Z stay the same.

Extended Type: Pnt

x : float
Returns: Pnt

this.WithY

Full Usage: this.WithY

Parameters:
    y : float

Returns: Pnt
Modifiers: inline

Returns a new 3D point with new Y coordinate, X and Z stay the same.

Extended Type: Pnt

y : float
Returns: Pnt

this.WithZ

Full Usage: this.WithZ

Parameters:
    z : float

Returns: Pnt
Modifiers: inline

Returns a new 3D point with new Z coordinate, X and Y stay the same.

Extended Type: Pnt

z : float
Returns: Pnt

Pnt.add a b

Full Usage: Pnt.add a b

Parameters:
Returns: Pnt
Modifiers: inline

Adds two 3D points and return new 3D point.

Extended Type: Pnt

a : Pnt
b : Pnt
Returns: Pnt

Pnt.addVec v a

Full Usage: Pnt.addVec v a

Parameters:
Returns: Pnt
Modifiers: inline

Add a 3D point to a 3D vector and return new 3D point.

Extended Type: Pnt

v : Vec
a : Pnt
Returns: Pnt

Pnt.angle180Pts (ptPrev, ptThis, ptNext)

Full Usage: Pnt.angle180Pts (ptPrev, ptThis, ptNext)

Parameters:
Returns: float
Modifiers: inline

Returns angle between three 3D Points in Degrees. Range 0.0 to 180

Extended Type: Pnt

ptPrev : Pnt
ptThis : Pnt
ptNext : Pnt
Returns: float

Pnt.angle2PiInXYTo (fromPt, toPt)

Full Usage: Pnt.angle2PiInXYTo (fromPt, toPt)

Parameters:
Returns: float
Modifiers: inline

Returns the angle in Radians from 'fromPt' to 'toPt' projected in X-Y plane. 0.0 = Xaxis, going Counter-Clockwise till two Pi.

Extended Type: Pnt

fromPt : Pnt
toPt : Pnt
Returns: float

Pnt.angle360InXYTo (fromPt, toPt)

Full Usage: Pnt.angle360InXYTo (fromPt, toPt)

Parameters:
Returns: float
Modifiers: inline

Returns the angle in Degrees from 'fromPt' to 'toPt' projected in X-Y plane. 0.0 = Xaxis, going Counter-Clockwise till 360.

Extended Type: Pnt

fromPt : Pnt
toPt : Pnt
Returns: float

Pnt.angleInCorner (prevPt, thisPt, nextPt)

Full Usage: Pnt.angleInCorner (prevPt, thisPt, nextPt)

Parameters:
Returns: float

Returns angle in Degrees at mid point (thisPt).

Extended Type: Pnt

prevPt : Pnt
thisPt : Pnt
nextPt : Pnt
Returns: float

Pnt.anglePiPts (ptPrev, ptThis, ptNext)

Full Usage: Pnt.anglePiPts (ptPrev, ptThis, ptNext)

Parameters:
Returns: float
Modifiers: inline

Returns angle between three 3D Points in Radians. Range 0.0 to Pi.

Extended Type: Pnt

ptPrev : Pnt
ptThis : Pnt
ptNext : Pnt
Returns: float

Pnt.asPt pt

Full Usage: Pnt.asPt pt

Parameters:
Returns: Pt
Modifiers: inline

Returns the 3D point as 2D point.

Extended Type: Pnt

pt : Pnt
Returns: Pt

Pnt.asVec pt

Full Usage: Pnt.asVec pt

Parameters:
Returns: Vec
Modifiers: inline

Returns the 3D point as 3D vector.

Extended Type: Pnt

pt : Pnt
Returns: Vec

Pnt.bisector (ptPrev, ptThis, ptNext)

Full Usage: Pnt.bisector (ptPrev, ptThis, ptNext)

Parameters:
Returns: Vec
Modifiers: inline

Returns a (not unitized) bisector vector in the middle direction from ptThis. Code : (ptPrev-ptThis).Unitized + (ptNext-ptThis).Unitized ptPrev * ptThis * ptNext -> bisector vector

Extended Type: Pnt

ptPrev : Pnt
ptThis : Pnt
ptNext : Pnt
Returns: Vec

Pnt.closestOfTwo pt1 pt2 referencePoint

Full Usage: Pnt.closestOfTwo pt1 pt2 referencePoint

Parameters:
Returns: Pnt

Returns the closer point of the two points to the reference given point. When both points are equally close, the first point is returned.

Extended Type: Pnt

pt1 : Pnt
pt2 : Pnt
referencePoint : Pnt
Returns: Pnt

Pnt.closestPointOnLine ln testPt

Full Usage: Pnt.closestPointOnLine ln testPt

Parameters:
Returns: Pnt
Modifiers: inline

Returns the closest point on a finite line segment to test point. The line segment is given as a Line3D `ln`. Fails if the line is degenerate (zero-length).

Extended Type: Pnt

ln : Line3D
testPt : Pnt
Returns: Pnt

Pnt.createFromMembersXYZ pt

Full Usage: Pnt.createFromMembersXYZ pt

Parameters:
    pt : ^T

Returns: Pnt
Modifiers: inline
Type parameters: ^T, ^a, ^b, ^c (requires (member get_X : ^T -> ^a) and (member get_Y : ^T -> ^b) and (member get_Z : ^T -> ^c) and (static member op_Explicit : ^a -> Microsoft.FSharp.Core.float) and (static member op_Explicit : ^b -> Microsoft.FSharp.Core.float) and (static member op_Explicit : ^c -> Microsoft.FSharp.Core.float))

Accepts any type that has a X, Y and Z (UPPERCASE) member that can be converted to a float. Internally this is not using reflection at runtime but F# Statically Resolved Type Parameters at compile time.

Extended Type: Pnt

pt : ^T
Returns: Pnt

Pnt.createFromMembersxyz pt

Full Usage: Pnt.createFromMembersxyz pt

Parameters:
    pt : ^T

Returns: Pnt
Modifiers: inline
Type parameters: ^T, ^a, ^b, ^c (requires (member get_x : ^T -> ^a) and (member get_y : ^T -> ^b) and (member get_z : ^T -> ^c) and (static member op_Explicit : ^a -> Microsoft.FSharp.Core.float) and (static member op_Explicit : ^b -> Microsoft.FSharp.Core.float) and (static member op_Explicit : ^c -> Microsoft.FSharp.Core.float))

Accepts any type that has a x, y and z (lowercase) member that can be converted to a float. Internally this is not using reflection at runtime but F# Statically Resolved Type Parameters at compile time.

Extended Type: Pnt

pt : ^T
Returns: Pnt

Pnt.createFromPt p

Full Usage: Pnt.createFromPt p

Parameters:
Returns: Pnt
Modifiers: inline

Create 3D point from 2D point. Using 0.0 for Z

Extended Type: Pnt

p : Pt
Returns: Pnt

Pnt.createFromPtWithZ z p

Full Usage: Pnt.createFromPtWithZ z p

Parameters:
    z : float
    p : Pt

Returns: Pnt
Modifiers: inline

Returns a 3D point from Z level and 2D point.

Extended Type: Pnt

z : float
p : Pt
Returns: Pnt

Pnt.createFromUnitVec v

Full Usage: Pnt.createFromUnitVec v

Parameters:
Returns: Pnt
Modifiers: inline

Create 3D point from 3D unit-vector.

Extended Type: Pnt

v : UnitVec
Returns: Pnt

Pnt.createFromVec v

Full Usage: Pnt.createFromVec v

Parameters:
Returns: Pnt
Modifiers: inline

Create 3D point from 3D vector.

Extended Type: Pnt

v : Vec
Returns: Pnt

Pnt.directionDiamondInXYTo (fromPt, toPt)

Full Usage: Pnt.directionDiamondInXYTo (fromPt, toPt)

Parameters:
Returns: float
Modifiers: inline

Returns the Diamond Angle from 'fromPt' to 'toPt' projected in X-Y plane. The diamond angle is always positive and in the range of 0.0 to 4.0 (for 360 Degrees) 0.0 = Xaxis, going Counter-Clockwise. Ignoring Z component. This is the fastest angle computation since it does not use Math.Cos or Math.Sin. It is useful for radial sorting.

Extended Type: Pnt

fromPt : Pnt
toPt : Pnt
Returns: float

Pnt.dist b p

Full Usage: Pnt.dist b p

Parameters:
Returns: float
Modifiers: inline

Returns the distance between two 3D points.

Extended Type: Pnt

b : Pnt
p : Pnt
Returns: float

Pnt.distPt (fromPt, dirPt, distance)

Full Usage: Pnt.distPt (fromPt, dirPt, distance)

Parameters:
    fromPt : Pnt
    dirPt : Pnt
    distance : float

Returns: Pnt
Modifiers: inline

Returns a point that is at a given distance from a 3D point in the direction of another point.

Extended Type: Pnt

fromPt : Pnt
dirPt : Pnt
distance : float
Returns: Pnt

Pnt.distanceFromOrigin pt

Full Usage: Pnt.distanceFromOrigin pt

Parameters:
Returns: float
Modifiers: inline

Returns the distance from Origin (0, 0, 0)

Extended Type: Pnt

pt : Pnt
Returns: float

Pnt.distanceInXY a b

Full Usage: Pnt.distanceInXY a b

Parameters:
Returns: float
Modifiers: inline

Returns the horizontal distance between two 3D points(ignoring their Z Value)

Extended Type: Pnt

a : Pnt
b : Pnt
Returns: float

Pnt.distanceInXYFromOrigin pt

Full Usage: Pnt.distanceInXYFromOrigin pt

Parameters:
Returns: float
Modifiers: inline

Returns the projected distance from Origin (0, 0, 0). Ignoring the Z component.

Extended Type: Pnt

pt : Pnt
Returns: float

Pnt.distanceInXYFromOriginSquare pt

Full Usage: Pnt.distanceInXYFromOriginSquare pt

Parameters:
Returns: float
Modifiers: inline

Returns the projected squared distance from Origin (0, 0, 0). Ignoring the Z component.

Extended Type: Pnt

pt : Pnt
Returns: float

Pnt.distanceTo b p

Full Usage: Pnt.distanceTo b p

Parameters:
Returns: float
Modifiers: inline

Returns the distance between two 3D points.

Extended Type: Pnt

b : Pnt
p : Pnt
Returns: float

Pnt.distanceToLine ln testPt

Full Usage: Pnt.distanceToLine ln testPt

Parameters:
Returns: float
Modifiers: inline

Returns the distance between point and finite line segment. The line segment is given as a Line3D `ln`.

Extended Type: Pnt

ln : Line3D
testPt : Pnt
Returns: float

Pnt.distanceToXYZ (x, y, z) p

Full Usage: Pnt.distanceToXYZ (x, y, z) p

Parameters:
    x : float
    y : float
    z : float
    p : Pnt

Returns: float
Modifiers: inline

Returns the distance between a 3D point and given x, y, z coordinates.

Extended Type: Pnt

x : float
y : float
z : float
p : Pnt
Returns: float

Pnt.divPt (fromPt, toPt, rel)

Full Usage: Pnt.divPt (fromPt, toPt, rel)

Parameters:
    fromPt : Pnt
    toPt : Pnt
    rel : float

Returns: Pnt
Modifiers: inline

Linearly interpolates between two 3D points. e.g. rel=0.5 will return the middle point, rel=1.0 the endPoint, rel=3.0 a point three times the distance beyond the end point. Same as Pnt.lerp.

Extended Type: Pnt

fromPt : Pnt
toPt : Pnt
rel : float
Returns: Pnt

Pnt.equals tol a b

Full Usage: Pnt.equals tol a b

Parameters:
Returns: bool
Modifiers: inline

Checks if two 3D points are equal within tolerance. Use a tolerance of 0.0 to check for an exact match.

Extended Type: Pnt

tol : float
a : Pnt
b : Pnt
Returns: bool

Pnt.extendToZLevel (fromPt, toPt, z)

Full Usage: Pnt.extendToZLevel (fromPt, toPt, z)

Parameters:
    fromPt : Pnt
    toPt : Pnt
    z : float

Returns: Pnt

Returns a point that is at a given Z level, going from a point in the direction of another point.

Extended Type: Pnt

fromPt : Pnt
toPt : Pnt
z : float
Returns: Pnt

Pnt.getX pt

Full Usage: Pnt.getX pt

Parameters:
Returns: float
Modifiers: inline

Gets the X value of 3D point.

Extended Type: Pnt

pt : Pnt
Returns: float

Pnt.getY pt

Full Usage: Pnt.getY pt

Parameters:
Returns: float
Modifiers: inline

Gets the Y value of 3D point.

Extended Type: Pnt

pt : Pnt
Returns: float

Pnt.getZ pt

Full Usage: Pnt.getZ pt

Parameters:
Returns: float
Modifiers: inline

Gets the Z value of 3D point.

Extended Type: Pnt

pt : Pnt
Returns: float

Pnt.isAlmostOrigin tol pt

Full Usage: Pnt.isAlmostOrigin tol pt

Parameters:
    tol : float
    pt : Pnt

Returns: bool
Modifiers: inline

Returns a boolean indicating whether the absolute value of X, Y and Z is each less than the given tolerance.

Extended Type: Pnt

tol : float
pt : Pnt
Returns: bool

Pnt.isInValid pt

Full Usage: Pnt.isInValid pt

Parameters:
Returns: bool
Modifiers: inline

Returns a boolean indicating whether X, Y or Z is NaN or Infinity.

Extended Type: Pnt

pt : Pnt
Returns: bool

Pnt.isNotOrigin pt

Full Usage: Pnt.isNotOrigin pt

Parameters:
Returns: bool
Modifiers: inline

Returns a boolean indicating if any of X, Y and Z is not exactly 0.0.

Extended Type: Pnt

pt : Pnt
Returns: bool

Pnt.isOrigin pt

Full Usage: Pnt.isOrigin pt

Parameters:
Returns: bool
Modifiers: inline

Returns a boolean indicating whether X, Y and Z are exactly 0.0.

Extended Type: Pnt

pt : Pnt
Returns: bool

Pnt.isValid pt

Full Usage: Pnt.isValid pt

Parameters:
Returns: bool
Modifiers: inline

Returns a boolean indicating whether X, Y and Z are valid (not NaN or Infinity).

Extended Type: Pnt

pt : Pnt
Returns: bool

Pnt.lerp (fromPt, toPt, rel)

Full Usage: Pnt.lerp (fromPt, toPt, rel)

Parameters:
    fromPt : Pnt
    toPt : Pnt
    rel : float

Returns: Pnt
Modifiers: inline

Linearly interpolates between two 3D points. e.g. rel=0.5 will return the middle point, rel=1.0 the endPoint, rel=3.0 a point three times the distance beyond the end point. Same as Pnt.divPt.

Extended Type: Pnt

fromPt : Pnt
toPt : Pnt
rel : float
Returns: Pnt

Pnt.midPt a b

Full Usage: Pnt.midPt a b

Parameters:
Returns: Pnt
Modifiers: inline

Returns the midpoint of two 3D points.

Extended Type: Pnt

a : Pnt
b : Pnt
Returns: Pnt

Pnt.move shift pt

Full Usage: Pnt.move shift pt

Parameters:
Returns: Pnt
Modifiers: inline

Move point 3D by vector. Same as Pnt.translate.

Extended Type: Pnt

shift : Vec
pt : Pnt
Returns: Pnt

Pnt.moveX x pt

Full Usage: Pnt.moveX x pt

Parameters:
    x : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Add float to X component of a 3D point and return new 3D point.

Extended Type: Pnt

x : float
pt : Pnt
Returns: Pnt

Pnt.moveY y pt

Full Usage: Pnt.moveY y pt

Parameters:
    y : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Add float to Y component of a 3D point and return new 3D point.

Extended Type: Pnt

y : float
pt : Pnt
Returns: Pnt

Pnt.moveZ z pt

Full Usage: Pnt.moveZ z pt

Parameters:
    z : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Add float to Z component of a 3D point and return new 3D point.

Extended Type: Pnt

z : float
pt : Pnt
Returns: Pnt

Pnt.normalOf3Pts (a, b, c)

Full Usage: Pnt.normalOf3Pts (a, b, c)

Parameters:
Returns: Vec

For three Points describing a plane return a normal. The points 'a', 'b' and 'c' in counter-clockwise order return a normal pointing towards the viewer (e.g. +Z for points in the XY plane), matching NPlane.createFrom3Points and Points3D.normalOfPoints. The result is not unitized. If the returned vector has length zero then the points are in one line.

Extended Type: Pnt

a : Pnt
b : Pnt
c : Pnt
Returns: Vec

Pnt.normalOfTwoPointsInXY (fromPt, toPt)

Full Usage: Pnt.normalOfTwoPointsInXY (fromPt, toPt)

Parameters:
Returns: Vec

Every 3D line has a normal vector in the X-Y plane. Rotated Counter-Clockwise in top view. The result is unitized. If line is vertical then Xaxis is returned. see also : Vec.perpendicularVecInXY.

Extended Type: Pnt

fromPt : Pnt
toPt : Pnt
Returns: Vec

Pnt.notEquals tol a b

Full Usage: Pnt.notEquals tol a b

Parameters:
Returns: bool

Check if two 3D points are not equal within a given tolerance. Use a tolerance of 0.0 to check if the two points are not exactly equal.

Extended Type: Pnt

tol : float
a : Pnt
b : Pnt
Returns: bool

Pnt.projectToXYPlane pt

Full Usage: Pnt.projectToXYPlane pt

Parameters:
Returns: Pnt
Modifiers: inline

Project point to World X-Y plane. Use make2D to convert to 2D point instance.

Extended Type: Pnt

pt : Pnt
Returns: Pnt

Pnt.projectedParameter (fromPt, uv, testPt)

Full Usage: Pnt.projectedParameter (fromPt, uv, testPt)

Parameters:
    fromPt : Pnt - The origin point of the endless line.
    uv : UnitVec - The unit direction vector describing the orientation of the endless line.
    testPt : Pnt - The point to be projected onto the line.

Returns: float The parameter (scalar value) along the unit vector at which the projection of testPt falls on the line.
Modifiers: inline

Projects a test point onto an endless line defined by an origin point and a unit direction vector.

Extended Type: Pnt

fromPt : Pnt

The origin point of the endless line.

uv : UnitVec

The unit direction vector describing the orientation of the endless line.

testPt : Pnt

The point to be projected onto the line.

Returns: float

The parameter (scalar value) along the unit vector at which the projection of testPt falls on the line.

Pnt.projectedParameter (fromPt, v, testPt)

Full Usage: Pnt.projectedParameter (fromPt, v, testPt)

Parameters:
    fromPt : Pnt - The origin point of the endless line.
    v : Vec - The direction vector of the endless line. Does not need to be unitized.
    testPt : Pnt - The point to be projected onto the line.

Returns: float The parameter (scaling factor for the direction vector) at which the projection of testPt falls on the line.
Modifiers: inline

Projects a test point onto an endless line defined by an origin point and a direction vector.

Extended Type: Pnt

fromPt : Pnt

The origin point of the endless line.

v : Vec

The direction vector of the endless line. Does not need to be unitized.

testPt : Pnt

The point to be projected onto the line.

Returns: float

The parameter (scaling factor for the direction vector) at which the projection of testPt falls on the line.

Pnt.projectedParameter (fromPt, toPt, testPt)

Full Usage: Pnt.projectedParameter (fromPt, toPt, testPt)

Parameters:
    fromPt : Pnt - The start point defining the endless line.
    toPt : Pnt - The end point defining the direction of the endless line.
    testPt : Pnt - The point to be projected onto the line.

Returns: float The parameter along the line direction (fromPt to toPt) at which the projection of testPt falls. A value of 0.0 corresponds to fromPt, 1.0 corresponds to toPt.
Modifiers: inline

Projects a test point onto an endless line defined by two points.

Extended Type: Pnt

fromPt : Pnt

The start point defining the endless line.

toPt : Pnt

The end point defining the direction of the endless line.

testPt : Pnt

The point to be projected onto the line.

Returns: float

The parameter along the line direction (fromPt to toPt) at which the projection of testPt falls. A value of 0.0 corresponds to fromPt, 1.0 corresponds to toPt.

Pnt.rotate q pt

Full Usage: Pnt.rotate q pt

Parameters:
Returns: Pnt
Modifiers: inline

Rotate by Quaternion around Origin

Extended Type: Pnt

q : Quaternion
pt : Pnt
Returns: Pnt

Pnt.rotateOnX r p

Full Usage: Pnt.rotateOnX r p

Parameters:
Returns: Pnt

Rotate the 3D point around X-axis, from Y to Z-axis, Counter Clockwise looking from right.

Extended Type: Pnt

r : Rotation2D
p : Pnt
Returns: Pnt

Pnt.rotateOnXDeg angDegree pt

Full Usage: Pnt.rotateOnXDeg angDegree pt

Parameters:
    angDegree : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Rotate the 3D point in Degrees around X-axis, from Y to Z-axis, Counter Clockwise looking from right.

Extended Type: Pnt

angDegree : float
pt : Pnt
Returns: Pnt

Pnt.rotateOnXWithCenter cen r pt

Full Usage: Pnt.rotateOnXWithCenter cen r pt

Parameters:
Returns: Pnt

Rotate the 3D point around a center 3D point and a X aligned axis, from Y to Z-axis, Counter Clockwise looking from right.

Extended Type: Pnt

cen : Pnt
r : Rotation2D
pt : Pnt
Returns: Pnt

Pnt.rotateOnXWithCenterDeg cen angDegree pt

Full Usage: Pnt.rotateOnXWithCenterDeg cen angDegree pt

Parameters:
    cen : Pnt
    angDegree : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Rotate the 3D point in Degrees around center point and a X aligned axis, from Y to Z-axis, Counter Clockwise looking from right.

Extended Type: Pnt

cen : Pnt
angDegree : float
pt : Pnt
Returns: Pnt

Pnt.rotateOnY r p

Full Usage: Pnt.rotateOnY r p

Parameters:
Returns: Pnt

Rotate the 3D point around Y-axis, from Z to X-axis, Counter Clockwise looking from back.

Extended Type: Pnt

r : Rotation2D
p : Pnt
Returns: Pnt

Pnt.rotateOnYDeg angDegree pt

Full Usage: Pnt.rotateOnYDeg angDegree pt

Parameters:
    angDegree : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Rotate the 3D point in Degrees around Y-axis, from Z to X-axis, Counter Clockwise looking from back.

Extended Type: Pnt

angDegree : float
pt : Pnt
Returns: Pnt

Pnt.rotateOnYWithCenter cen r pt

Full Usage: Pnt.rotateOnYWithCenter cen r pt

Parameters:
Returns: Pnt

Rotate the 3D point around a center point and a Y aligned axis, from Z to X-axis, Counter Clockwise looking from back.

Extended Type: Pnt

cen : Pnt
r : Rotation2D
pt : Pnt
Returns: Pnt

Pnt.rotateOnYWithCenterDeg cen angDegree pt

Full Usage: Pnt.rotateOnYWithCenterDeg cen angDegree pt

Parameters:
    cen : Pnt
    angDegree : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Rotate the 3D point in Degrees around center point and a Y aligned axis, from Z to X-axis, Counter Clockwise looking from back.

Extended Type: Pnt

cen : Pnt
angDegree : float
pt : Pnt
Returns: Pnt

Pnt.rotateOnZ r p

Full Usage: Pnt.rotateOnZ r p

Parameters:
Returns: Pnt

Rotate the 3D point around Z-axis, from X to Y-axis, Counter Clockwise looking from top.

Extended Type: Pnt

r : Rotation2D
p : Pnt
Returns: Pnt

Pnt.rotateOnZDeg angDegree pt

Full Usage: Pnt.rotateOnZDeg angDegree pt

Parameters:
    angDegree : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Rotate the 3D point in Degrees around Z-axis, from X to Y-axis, Counter Clockwise looking from top.

Extended Type: Pnt

angDegree : float
pt : Pnt
Returns: Pnt

Pnt.rotateOnZWithCenter cen r pt

Full Usage: Pnt.rotateOnZWithCenter cen r pt

Parameters:
Returns: Pnt

Rotate the 3D point around a center point and a Z aligned axis, from X to Y-axis, Counter Clockwise looking from top.

Extended Type: Pnt

cen : Pnt
r : Rotation2D
pt : Pnt
Returns: Pnt

Pnt.rotateOnZWithCenterDeg cen angDegree pt

Full Usage: Pnt.rotateOnZWithCenterDeg cen angDegree pt

Parameters:
    cen : Pnt
    angDegree : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Rotate the 3D point in Degrees around center point and a Z aligned axis, from X to Y-axis, Counter Clockwise looking from top.

Extended Type: Pnt

cen : Pnt
angDegree : float
pt : Pnt
Returns: Pnt

Pnt.rotateWithCenter cen q pt

Full Usage: Pnt.rotateWithCenter cen q pt

Parameters:
Returns: Pnt
Modifiers: inline

Rotate by Quaternion around given center point.

Extended Type: Pnt

cen : Pnt
q : Quaternion
pt : Pnt
Returns: Pnt

Pnt.scale f pt

Full Usage: Pnt.scale f pt

Parameters:
    f : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Scale a 3D point by a scalar and return new 3D point.

Extended Type: Pnt

f : float
pt : Pnt
Returns: Pnt

Pnt.snap precision pt

Full Usage: Pnt.snap precision pt

Parameters:
    precision : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Snaps the points coordinate to the given precision. e.g. snap 0.1 Pnt(0.123, 0.456, 0) -> Pnt(0.1, 0.5, 0) e.g. snap 10 Pnt(3 , 19 , 0) -> Pnt(0 , 20 , 0) does: (Math.Round (x/precision)) * precision

Extended Type: Pnt

precision : float
pt : Pnt
Returns: Pnt

Pnt.snapIfClose snapDistance snapTo pt

Full Usage: Pnt.snapIfClose snapDistance snapTo pt

Parameters:
    snapDistance : float
    snapTo : Pnt
    pt : Pnt

Returns: Pnt
Modifiers: inline

Snaps to a point if it is within the snapDistance. otherwise returns the original point.

Extended Type: Pnt

snapDistance : float
snapTo : Pnt
pt : Pnt
Returns: Pnt

Pnt.sqDist b p

Full Usage: Pnt.sqDist b p

Parameters:
Returns: float
Modifiers: inline

Returns the squared distance between two 3D points. This operation is slightly faster than the distance function, and sufficient for many algorithms like finding closest points. Same as Pnt.sqDistanceTo.

Extended Type: Pnt

b : Pnt
p : Pnt
Returns: float

Pnt.sqDistanceFromOrigin pt

Full Usage: Pnt.sqDistanceFromOrigin pt

Parameters:
Returns: float
Modifiers: inline

Returns the squared distance from Origin (0, 0, 0)

Extended Type: Pnt

pt : Pnt
Returns: float

Pnt.sqDistanceTo b p

Full Usage: Pnt.sqDistanceTo b p

Parameters:
Returns: float
Modifiers: inline

Returns the squared distance between two 3D points. This operation is slightly faster than the distance function, and sufficient for many algorithms like finding closest points. Same as Pnt.sqDist

Extended Type: Pnt

b : Pnt
p : Pnt
Returns: float

Pnt.sqDistanceToLine ln testPt

Full Usage: Pnt.sqDistanceToLine ln testPt

Parameters:
Returns: float
Modifiers: inline

Returns the squared distance between point and finite line segment. The line segment is given as a Line3D `ln`.

Extended Type: Pnt

ln : Line3D
testPt : Pnt
Returns: float

Pnt.sqDistanceToXYZ (x, y, z) p

Full Usage: Pnt.sqDistanceToXYZ (x, y, z) p

Parameters:
    x : float
    y : float
    z : float
    p : Pnt

Returns: float
Modifiers: inline

Returns the squared distance between a 3D point and given x, y, z coordinates.

Extended Type: Pnt

x : float
y : float
z : float
p : Pnt
Returns: float

Pnt.transform m p

Full Usage: Pnt.transform m p

Parameters:
Returns: Pnt
Modifiers: inline

Multiplies (or applies) a Matrix to a 3D point (with an implicit 1 in the 4th dimension, so that it also works correctly for projections.)

Extended Type: Pnt

m : Matrix
p : Pnt
Returns: Pnt

Pnt.transformRigid m p

Full Usage: Pnt.transformRigid m p

Parameters:
Returns: Pnt
Modifiers: inline

Multiplies (or applies) a RigidMatrix to a 3D point.

Extended Type: Pnt

m : RigidMatrix
p : Pnt
Returns: Pnt

Pnt.transformRigidRotateOnly m p

Full Usage: Pnt.transformRigidRotateOnly m p

Parameters:
Returns: Pnt

Multiplies (or applies) only the 3x3 rotation part of a RigidMatrix to a 3D point.

Extended Type: Pnt

m : RigidMatrix
p : Pnt
Returns: Pnt

Pnt.translate shift pt

Full Usage: Pnt.translate shift pt

Parameters:
Returns: Pnt
Modifiers: inline

Move point 3D by vector. Same as Pnt.move.

Extended Type: Pnt

shift : Vec
pt : Pnt
Returns: Pnt

Pnt.withDistanceFromOrigin l pt

Full Usage: Pnt.withDistanceFromOrigin l pt

Parameters:
    l : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Returns new 3D point with given distance from Origin by scaling it up or down.

Extended Type: Pnt

l : float
pt : Pnt
Returns: Pnt

Pnt.withX x pt

Full Usage: Pnt.withX x pt

Parameters:
    x : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Returns new 3D point with new X coordinate, Y and Z stay the same.

Extended Type: Pnt

x : float
pt : Pnt
Returns: Pnt

Pnt.withY y pt

Full Usage: Pnt.withY y pt

Parameters:
    y : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Returns a new 3D point with new Y coordinate, X and Z stay the same.

Extended Type: Pnt

y : float
pt : Pnt
Returns: Pnt

Pnt.withZ z pt

Full Usage: Pnt.withZ z pt

Parameters:
    z : float
    pt : Pnt

Returns: Pnt
Modifiers: inline

Returns a new 3D point with new Z coordinate, X and Y stay the same.

Extended Type: Pnt

z : float
pt : Pnt
Returns: Pnt

Type something to start searching.