# Plane Struct

## Definition

Represents a plane in three-dimensional space.

``public value class Plane : IEquatable<System::Numerics::Plane>``
``public struct Plane : IEquatable<System.Numerics.Plane>``
``type Plane = struct``
``````Public Structure Plane
Implements IEquatable(Of Plane)``````
Inheritance
Plane
Implements

## Remarks

For matrix transformations, the Vector2, Vector3, and Vector4 instances are represented as rows: a vector v is transformed by a matrix M with vM multiplication.

## Constructors

 Creates a Plane object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. Creates a Plane object from a specified normal and the distance along the normal from the origin. Creates a Plane object from a specified four-dimensional vector.

## Fields

 The distance of the plane along its normal from the origin. The normal vector of the plane.

## Methods

 Creates a Plane object that contains three specified points. Calculates the dot product of a plane and a 4-dimensional vector. Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance (D) value of the plane. Returns the dot product of a specified three-dimensional vector and the Normal vector of this plane. Returns a value that indicates whether this instance and a specified object are equal. Returns a value that indicates whether this instance and another plane object are equal. Returns the hash code for this instance. Creates a new Plane object whose normal vector is the source plane's normal vector normalized. Returns the string representation of this plane object. Transforms a normalized plane by a 4x4 matrix. Transforms a normalized plane by a Quaternion rotation.

## Operators

 Returns a value that indicates whether two planes are equal. Returns a value that indicates whether two planes are not equal.