## Types in MathNet.Spatial.Euclidean

Type Point3D

Namespace MathNet.Spatial.Euclidean

Parent ValueType

Interfaces IXmlSerializable, IEquatable<Point3D>, IFormattable

Represents a point in 3 dimensional space

### Public Constructors

#### Point3D(double x, double y, double z)

Initializes a new instance of the Point3D struct.

The x component.

The y component.

The z component.

### Public Static Functions

#### Point3DCentroid(Point3D[] points)

Returns the centroid of an arbitrary collection of points

a list of points

##### Return
###### `Point3D`

The centroid of the points

#### Point3DCentroid(IEnumerable<Point3D> points)

Returns the centroid of an arbitrary collection of points

a list of points

##### Return
###### `Point3D`

The centroid of the points

#### Point3DIntersectionOf(Plane plane1, Plane plane2, Plane plane3)

Returns the point at which three planes intersect

The first plane

The second plane

The third plane

##### Return
###### `Point3D`

The point of intersection

#### Point3DIntersectionOf(Plane plane, Ray3D ray)

Returns the point of intersection between a plane and a ray
##### Parameters
###### `Plane` plane

A geometric plane

a ray

##### Return
###### `Point3D`

The point of intersection

#### Point3DMidPoint(Point3D p1, Point3D p2)

Returns the midpoint of two points

The first point

The second point

##### Return
###### `Point3D`

The midpoint of the points

#### Point3DOfVector(Vector<double> vector)

Create a new Point3D from a Math.NET Numerics vector of length 3.
##### Parameters
###### `Vector<double>` vector

A vector with length 2 to populate the created instance with.

#### Point3DParse(string value, IFormatProvider formatProvider)

Attempts to convert a string of the form x,y,z into a point
##### Parameters
###### `string` value

The string to be converted

##### Return
###### `Point3D`

A point at the coordinates specified

Creates an Point3D from an XmlReader.

### Public Methods

#### doubleDistanceTo(Point3D p)

Finds the straight line distance to another point

The other point

##### Return
###### `double`

a distance measure

#### boolEquals(Point3D other, double tolerance)

Returns a value to indicate if a pair of points are equal
##### Parameters
###### `Point3D` other

The point to compare against.

###### `double` tolerance

A tolerance (epsilon) to adjust for floating point error

##### Return
###### `bool`

True if the points are equal; otherwise false

#### TypeGetType()

Returns the mirror point of this point across a plane

A plane

##### Return
###### `Point3D`

The mirrored point

#### Point3DProjectOn(Plane plane)

Projects a point onto a plane

a plane

##### Return
###### `Point3D`

The projected point

Rotates the point about a given vector
##### Parameters

A vector

###### `Angle` angle

The angle to rotate

##### Return
###### `Point3D`

The rotated point

Rotates the point about a given vector
##### Parameters

A vector

###### `Angle` angle

The angle to rotate

##### Return
###### `Point3D`

The rotated point

#### stringToString(IFormatProvider provider)

Returns a string representation of this instance using the provided IFormatProvider
##### Return
###### `string`

The string representation of this instance.

#### Vector<double>ToVector()

Convert to a Math.NET Numerics dense vector of length 3.
##### Return
###### `Vector<double>`

A Math.Net Numerics vector

#### Vector3DToVector3D()

Converts this point into a vector from the origin
##### Return
###### `Vector3D`

A vector equivalent to this point

#### Point3DTransformBy(Matrix<double> m)

Applies a transform matrix to the point
##### Parameters
###### `Matrix<double>` m

A transform matrix

A new point

#### Point3DTransformBy(CoordinateSystem cs)

Applies a transform coordinate system to the point
##### Parameters
###### `CoordinateSystem` cs

A coordinate system

A new 3D point

#### Vector3DVectorTo(Point3D p)

Gets a vector from this point to another point
##### Parameters
###### `Point3D` p

The point to which the vector should go

##### Return
###### `Vector3D`

A vector pointing to the other point.

### Public Properties

#### Point3DNaN get;

Gets a point where all values are NAN

#### Point3DOrigin get;

Gets a point at the origin

The x component.

The y component.

The z component.