eVision Python API
Loading...
Searching...
No Matches
eVision.Easy3D.E3DPlane Class Reference

Represents a 3D plane. More...

Public Member Functions

None __init__ (self)
 Creates an eVision.Easy3D.E3DPlane object.
None __init__ (self, eVision.Easy3D.E3DPoint normal, float signedDistance)
 Creates an eVision.Easy3D.E3DPlane object.
None __init__ (self, eVision.Easy3D.E3DPoint point1, eVision.Easy3D.E3DPoint point2, eVision.Easy3D.E3DPoint point3)
 Creates an eVision.Easy3D.E3DPlane object.
None __init__ (self, eVision.Easy3D.E3DPlane other)
 Creates an eVision.Easy3D.E3DPlane object.
None Define (self, eVision.Easy3D.E3DPoint normal, float signedDistance)
 (re)Defines the plane parameters:
None Define (self, eVision.Easy3D.E3DPoint point1, eVision.Easy3D.E3DPoint point2, eVision.Easy3D.E3DPoint point3)
 (re)Defines the plane parameters:
float DistanceTo (self, eVision.Easy3D.E3DPoint point)
 Returns the signed distance between the plane and a given point.
eVision.Easy3D.E3DPoint ProjectPoint (self, eVision.Easy3D.E3DPoint point)
 Returns the position of the given point projected on the plane.
eVision.Easy3D.E3DPlane Transform (self, eVision.Easy3D.E3DTransformMatrix matrix)
 Transforms the 3D plane with the given transformation matrix.
None Load (self, str path)
 Loads a eVision.Easy3D.E3DPlane.
None Load (self, eVision.ESerializer|None serializer)
 Loads a eVision.Easy3D.E3DPlane.
None Save (self, str path)
 Saves a eVision.Easy3D.E3DPlane.
None Save (self, eVision.ESerializer|None serializer)
 Saves a eVision.Easy3D.E3DPlane.
None FlipIfNegativeZ (self)
 Flips the orientation of the ZMap (normal = -normal) if the normal has a negative Z coordinate.
None OrientNormal (self, eVision.Easy3D.E3DPlaneNormalOrientation orientation)
 Orients the normal of the ZMap on one of the axes, see eVision.Easy3D.E3DPlaneNormalOrientation.
float AngleWithPlane (self, eVision.Easy3D.E3DPlane other)
 Returns the angle (in the first quadrant) between the normals of this plane and the one passed in argument.
bool IntersectionWithTwoPlanes (self, eVision.Easy3D.E3DPlane plane1, eVision.Easy3D.E3DPlane plane2, eVision.Easy3D.E3DPoint intersection)
 Compute the intersection between this plane and the two given as argument.
eVision.Easy3D.E3DTransformMatrix GetTransformationTo (self, eVision.Easy3D.E3DPlane destination)
 Return the transformation that moves the plane to the given destination plane.
eVision.Easy3D.E3DPoint Normal (self)
 Gets/Sets the normal vector of the plane.
 Normal (self, eVision.Easy3D.E3DPoint value)
 Gets/Sets the normal vector of the plane.
float SignedDistanceFromOrigin (self)
 Gets/Sets the signed distance between the origin and the plane.
 SignedDistanceFromOrigin (self, float value)
 Gets/Sets the signed distance between the origin and the plane.

Static Public Member Functions

eVision.Easy3D.E3DPlane XPlane ()
 The X=0 plane.
eVision.Easy3D.E3DPlane YPlane ()
 The Y=0 plane.
eVision.Easy3D.E3DPlane ZPlane ()
 The Z=0 plane.

Detailed Description

Represents a 3D plane.

The equation of the plane is "n_vect . (x,y,z) = signedDistance" where "n_vect" is the normal vector and "signedDistance" is the signed distance from the origin to the plane.

The signed distance is positive when the vector binding the origin to the closest point on the plane has the same direction as "n_vect" and is negative when this vector has the opposite direction as "n_vect".

Remarks:

License(s): Easy3D

Constructor & Destructor Documentation

◆ __init__() [1/4]

None eVision.Easy3D.E3DPlane.__init__ ( self)

Creates an eVision.Easy3D.E3DPlane object.

It is possible to initialize it by specifying its normal and signed distance from the origin. In that case, it exits with an exception if the norm of the normal is null. It is also possible to initialize it by specifying 3 points of the plane. In that case, it exits with an exception if the 3 points are aligned.

Remarks:

When we define a plane by specifying 3 points, the normal vector is always oriented towards the positive Z axis, see eVision.Easy3D.E3DPlaneNormalOrientation.PosZ.

◆ __init__() [2/4]

None eVision.Easy3D.E3DPlane.__init__ ( self,
eVision.Easy3D.E3DPoint normal,
float signedDistance )

Creates an eVision.Easy3D.E3DPlane object.

It is possible to initialize it by specifying its normal and signed distance from the origin. In that case, it exits with an exception if the norm of the normal is null. It is also possible to initialize it by specifying 3 points of the plane. In that case, it exits with an exception if the 3 points are aligned.

Remarks:

When we define a plane by specifying 3 points, the normal vector is always oriented towards the positive Z axis, see eVision.Easy3D.E3DPlaneNormalOrientation.PosZ.

Parameters
normalThe normal vector. May not be null.
signedDistanceThe signed distance from the origin to the plane.

◆ __init__() [3/4]

None eVision.Easy3D.E3DPlane.__init__ ( self,
eVision.Easy3D.E3DPoint point1,
eVision.Easy3D.E3DPoint point2,
eVision.Easy3D.E3DPoint point3 )

Creates an eVision.Easy3D.E3DPlane object.

It is possible to initialize it by specifying its normal and signed distance from the origin. In that case, it exits with an exception if the norm of the normal is null. It is also possible to initialize it by specifying 3 points of the plane. In that case, it exits with an exception if the 3 points are aligned.

Remarks:

When we define a plane by specifying 3 points, the normal vector is always oriented towards the positive Z axis, see eVision.Easy3D.E3DPlaneNormalOrientation.PosZ.

Parameters
point1First point
point2Second point
point3Third point

◆ __init__() [4/4]

None eVision.Easy3D.E3DPlane.__init__ ( self,
eVision.Easy3D.E3DPlane other )

Creates an eVision.Easy3D.E3DPlane object.

It is possible to initialize it by specifying its normal and signed distance from the origin. In that case, it exits with an exception if the norm of the normal is null. It is also possible to initialize it by specifying 3 points of the plane. In that case, it exits with an exception if the 3 points are aligned.

Remarks:

When we define a plane by specifying 3 points, the normal vector is always oriented towards the positive Z axis, see eVision.Easy3D.E3DPlaneNormalOrientation.PosZ.

Parameters
otherReference to the plane used for the initialization.

Member Function Documentation

◆ AngleWithPlane()

float eVision.Easy3D.E3DPlane.AngleWithPlane ( self,
eVision.Easy3D.E3DPlane other )

Returns the angle (in the first quadrant) between the normals of this plane and the one passed in argument.

Remarks:

This function does not take the orientation of the normals into account, i.e. (0, 0, 1) and (0, 0, -1) will give the same angle

Parameters
otherThe plane with respect to which we compute our angle

◆ Define() [1/2]

None eVision.Easy3D.E3DPlane.Define ( self,
eVision.Easy3D.E3DPoint normal,
float signedDistance )

(re)Defines the plane parameters:

It is possible to use the normal and the signed distance of the plane. In that case, it exits with an exception if the normal vector is the null vector. It is also possible to use 3 points of the plane. In that case, it exits with an exception if the 3 points are aligned.

Remarks:

When we define a plane by specifying 3 points, the normal vector always points toward the positive Z.

Parameters
normalThe normal vector, represented by an eVision.Easy3D.E3DPoint.
signedDistanceThe signed distance between the origin and the plane.

◆ Define() [2/2]

None eVision.Easy3D.E3DPlane.Define ( self,
eVision.Easy3D.E3DPoint point1,
eVision.Easy3D.E3DPoint point2,
eVision.Easy3D.E3DPoint point3 )

(re)Defines the plane parameters:

It is possible to use the normal and the signed distance of the plane. In that case, it exits with an exception if the normal vector is the null vector. It is also possible to use 3 points of the plane. In that case, it exits with an exception if the 3 points are aligned.

Remarks:

When we define a plane by specifying 3 points, the normal vector always points toward the positive Z.

Parameters
point1First point.
point2Second point.
point3Third point.

◆ DistanceTo()

float eVision.Easy3D.E3DPlane.DistanceTo ( self,
eVision.Easy3D.E3DPoint point )

Returns the signed distance between the plane and a given point.

A positive distance means that the vector connecting the plane to the point has the same direction as the normal while a negative distance means that it has the opposite direction.

Parameters
pointThe 3D point to measure the distance to.

◆ FlipIfNegativeZ()

None eVision.Easy3D.E3DPlane.FlipIfNegativeZ ( self)

Flips the orientation of the ZMap (normal = -normal) if the normal has a negative Z coordinate.

Deprecated

Use eVision.Easy3D.E3DPlane.OrientNormal ( eVision.Easy3D.E3DPlaneNormalOrientation.PosZ ) instead.

Deprecated in version 26.2. Scheduled to be removed in version 27.6.

◆ GetTransformationTo()

eVision.Easy3D.E3DTransformMatrix eVision.Easy3D.E3DPlane.GetTransformationTo ( self,
eVision.Easy3D.E3DPlane destination )

Return the transformation that moves the plane to the given destination plane.

Parameters
destinationThe destination plane.

◆ IntersectionWithTwoPlanes()

bool eVision.Easy3D.E3DPlane.IntersectionWithTwoPlanes ( self,
eVision.Easy3D.E3DPlane plane1,
eVision.Easy3D.E3DPlane plane2,
eVision.Easy3D.E3DPoint intersection )

Compute the intersection between this plane and the two given as argument.

If the intersection exists, true is returned and intersection is filled with the intersection.

Parameters
plane1The first plane with which we compute the intersection.
plane2The second plane with which we compute the intersection.
intersectionThe point that will contain the intersection between the three planes.

◆ Load() [1/2]

None eVision.Easy3D.E3DPlane.Load ( self,
eVision.ESerializer | None serializer )

Loads a eVision.Easy3D.E3DPlane.

The given ESerializer must have been created for reading.

Parameters
serializerThe serializer.

◆ Load() [2/2]

None eVision.Easy3D.E3DPlane.Load ( self,
str path )

Loads a eVision.Easy3D.E3DPlane.

The given ESerializer must have been created for reading.

Parameters
pathThe file path.

◆ Normal() [1/2]

eVision.Easy3D.E3DPoint eVision.Easy3D.E3DPlane.Normal ( self)

Gets/Sets the normal vector of the plane.

Remarks:

Normal values will be stored normalized.

◆ Normal() [2/2]

eVision.Easy3D.E3DPlane.Normal ( self,
eVision.Easy3D.E3DPoint value )

Gets/Sets the normal vector of the plane.

Remarks:

Normal values will be stored normalized.

◆ OrientNormal()

None eVision.Easy3D.E3DPlane.OrientNormal ( self,
eVision.Easy3D.E3DPlaneNormalOrientation orientation )

Orients the normal of the ZMap on one of the axes, see eVision.Easy3D.E3DPlaneNormalOrientation.

Parameters
orientationAxis to orient the normal towards.

◆ ProjectPoint()

eVision.Easy3D.E3DPoint eVision.Easy3D.E3DPlane.ProjectPoint ( self,
eVision.Easy3D.E3DPoint point )

Returns the position of the given point projected on the plane.

Parameters
pointThe 3D point to project on plane.

◆ Save() [1/2]

None eVision.Easy3D.E3DPlane.Save ( self,
eVision.ESerializer | None serializer )

Saves a eVision.Easy3D.E3DPlane.

The given ESerializer must have been created for writing.

Parameters
serializerThe eVision.ESerializer object that is written to.

◆ Save() [2/2]

None eVision.Easy3D.E3DPlane.Save ( self,
str path )

Saves a eVision.Easy3D.E3DPlane.

The given ESerializer must have been created for writing.

Parameters
pathThe file path.

◆ SignedDistanceFromOrigin() [1/2]

float eVision.Easy3D.E3DPlane.SignedDistanceFromOrigin ( self)

Gets/Sets the signed distance between the origin and the plane.

◆ SignedDistanceFromOrigin() [2/2]

eVision.Easy3D.E3DPlane.SignedDistanceFromOrigin ( self,
float value )

Gets/Sets the signed distance between the origin and the plane.

◆ Transform()

eVision.Easy3D.E3DPlane eVision.Easy3D.E3DPlane.Transform ( self,
eVision.Easy3D.E3DTransformMatrix matrix )

Transforms the 3D plane with the given transformation matrix.

The transformation matrix must contain a rigid transformation (translation and rotation only).

Parameters
matrixThe 3D transformation matrix.

◆ XPlane()

eVision.Easy3D.E3DPlane eVision.Easy3D.E3DPlane.XPlane ( )
static

The X=0 plane.

◆ YPlane()

eVision.Easy3D.E3DPlane eVision.Easy3D.E3DPlane.YPlane ( )
static

The Y=0 plane.

◆ ZPlane()

eVision.Easy3D.E3DPlane eVision.Easy3D.E3DPlane.ZPlane ( )
static

The Z=0 plane.