eVision C++ API 26.10.0-beta.2.dev
Loading...
Searching...
No Matches
eVision::Easy3D::EZMapLeveler Class Reference

Class performing the leveling of an EZMap. The ZMap is re-projected along a new direction and with a specific orientation. The direction is either given by the user or found on the initial ZMap. The orientation is given as an angle (0° is the x-axis of the initial ZMap). More...

#include <eVision/Easy3D/EZMapLeveler.h>

Collaboration diagram for eVision::Easy3D::EZMapLeveler:

Public Member Functions

 EZMapLeveler ()
 Constructor of an EZMapLeveler object.
 EZMapLeveler (const eVision::Easy3D::EZMapLeveler &other)
 Constructor of an EZMapLeveler object.
virtual ~EZMapLeveler () throw ()
eVision::Easy3D::EZMapLeveler & operator= (const eVision::Easy3D::EZMapLeveler &other)
 Assignment operator.
bool operator== (const eVision::Easy3D::EZMapLeveler &other) const
 Comparison operator.
bool operator!= (const eVision::Easy3D::EZMapLeveler &other) const
 Inequality operator.
void Load (const std::string &path)
 Loads the EZMapLeveler object. The given ESerializer must have been created for reading.
void Load (eVision::ESerializer *serializer)
 Loads the EZMapLeveler object. The given ESerializer must have been created for reading.
void Save (const std::string &path)
 Saves the EZMapLeveler object. The given ESerializer must have been created for writing.
void Save (eVision::ESerializer *serializer)
 Saves the EZMapLeveler object. The given ESerializer must have been created for writing.
void SetPreservationModes (int32_t modes)
 Sets/Gets what settings are preserved between the source and destination ZMaps. See EPreservationMode for more information. Defaults to EPreservationMode::EPreservationMode_XYResolution.
int32_t GetPreservationModes () const
 Sets/Gets what settings are preserved between the source and destination ZMaps. See EPreservationMode for more information. Defaults to EPreservationMode::EPreservationMode_XYResolution.
void SetPreserveZResolutionFailureHandler (eVision::Easy3D::EZMapGeneratorZResolutionFailureHandler failureHandler)
 Gets/Sets the method to handle failures in EZMapLeveler::Level when preserving the source EZMap Z resolution (EZMapLeveler::SetPreservationModes set to EPreservationMode::EPreservationMode_ZResolution).
eVision::Easy3D::EZMapGeneratorZResolutionFailureHandler GetPreserveZResolutionFailureHandler () const
 Gets/Sets the method to handle failures in EZMapLeveler::Level when preserving the source EZMap Z resolution (EZMapLeveler::SetPreservationModes set to EPreservationMode::EPreservationMode_ZResolution).
void SetPreserve3DPosition (bool preserve)
 Sets/Gets whether the position of the 3D data is to be preserved when performing leveling.
bool GetPreserve3DPosition () const
 Sets/Gets whether the position of the 3D data is to be preserved when performing leveling.
void Level (const eVision::Easy3D::EZMap8 &source, const eVision::ERegion &region, eVision::Easy3D::EZMap8 &destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap8 &source, const eVision::ERegion &region, eVision::Easy3D::EZMap8 &destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap16 &source, const eVision::ERegion &region, eVision::Easy3D::EZMap16 &destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap16 &source, const eVision::ERegion &region, eVision::Easy3D::EZMap16 &destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap32f &source, const eVision::ERegion &region, eVision::Easy3D::EZMap32f &destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap32f &source, const eVision::ERegion &region, eVision::Easy3D::EZMap32f &destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap *source, const eVision::ERegion &region, eVision::Easy3D::EZMap *destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap *source, const eVision::ERegion &region, eVision::Easy3D::EZMap *destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap8 &source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap8 &destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap8 &source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap8 &destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap16 &source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap16 &destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap16 &source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap16 &destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap32f &source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap32f &destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap32f &source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap32f &destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap *source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap *destination, float rotationAngle) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
void Level (const eVision::Easy3D::EZMap *source, const eVision::Easy3D::E3DPoint &projectionDirection, eVision::Easy3D::EZMap *destination) const
 Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.
 EZMapLeveler (CppWrapperInternal::InternalConstructor)

Public Attributes

CppWrapperInternal::WrappedClass wrappedClass_

Detailed Description

Class performing the leveling of an EZMap. The ZMap is re-projected along a new direction and with a specific orientation. The direction is either given by the user or found on the initial ZMap. The orientation is given as an angle (0° is the x-axis of the initial ZMap).

License(s): Easy3D

Constructor & Destructor Documentation

◆ EZMapLeveler() [1/3]

eVision::Easy3D::EZMapLeveler::EZMapLeveler ( )

Constructor of an EZMapLeveler object.

◆ EZMapLeveler() [2/3]

eVision::Easy3D::EZMapLeveler::EZMapLeveler ( const eVision::Easy3D::EZMapLeveler & other)

Constructor of an EZMapLeveler object.

Parameters
otherReference to the EZMapLeveler used for the initialization.

◆ ~EZMapLeveler()

eVision::Easy3D::EZMapLeveler::~EZMapLeveler ( )
throw ( )
virtual

◆ EZMapLeveler() [3/3]

eVision::Easy3D::EZMapLeveler::EZMapLeveler ( CppWrapperInternal::InternalConstructor )

Member Function Documentation

◆ GetPreservationModes()

int32_t eVision::Easy3D::EZMapLeveler::GetPreservationModes ( ) const

Sets/Gets what settings are preserved between the source and destination ZMaps. See EPreservationMode for more information. Defaults to EPreservationMode::EPreservationMode_XYResolution.

◆ GetPreserve3DPosition()

bool eVision::Easy3D::EZMapLeveler::GetPreserve3DPosition ( ) const

Sets/Gets whether the position of the 3D data is to be preserved when performing leveling.

If this is true, the image corresponding to the data will be transformed but the ZMap's metadata will compensate the transformation. This means the point clouds corresponding from the input and leveled ZMap are the same.

If this is false, the z = 0 plane in the leveled ZMap represents:

  • the plane defined by the region argument of EZMapLeveler::Level when it is specified.
  • the plane used for leveling (i.e. the plane lying slightly below the object) when the projection direction argument of EZMapLeveler::Level is specified.

Default: true.

◆ GetPreserveZResolutionFailureHandler()

eVision::Easy3D::EZMapGeneratorZResolutionFailureHandler eVision::Easy3D::EZMapLeveler::GetPreserveZResolutionFailureHandler ( ) const

Gets/Sets the method to handle failures in EZMapLeveler::Level when preserving the source EZMap Z resolution (EZMapLeveler::SetPreservationModes set to EPreservationMode::EPreservationMode_ZResolution).

If the source resolution is too small to represent the whole 3D data, the data may be cropped, saturated or an exception may be thrown. By default, data is cropped.

◆ Level() [1/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap * source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap * destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [2/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap * source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap * destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [3/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap * source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap * destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [4/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap * source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap * destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [5/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap16 & source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap16 & destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [6/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap16 & source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap16 & destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [7/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap16 & source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap16 & destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [8/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap16 & source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap16 & destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [9/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap32f & source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap32f & destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [10/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap32f & source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap32f & destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [11/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap32f & source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap32f & destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [12/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap32f & source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap32f & destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [13/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap8 & source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap8 & destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [14/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap8 & source,
const eVision::Easy3D::E3DPoint & projectionDirection,
eVision::Easy3D::EZMap8 & destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
projectionDirectionThe direction of projection of the leveled ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [15/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap8 & source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap8 & destination ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Level() [16/16]

void eVision::Easy3D::EZMapLeveler::Level ( const eVision::Easy3D::EZMap8 & source,
const eVision::ERegion & region,
eVision::Easy3D::EZMap8 & destination,
float rotationAngle ) const

Levels the given source ZMap in the destination ZMap. Given a ZMap and an ERegion, the E3DPlane contained in the ERegion is extracted and the ZMap is re-projected along that plane's normal. If an E3DPoint is given instead of the ERegion, it is used directly as direction to project the leveled ZMap along. In both cases, the projection plane lays slightly below the whole object represented by the input ZMap (so as not to loose any data when projecting). The given rotation angle specifies the x-axis to be used in the new ZMap. An angle of 0° re-uses the x-axis of the source ZMap, one of 90° its y-axis.

Parameters
sourceThe ZMap that will be leveled.
regionThe region of the source ZMap containing the reference plane for the leveling. You can use an ERectangleRegion with the ZMap's size to use the whole ZMap.
destinationThe leveled ZMap, must be a ZMap of the same type as source.
rotationAngleThe rotation angle between the x-axes of the source and destination ZMap, in Easy::SetAngleUnit.

If the projectionDirection given or computed from region is orthogonal to the source's Z axis, an exception is thrown.

◆ Load() [1/2]

void eVision::Easy3D::EZMapLeveler::Load ( const std::string & path)

Loads the EZMapLeveler object. The given ESerializer must have been created for reading.

Parameters
pathThe file path.

◆ Load() [2/2]

void eVision::Easy3D::EZMapLeveler::Load ( eVision::ESerializer * serializer)

Loads the EZMapLeveler object. The given ESerializer must have been created for reading.

Parameters
serializerThe serializer.

◆ operator!=()

bool eVision::Easy3D::EZMapLeveler::operator!= ( const eVision::Easy3D::EZMapLeveler & other) const

Inequality operator.

Parameters
otherThe EZMapLeveler object to compare with.

◆ operator=()

eVision::Easy3D::EZMapLeveler & eVision::Easy3D::EZMapLeveler::operator= ( const eVision::Easy3D::EZMapLeveler & other)

Assignment operator.

Parameters
otherThe EZMapLeveler object that should be copied.

◆ operator==()

bool eVision::Easy3D::EZMapLeveler::operator== ( const eVision::Easy3D::EZMapLeveler & other) const

Comparison operator.

Parameters
otherThe EZMapLeveler object to compare with.

◆ Save() [1/2]

void eVision::Easy3D::EZMapLeveler::Save ( const std::string & path)

Saves the EZMapLeveler object. The given ESerializer must have been created for writing.

Parameters
pathThe file path.

◆ Save() [2/2]

void eVision::Easy3D::EZMapLeveler::Save ( eVision::ESerializer * serializer)

Saves the EZMapLeveler object. The given ESerializer must have been created for writing.

Parameters
serializerThe ESerializer object that is written to.

◆ SetPreservationModes()

void eVision::Easy3D::EZMapLeveler::SetPreservationModes ( int32_t modes)

Sets/Gets what settings are preserved between the source and destination ZMaps. See EPreservationMode for more information. Defaults to EPreservationMode::EPreservationMode_XYResolution.

Parameters
modesAny combination of the EPreservationMode enum containing at least EPreservationMode::EPreservationMode_XYResolution or EPreservationMode::EPreservationMode_Size.

◆ SetPreserve3DPosition()

void eVision::Easy3D::EZMapLeveler::SetPreserve3DPosition ( bool preserve)

Sets/Gets whether the position of the 3D data is to be preserved when performing leveling.

If this is true, the image corresponding to the data will be transformed but the ZMap's metadata will compensate the transformation. This means the point clouds corresponding from the input and leveled ZMap are the same.

If this is false, the z = 0 plane in the leveled ZMap represents:

  • the plane defined by the region argument of EZMapLeveler::Level when it is specified.
  • the plane used for leveling (i.e. the plane lying slightly below the object) when the projection direction argument of EZMapLeveler::Level is specified.

Default: true.

Parameters
preserveWhether the 3D position is preserved in the leveled ZMap.

◆ SetPreserveZResolutionFailureHandler()

void eVision::Easy3D::EZMapLeveler::SetPreserveZResolutionFailureHandler ( eVision::Easy3D::EZMapGeneratorZResolutionFailureHandler failureHandler)

Gets/Sets the method to handle failures in EZMapLeveler::Level when preserving the source EZMap Z resolution (EZMapLeveler::SetPreservationModes set to EPreservationMode::EPreservationMode_ZResolution).

If the source resolution is too small to represent the whole 3D data, the data may be cropped, saturated or an exception may be thrown. By default, data is cropped.

Parameters
failureHandlerWhether to crop, saturate or throw on failure

Member Data Documentation

◆ wrappedClass_

CppWrapperInternal::WrappedClass eVision::Easy3D::EZMapLeveler::wrappedClass_