Raytrix Light Field SDK  4.0
Logo
Public Member Functions | Static Public Member Functions | List of all members
Rx::LFR::CExport Class Reference

Detailed Description

An export.

Inherits Rx::LFR::CPimpl< CExport_Impl, Interfaces::EExport::ID >.

Public Member Functions

 CExport ()
 Default constructor. More...
 
 CExport (CExport &&xExport)
 Move constructor. More...
 
 ~CExport ()
 Destructor. More...
 
CExport_Impl & GetImpl ()
 Gets the non constant implementation. More...
 
const CExport_Impl & GetImpl () const
 Gets the constant implementation. More...
 
void * GetInterface (Interfaces::EExport::ID eInterface)
 Gets the interface defined by the given interface ID. More...
 
const void * GetInterface (Interfaces::EExport::ID eInterface) const
 Gets the interface defined by the given interface ID. More...
 
TInterface * GetInterface (Interfaces::EExport::ID eInterface)
 Gets the interface defined by the given interface ID. More...
 
const TInterface * GetInterface (Interfaces::EExport::ID eInterface) const
 Gets the interface defined by the given interface ID. More...
 
bool HasInterface (Interfaces::EExport::ID eInterface)
 Queries if this object has the given interface. More...
 
CExportoperator= (CExport &&xExporter)
 Move assignment operator. More...
 

Static Public Member Functions

static void SaveMeshPLY (const CRxString &sxFile, const CRxImage &xImgFocus, const CRxImage &xImgDepth3D, bool bUseVD, const double *pdCropXYZ=nullptr)
 Saves the 3D mesh provided by the given 3D depth image to binary PLY format. More...
 
static void SaveMeshSTL (const CRxString &sxFile, const CRxImage &xImgDepth3D, bool bUseVD, double dMaxEdgeLength, const double *pdCropXY=nullptr)
 Saves the 3D mesh provided by the given 3D depth image to binary STL format. More...
 
static void SavePointListPCD (const CRxString &sxFile, const CRxImage &xImgDepth3D, bool bUseVD, const double *pdCropXY=nullptr)
 Saves the 3D point list provided by the given 3D depth image to binary PCD format. More...
 
static void SavePointListPCD (const CRxString &sxFile, const CRxImage &xImgFocus, const CRxImage &xImgDepth3D, bool bUseVD, const double *pdCropXY=nullptr)
 Saves the 3D point list provided by the given 3D depth image to binary PCD format. More...
 
static void SavePointListTXT (const CRxString &sxFile, const CRxImage &xImgDepth3D, bool bUseVD, const double *pdCropXY=nullptr)
 Saves the 3D point list provided by the given 3D depth image to ASCII TXT format. More...
 
static void SavePointListXYZ (const CRxString &sxFile, const CRxImage &xImgDepth3D, bool bUseVD, const double *pdCropXY=nullptr)
 Saves the 3D point list provided by the given 3D depth image to ASCII XYZ format. More...
 

Constructor & Destructor Documentation

Rx::LFR::CExport::CExport ( )

Default constructor.

Rx::LFR::CExport::CExport ( CExport &&  xExport)

Move constructor.

Parameters
xExport[in,out] The exporter.
Rx::LFR::CExport::~CExport ( )

Destructor.

Member Function Documentation

CExport_Impl & Rx::LFR::CPimpl< CExport_Impl , Interfaces::EExport::ID >::GetImpl ( )
inlineinherited

Gets the non constant implementation.

Returns
The implementation.
const CExport_Impl & Rx::LFR::CPimpl< CExport_Impl , Interfaces::EExport::ID >::GetImpl ( ) const
inlineinherited

Gets the constant implementation.

Returns
The implementation.
void* Rx::LFR::CPimpl< CExport_Impl , Interfaces::EExport::ID >::GetInterface ( Interfaces::EExport::ID  eInterface)
inherited

Gets the interface defined by the given interface ID.

Parameters
eInterfaceThe interface ID.
Returns
Null if it fails, else the interface.
const void* Rx::LFR::CPimpl< CExport_Impl , Interfaces::EExport::ID >::GetInterface ( Interfaces::EExport::ID  eInterface) const
inherited

Gets the interface defined by the given interface ID.

Parameters
eInterfaceThe interface ID.
Returns
Null if it fails, else the interface.
TInterface* Rx::LFR::CPimpl< CExport_Impl , Interfaces::EExport::ID >::GetInterface ( Interfaces::EExport::ID  eInterface)
inlineinherited

Gets the interface defined by the given interface ID.

Template Parameters
TInterfaceThe interface type.
Parameters
eInterfaceThe interface.
Returns
Null if it fails, else the interface.
const TInterface* Rx::LFR::CPimpl< CExport_Impl , Interfaces::EExport::ID >::GetInterface ( Interfaces::EExport::ID  eInterface) const
inlineinherited

Gets the interface defined by the given interface ID.

Template Parameters
TInterfaceThe interface type.
Parameters
eInterfaceThe interface ID.
Returns
Null if it fails, else the interface.
bool Rx::LFR::CPimpl< CExport_Impl , Interfaces::EExport::ID >::HasInterface ( Interfaces::EExport::ID  eInterface)
inlineinherited

Queries if this object has the given interface.

Parameters
eInterfaceThe interface to query.
Returns
True if this class has the given interface, false if not.
CExport& Rx::LFR::CExport::operator= ( CExport &&  xExporter)

Move assignment operator.

Parameters
xExporter[in,out] The exporter.
Returns
The instance.
static void Rx::LFR::CExport::SaveMeshPLY ( const CRxString sxFile,
const CRxImage xImgFocus,
const CRxImage xImgDepth3D,
bool  bUseVD,
const double *  pdCropXYZ = nullptr 
)
static

Saves the 3D mesh provided by the given 3D depth image to binary PLY format.

Parameters
sxFileThe file name.
xImgFocusThe total focus image used as color values for each vertex in the mesh. Must be of type RGBA unsigned char or luminance unsigned char.
xImgDepth3DThe 3D depth image. Must be of type RGBA float.
bUseVDTrue to save the mesh in virtual depth units instead of metric units.
pdCropXYZ(Optional) Pointer to 6 double values defining a mesh crop in X, Y and Z. The first 4 double values must be given in percentage of the image dimension in the order: Left, Right, Top, Bottom. The next 2 values must be given as absolute depth values in the order: Minimum, Maximum. If both values are 0, no depth crop is applied.
static void Rx::LFR::CExport::SaveMeshSTL ( const CRxString sxFile,
const CRxImage xImgDepth3D,
bool  bUseVD,
double  dMaxEdgeLength,
const double *  pdCropXY = nullptr 
)
static

Saves the 3D mesh provided by the given 3D depth image to binary STL format.

Parameters
sxFileThe file name.
xImgDepth3DThe 3D depth image. Must be of type RGBA float.
bUseVDTrue to save the mesh in virtual depth units instead of metric units.
dMaxEdgeLengthVertices with a depth-variation larger than this value for at least one vertex pair are not added to the mesh.
pdCropXY(Optional) Pointer to 4 double values defining a mesh crop in X and Y. The values must be given in percentage of the image dimension in the order: Left, Right, Top, Bottom.
static void Rx::LFR::CExport::SavePointListPCD ( const CRxString sxFile,
const CRxImage xImgDepth3D,
bool  bUseVD,
const double *  pdCropXY = nullptr 
)
static

Saves the 3D point list provided by the given 3D depth image to binary PCD format.

Point Cloud Data: http://pointclouds.org/documentation/tutorials/pcd_file_format.php.

Parameters
sxFileThe file name.
xImgDepth3DThe 3D depth image. Must be of type RGBA float.
bUseVDTrue to save the mesh in virtual depth units instead of metric units.
pdCropXY(Optional) Pointer to 4 double values defining a mesh crop in X and Y. The values must be given in percentage of the image dimension in the order: Left, Right, Top, Bottom.
static void Rx::LFR::CExport::SavePointListPCD ( const CRxString sxFile,
const CRxImage xImgFocus,
const CRxImage xImgDepth3D,
bool  bUseVD,
const double *  pdCropXY = nullptr 
)
static

Saves the 3D point list provided by the given 3D depth image to binary PCD format.

Point Cloud Data: http://pointclouds.org/documentation/tutorials/pcd_file_format.php.

Parameters
sxFileThe file name.
xImgFocusThe total focus image used as color values for each point in the data. Must be of type RGBA unsigned char or luminance unsigned char.
xImgDepth3DThe 3D depth image. Must be of type RGBA float.
bUseVDTrue to save the mesh in virtual depth units instead of metric units.
pdCropXY(Optional) Pointer to 4 double values defining a mesh crop in X and Y. The values must be given in percentage of the image dimension in the order: Left, Right, Top, Bottom.
static void Rx::LFR::CExport::SavePointListTXT ( const CRxString sxFile,
const CRxImage xImgDepth3D,
bool  bUseVD,
const double *  pdCropXY = nullptr 
)
static

Saves the 3D point list provided by the given 3D depth image to ASCII TXT format.

Parameters
sxFileThe file name.
xImgDepth3DThe 3D depth image. Must be of type RGBA float.
bUseVDTrue to save the mesh in virtual depth units instead of metric units.
pdCropXY(Optional) Pointer to 4 double values defining a mesh crop in X and Y. The values must be given in percentage of the image dimension in the order: Left, Right, Top, Bottom.
static void Rx::LFR::CExport::SavePointListXYZ ( const CRxString sxFile,
const CRxImage xImgDepth3D,
bool  bUseVD,
const double *  pdCropXY = nullptr 
)
static

Saves the 3D point list provided by the given 3D depth image to ASCII XYZ format.

Parameters
sxFileThe file name.
xImgDepth3DThe 3D depth image. Must be of type RGBA float.
bUseVDTrue to save the mesh in virtual depth units instead of metric units.
pdCropXY(Optional) Pointer to 4 double values defining a mesh crop in X and Y. The values must be given in percentage of the image dimension in the order: Left, Right, Top, Bottom.