Point3d Structure 
Namespace: Rhino.Geometry
The Point3d type exposes the following members.
Name  Description  

Point3d(Point3d) 
Initializes a new point by copying coordinates from another point.
 
Point3d(Point3f) 
Initializes a new point by copying coordinates from a singleprecision point.
 
Point3d(Point4d) 
Initializes a new point by copying coordinates from a fourdimensional point.
The first three coordinates are divided by the last one.
If the W (fourth) dimension of the input point is zero, then it will be just discarded.
 
Point3d(Vector3d) 
Initializes a new point by copying coordinates from the components of a vector.
 
Point3d(Double, Double, Double) 
Initializes a new point by defining the X, Y and Z coordinates.

Name  Description  

IsValid 
Each coordinate of the point must pass the IsValidDouble(Double) test.
 
Item 
Gets or sets an indexed coordinate of this point.
 
MaximumCoordinate 
Gets the largest (both positive and negative) valid coordinate in this point,
or RhinoMath.UnsetValue if no coordinate is valid.
 
MinimumCoordinate 
Gets the smallest (both positive and negative) coordinate value in this point.
 
Origin 
Gets the value of a point at location 0,0,0.
 
Unset 
Gets the value of a point at location RhinoMath.UnsetValue,RhinoMath.UnsetValue,RhinoMath.UnsetValue.
 
X 
Gets or sets the X (first) coordinate of this point.
 
Y 
Gets or sets the Y (second) coordinate of this point.
 
Z 
Gets or sets the Z (third) coordinate of this point.

Name  Description  

Add(Point3d, Point3d) 
Sums two Point3d instances.
(Provided for languages that do not support operator overloading. You can use the + operator otherwise)  
Add(Point3d, Vector3d) 
Sums up a point and a vector, and returns a new point.
(Provided for languages that do not support operator overloading. You can use the + operator otherwise)  
Add(Point3d, Vector3f) 
Sums up a point and a vector, and returns a new point.
(Provided for languages that do not support operator overloading. You can use the + operator otherwise)  
Add(Vector3d, Point3d) 
Sums up a point and a vector, and returns a new point.
(Provided for languages that do not support operator overloading. You can use the + operator otherwise)  
ArePointsCoplanar 
Determines whether a set of points is coplanar within a given tolerance.
 
CompareTo 
Compares this Point3d with another Point3d.
Component evaluation priority is first X, then Y, then Z.  
CullDuplicates 
Removes duplicates in the supplied set of points.
 
DistanceTo 
Computes the distance between two points.
 
DistanceToSquared 
Computes the square of the distance between two points.
This method is usually largely faster than DistanceTo().  
Divide 
Divides a Point3d by a number.
(Provided for languages that do not support operator overloading. You can use the / operator otherwise)  
EpsilonEquals 
Check that all values in other are within epsilon of the values in this
 
Equals(Object) 
Determines whether the specified Object is a Point3d and has the same values as the present point.
(Overrides ValueTypeEquals(Object).)  
Equals(Point3d) 
Determines whether the specified Point3d has the same values as the present point.
 
FromPoint3f 
Converts a singleprecision point in a doubleprecision point.
 
GetHashCode 
Computes a hash code for the present point.
(Overrides ValueTypeGetHashCode.)  
GetType  (Inherited from Object.)  
Interpolate 
Interpolate between two points.
 
Multiply(Double, Point3d) 
Multiplies a Point3d by a number.
(Provided for languages that do not support operator overloading. You can use the * operator otherwise)  
Multiply(Point3d, Double) 
Multiplies a Point3d by a number.
(Provided for languages that do not support operator overloading. You can use the * operator otherwise)  
SortAndCullPointList 
Orders a set of points so they will be connected in a "reasonable polyline" order.
Also, removes points from the list if their common distance exceeds a specified threshold.  
Subtract(Point3d, Point3d) 
Subtracts a point from another point.
(Provided for languages that do not support operator overloading. You can use the  operator otherwise)  
Subtract(Point3d, Vector3d) 
Subtracts a vector from a point.
(Provided for languages that do not support operator overloading. You can use the  operator otherwise)  
ToString 
Constructs the string representation for the current point.
(Overrides ValueTypeToString.)  
Transform 
Transforms the present point in place. The transformation matrix acts on the left of the point. i.e.,
result = transformation*point 
Name  Description  

Addition(Point3d, Point3d) 
Sums two Point3d instances.
 
Addition(Point3d, Vector3d) 
Sums up a point and a vector, and returns a new point.
 
Addition(Point3d, Vector3f) 
Sums up a point and a vector, and returns a new point.
 
Addition(Vector3d, Point3d) 
Sums up a point and a vector, and returns a new point.
 
Division 
Divides a Point3d by a number.
 
Equality 
Determines whether two Point3d have equal values.
 
(Point3d to Vector3d) 
Converts a point in a vector, needing casting.
 
(Vector3d to Point3d) 
Converts a vector in a point, needing casting.
 
GreaterThan 
Determines whether the first specified point comes after (has superior sorting value than) the second point.
Coordinates evaluation priority is first X, then Y, then Z.  
GreaterThanOrEqual 
Determines whether the first specified point comes after
(has superior sorting value than) the second point, or it is equal to it.
Coordinates evaluation priority is first X, then Y, then Z.  
(Point3d to ControlPoint) 
Converts a point in a control point, without needing casting.
 
(Point3f to Point3d) 
Converts a singleprecision point in a doubleprecision point, without needing casting.
 
Inequality 
Determines whether two Point3d have different values.
 
LessThan 
Determines whether the first specified point comes before (has inferior sorting value than) the second point.
Coordinates evaluation priority is first X, then Y, then Z.  
LessThanOrEqual 
Determines whether the first specified point comes before
(has inferior sorting value than) the second point, or it is equal to it.
Coordinates evaluation priority is first X, then Y, then Z.  
Multiply(Double, Point3d) 
Multiplies a Point3d by a number.
 
Multiply(Point3d, Double) 
Multiplies a Point3d by a number.
 
Subtraction(Point3d, Point3d) 
Subtracts a point from another point.
 
Subtraction(Point3d, Vector3d) 
Subtracts a vector from a point.
 
UnaryNegation 
Computes the additive inverse of all coordinates in the point, and returns the new point.
