This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
Class for objects that describe planes with a right-hand orientation. Data are stored in parametrized form, i.e. as one point and two vectors. The third base vector gives the orientated normal vector.
More...
|
VectorD | CalculateGradient () |
| public support method to calculate the x,y - gradient of the given plane
|
|
override object | Clone () |
| Clones the current object.
|
|
override bool | Equals (object otherObject, EqualityIntent equalityIntent) |
| Determines whether the specified Object is equal to this instance.
|
|
void | ImplicitRepresentation (out double A, out double B, out double C, out double D, bool hessNormalForm=false) |
| Gives the implicite representation of the plane Ax + By + Cz = D. As the normal vector (BaseVectors.ZAxis) is already normalized (|BaseVectors.ZAxis| = 1), the resulting parameters are equal to those of HESS's normal form, except for the sign.
|
|
| OrientedPlane (CartesianCoordinateSystem coordinateSystemToGetPlaneFrom, CoordinatePlane plane) |
| Constructor that gets a CartesianCoordinateSystem from which one plane is extracted.
|
|
| OrientedPlane (CoordinateSystemBaseVectors baseVectors, Position pos) |
| Constructor with CoordinateSystemBaseVectors and a separate Position which define the plane.
|
|
| OrientedPlane (OrientedPlane orientedPLane) |
| Copy constructor.
|
|
| OrientedPlane (Position point1, Position point2, Position point3) |
| Construct an OrientedPlane from three non-collinear points defined in same (reference) coordinate system The reference coordinate system is defined via point1.ReferenceCoordinateSystem and point2.ReferenceCoordinateSystem and point3.ReferenceCoordinateSystem, respectively. The first point will be the origin.
|
|
| OrientedPlane (Position pointInPlane, Vector3D normalVector) |
| Constructor to create the plane from one point and the normal vector of the plane. IMPORTANT: The parameters DO NOT define certain directions of the base vectors! These will be somewhat arbitrary. So, please use this constructor only if the zeta-Rotation of this plane doesn't matter!
|
|
| OrientedPlane (Position pointInPlane, Vector3D xAxis, Vector3D yAxis) |
| Constructor to create the plane from one point and two vectors in the plane.
|
|
void | SetPositioningReference (IProvidesPositioningReferences referenceProvider, string key) |
| Method to set the PositioningReferenceProvider and the key for the coordinate system that serves as positioning reference.
|
|
|
CoordinateSystemBaseVectors | BaseVectors [get, set] |
| The two vectors that span the plane (XAxis and YAxis), and the orientated normal vector (ZAxis).
|
|
CartesianCoordinateSystem | GetPositioningReference [get] |
| Property to get the coordinate system that serves as reference for this object.
|
|
bool | IsDefinedAbsolutely [get] |
| Are the plane position and orientation defined absolutely?
|
|
Vector3D | NormalVector [get] |
| Get the normalized normal vector of the plane.
|
|
CartesianCoordinateSystem | PlaneAsCoordinateSystem [get] |
| Get this plane as a coordinate system (x-y-plane, with normal vector z)
|
|
Position | Position [get, set] |
| One point that lies in the plane.
|
|
This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
Class for objects that describe planes with a right-hand orientation. Data are stored in parametrized form, i.e. as one point and two vectors. The third base vector gives the orientated normal vector.
◆ OrientedPlane() [1/6]
Constructor with CoordinateSystemBaseVectors and a separate Position which define the plane.
- Parameters
-
baseVectors | The two vectors that span the plane (XAxis and YAxis), and the orientated normal vector (ZAxis). |
pos | One point that lies in the plane. |
◆ OrientedPlane() [2/6]
Constructor that gets a CartesianCoordinateSystem from which one plane is extracted.
- Parameters
-
coordinateSystemToGetPlaneFrom | CartesianCoordinateSystem to extract the plane from. |
plane | Which plane shall be extracted? |
◆ OrientedPlane() [3/6]
Construct an OrientedPlane from three non-collinear points defined in same (reference) coordinate system The reference coordinate system is defined via point1.ReferenceCoordinateSystem and point2.ReferenceCoordinateSystem and point3.ReferenceCoordinateSystem, respectively. The first point will be the origin.
- Parameters
-
point1 | Point #1 |
point2 | Point #2 |
point3 | Point #2 |
◆ OrientedPlane() [4/6]
Copy constructor.
- Parameters
-
orientedPLane | Oriented plane to be copied. |
◆ OrientedPlane() [5/6]
Constructor to create the plane from one point and two vectors in the plane.
- Parameters
-
pointInPlane | The point in the plane. |
xAxis | x-Axis of the coordinate system whose x-y-plane is the OrientedPlane. |
yAxis | y-Axis of the coordinate system whose x-y-plane is the OrientedPlane. |
◆ OrientedPlane() [6/6]
Constructor to create the plane from one point and the normal vector of the plane. IMPORTANT: The parameters DO NOT define certain directions of the base vectors! These will be somewhat arbitrary. So, please use this constructor only if the zeta-Rotation of this plane doesn't matter!
- Parameters
-
pointInPlane | The point in the plane. |
normalVector | The normal vector of the plane, relative to the reference CS of the parameter pointInPlane. |
◆ CalculateGradient()
public support method to calculate the x,y - gradient of the given plane
- Returns
- the x,y - gradient
◆ Clone()
override object Clone |
( |
| ) |
|
Clones the current object.
- Returns
- Deep copy of this object.
◆ Equals()
override bool Equals |
( |
object |
otherObject, |
|
|
EqualityIntent |
equalityIntent |
|
) |
| |
Determines whether the specified Object is equal to this instance.
- Parameters
-
otherObject | The Object to compare with this instance. |
equalityIntent | Defines what kind of equality you want to check when comparing two objects, for example all values or just physical equality. |
- Returns
true
if the specified Object is equal to this instance; otherwise, false
.
◆ ImplicitRepresentation()
void ImplicitRepresentation |
( |
out double |
A, |
|
|
out double |
B, |
|
|
out double |
C, |
|
|
out double |
D, |
|
|
bool |
hessNormalForm = false |
|
) |
| |
Gives the implicite representation of the plane Ax + By + Cz = D. As the normal vector (BaseVectors.ZAxis) is already normalized (|BaseVectors.ZAxis| = 1), the resulting parameters are equal to those of HESS's normal form, except for the sign.
- Parameters
-
A | Returns the parameter A. |
B | Returns the parameter B. |
C | Returns the parameter C. |
D | Returns the parameter D. |
hessNormalForm | If set to true , the signs are corrected so that the parameters give the HESS's normal form. Optional parameter, false by default. |
◆ SetPositioningReference()
Method to set the PositioningReferenceProvider and the key for the coordinate system that serves as positioning reference.
- Parameters
-
referenceProvider | Object which provides the coordinate system that serves as reference for this position. |
key | Key for the coordinate system (contained by PositioningReferenceProvider) which shall serve as reference for this position |