// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _Voxel_BoolDS_HeaderFile #define _Voxel_BoolDS_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Voxel_DS_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif //! A 3D voxel model keeping a bool flag (1 or 0)
//! value for each voxel.
class Voxel_BoolDS : public Voxel_DS { public: void* operator new(size_t,void* anAddress) { return anAddress; } void* operator new(size_t size) { return Standard::Allocate(size); } void operator delete(void *anAddress) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } //! An empty constructor.
Standard_EXPORT Voxel_BoolDS(); //! A constructor initializing the voxel model.
//! (x, y, z) - the start point of the box.
//! (x_len, y_len, z_len) - lengths in x, y and z directions along axes of a co-ordinate system.
//! (nb_x, nb_y, nb_z) - number of splits (voxels) along x, y and z directions.
Standard_EXPORT Voxel_BoolDS(const Standard_Real x,const Standard_Real y,const Standard_Real z,const Standard_Real x_len,const Standard_Real y_len,const Standard_Real z_len,const Standard_Integer nb_x,const Standard_Integer nb_y,const Standard_Integer nb_z); //! Initialization of the voxel model.
//! (x, y, z) - the start point of the box.
//! (x_len, y_len, z_len) - lengths in x, y and z directions along axes of a co-ordinate system.
//! (nb_x, nb_y, nb_z) - number of splits (voxels) along x, y and z directions.
Standard_EXPORT virtual void Init(const Standard_Real x,const Standard_Real y,const Standard_Real z,const Standard_Real x_len,const Standard_Real y_len,const Standard_Real z_len,const Standard_Integer nb_x,const Standard_Integer nb_y,const Standard_Integer nb_z) ; //! A destructor of the voxel model.
Standard_EXPORT void Destroy() ; ~Voxel_BoolDS() { Destroy(); } //! The method sets all values equal to 0 (false) and
//! releases the memory.
Standard_EXPORT void SetZero() ; //! Defines a value for voxel with co-ordinates (ix, iy, iz).
//! Initial state of the model is so that all voxels have value 0 (false),
//! and this data doesn't occupy memory.
//! Memory for data is allocating during setting non-zero values (true).
Standard_EXPORT void Set(const Standard_Integer ix,const Standard_Integer iy,const Standard_Integer iz,const Standard_Boolean data = Standard_True) ; //! Returns the value of voxel with co-ordinates (ix, iy, iz).
Standard_EXPORT Standard_Boolean Get(const Standard_Integer ix,const Standard_Integer iy,const Standard_Integer iz) const; protected: private: }; // other Inline functions and methods (like "C++: function call" methods) #endif