3DCoat  3D-COAT 4.9.xx
3DCoat is the one application that has all the tools you need to take your 3D idea from a block of digital clay all the way to a production ready, fully textured organic or hard surface model.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
VolumeObject Class Reference

One layer without hierarchy in the SculptRoom. More...

#include <VolumeObject.h>

Public Member Functions

void AddJoint (const SnapJoint &J, const Matrix4D &GlobalTransform)
 Add joint to volume, GlobalTransform is transform matrix for model in world space. More...
 
void AddAllJoints ()
 Add all joints registered in VoxelSculptTool. More...
 
void CreateFuncShape (std::function< float(Vector3D)> fn, const cList< Vector3D > &Start, int Subtract, bool UseTemp=false, bool OverHide=false)
 Creates the arbitrary volxels shape. More...
 
VolumeCellAddIndexedCellTriangulation (int cx, int cy, int cz)
 
void VoxelizePureGeometry (bool Manually, bool AsShell, bool tovox=true, int suggestedpoly=0)
 
void Decompose (int MinCluster, int DelSize)
 Separate loose parts. More...
 
void Shell ()
 Global operators. More...
 
cVec2i CloseHolesFastAndGood (bool weld, int maxcontour=100000)
 if maxcontour == 0 it just returns (HolesCount,MaxHole) More...
 
void RemoveConnectedParts (Vector3D pt, AABoundBox &remBB, float MaxRadius)
 Remove parts, connected to nearest point. More...
 
bool ToRawMesh (bool Weld, bool OnlyThis, comms::cMeshContainer *mesh, Matrix4D SingleM, bool Optimize, float OptDegree=0, bool CreateOnlyOptimizedMesh=false, bool OnlySel=false, int FixedPolycount=0)
 Throw to cMeshContainer.
For example. More...
 
void CreateIndexedStructure ()
 fills GlobalVertIndices for every cell, assigns global index for each vertex More...
 
void CreateIndexedStructure2 ()
 fills GlobalVertIndices for every cell, assigns global index for each vertex, the difference is that this function makes job basing on coordinates of vertices More...
 
void Reproject (const Vector3D &Center, float Radius, const Vector3D &Direction, const Vector3D &T, const Vector3D &B, int method, int normalsource, float deepdeg, bool reprojectcolor)
 
BaseClassGetRoot ()
 BaseClass is like a tree, and you always can get the root of the tree using this function. More...
 
virtual DWORD GetClassMask ()
 Masking elements of class. Each member has mask. Element is serializable/visible only if (it's_mask & hosting_class_mask) != 0. More...
 
virtual void reset_class (void *DataPtr=nullptr)
 Clearing all registered content of the class. If DataPtr is nullptr, this class will be cleared. More...
 
virtual void CountObjects (int &required_index, int *counter, HashSummator *hash, BaseClassElement *result, const std::function< bool(BaseClassElement *)> *ForEachElem=nullptr, bool OnlyPointersMode=false)
 This is the main function used for the access to class members. Each class that has SERIALIZE section creates this function automatically.
It may count members, return hash, give element-wise access to any member. Instead of keeping registered fields that routine gives fast dynamic access to any member.
If you making own container, you should create this function as well, othervice your class will not be serialized correctly even if you will make GetElement(...) function. More...
 
void ForEach (const std::function< bool(BaseClassElement *el)> &fn, bool OnlyPointsers=false)
 Calls function for each class member. This function used in _EACH ... _EACH_END cycle. More...
 
virtual bool CopyBaseClass (BaseClass *Dest, bool Add=false)
 Copy base class to other class uning names correspondence. More...
 
virtual void Save (TagsList &xml, void *ClassPtr, void *Extra=NULL)
 Save class to the XML structure. More...
 
virtual bool Load (TagsList &xml, void *ClassPtr, void *Extra=NULL)
 Load the class from the XML structure. More...
 
virtual bool FullCopy (const void *SrcData, const void *SrcDataExtra, BaseClass *Dest, void *DestData, void *DstDataExtra, CECopyContext *C)
 Fast copy from one BaseClass to another. Names and types correspondence used to copy. More...
 
virtual void SaveBin (void *Data, void *Extra, BinStream *Out, Enumerator *ExDictionary, Enumerator *SkipList)
 Save in binaly form. Use only for temporary storage in memory!!! More...
 
virtual void LoadBin (void *Data, void *Extra, BinStream *In, Enumerator *ExDictionary)
 Load the class from the memory. Use only for temporary storage in memory!!! More...
 
virtual void UpdateHash (HashSummator &S, void *data=nullptr, void *extra=nullptr)
 returns hash value dependent on data fields of this class More...
 
virtual int GetAmountOfElementsInUI ()
 return amount of elements represented in UI More...
 
virtual int GetAmountOfElementsInXML ()
 return amount of elements taht will be stored in XML More...
 
virtual const char * GetClassName () const
 return class name there if need. Usually you don't need, if you are using AUTONEW or SERIALIZE More...
 
virtual void RegisterMembers ()
 Reload this function to register members. Usually you don't need to do this if you are using any of SERIALIZE methods of registration. More...
 
virtual int GetAmountOfElements ()
 return complete amount of elements. Even invisible, masked and non-serialized elements will be counted More...
 
virtual bool CheckDirectCasting () const
 BaseClass corresponds to some other data type. For example _int correctonds to int, etc... In this case you can't cast pointer to data to BaseClass*. But in some cases BaseClass may be directlt castable, for example if it has registered members, or it is ClassArray. This function is to define if class is directly castable. More...
 
virtual int GetClassSize () const
 return actual size of this class More...
 
virtual BaseClassnew_element () const
 construct pointer to class of the same type like this. Elements will not be copied into the new place More...
 
virtual bool GetElement (BaseClassElement &res, int idx, const void *Ptr=nullptr, const void *Extra=nullptr)
 
bool GetElementByName (const char *Name, void *Ptr, void *Extra, BaseClassElement &res, bool UI=false, bool Serialize=true)
 The function returns complete information about the member by it's name. More...
 
void DeleteDefaultSubFields (TagsList &xml, void *ClassPtr, void *Extra=NULL)
 Short form saving. Fields that are unchanged in comparison to default will be skipped in XML. More...
 
virtual bool ShouldSaveInShortForm ()
 Return true if class should be saved in short form mandatory. More...
 
virtual int ExpandWith (const char *ElmName, void *base)
 Expand array with class ElmName. More...
 
virtual bool DelElement (int Index)
 removes element if the operation supported More...
 
template<class Type = BaseClass>
bool valid () const
 call it to check if this BaseClass pointer is valid More...
 
BaseClassauto_cast (void *ptr) const
 if class is directly castable the function returns ptr cased to BaseClass, othervice this pointrer returned. If NULL returned - something is wrong. More...
 
virtual bool ReadFromFile (const char *Name)
 Save the object to file or binary stream. Example. More...
 
virtual void FromStr (const comms::cStr &bs)
 
virtual bool CheckIfFunction () const
 Special function for integrating in editor. More...
 
virtual int condition_call (void *ptr)
 return -1 to do nothing, 0 if you want to hide everything after this registered member, 1 if you want to show More...
 
virtual void SetParent (BaseClass *Parent)
 set parent recursively More...
 
virtual void SimplySetParent (BaseClass *Parent)
 set parent directly to this, not affecting members More...
 
virtual bool CheckCompartabilityWith (const char *TypeName, int TypeSize)
 Checking for errors of registration. More...
 
virtual bool ProcessInEditor (BaseClass *Parent)
 Editor will call next function always when it is visible in tree. Return true if overriden. More...
 
virtual bool HandleKey (int code)
 Editor will call next function when key pressed. More...
 
virtual bool OnChangeMember (BaseClass *MembClass, void *MembPtr, void *MembExtra, const char *MembName)
 Editor will call it every time when member changes and editor is able to recognise it. More...
 
virtual void BeforeChangeMember (BaseClass *MembClass, void *MembPtr, void *MembExtra, const char *MembName)
 Editor will call it every time before the changes. More...
 
virtual BaseWidget * OnCreateControlFromScratch (const ClassEditorContext &Context, Rct &Rect)
 Create completely own control for ClassEditor. More...
 
virtual void OnModifyControl (const char *FieldName, BaseWidget *W, ClassEditorContext &Context)
 Call for every member of registered class registered class. More...
 
virtual bool CanBeDragged (const char *MemberID, int &dx, int &dy)
 Use it for build a Drag & Drop element. More...
 
virtual bool CanAcceptDrag (const char *MemberID)
 
virtual bool OnStartDrag (const char *MemberID)
 
virtual bool OnEndDrag (const char *MemberID)
 
virtual bool OnAcceptDrag (BaseClass *DraggedItemParent, const char *DraggedMemberID, const char *AcceptorMemberID, iRct MyRect)
 
void SetParents ()
 set parents to this for all child members More...
 
void SetParentsSafe ()
 set parents to this for all child members, each child will be tested for validity More...
 

Public Attributes

int SpaceID
 Unique ID of the volume, same as VoxTreeBranch::SpaceID. More...
 
cStr CacheName
 Cache reference. More...
 
BakedLayersStorage * OldColor
 Color to be restored when volume will be turned back to surface mode. More...
 
float ScaleChange
 How scale is changed when passed to proxy mode. More...
 
cList< tri_DWORDbkCells
 Cells list to be passed to UndoQueue. More...
 
std_OnePoolType vpool
 pool for voxel values, words More...
 
std_OnePoolType cpool
 pool for VolumeCell More...
 
std_OnePoolType apool
 pool for VolumeCellAttrib More...
 
ABOcTree VoxOcTree
 Represents OcTree structure for fast finding of volume cells. More...
 
float PickFarPlane
 far plane position in picked radius More...
 
float PickNearPlane
 closest plane position in picked radius More...
 
float PickAvgPlane
 average plane position in picked radius More...
 
float PickPlane
 plane position of picked center More...
 
PickedPool PickList
 temporary storage for cells to operate More...
 
AABoundBox LastDrawn
 last drawn bound box of cells centers in local space More...
 
int Border
 border for dencity falloff in voxel objects, usually is 4 More...
 
cVec3i MinCell
 min for bound box of cell indices, x,y,z More...
 
cVec3i MaxCell
 max for bound box of cell indices, x,y,z More...
 
Matrix4D Transform
 transform from local to global space More...
 
Matrix4D TransformInv
 transform from global to local space More...
 
bool Visible
 better refer visibility from VoxTreeBranch More...
 
bool InCache
 is in cache state More...
 
float ScaleFactor
 scale factor, it is like simplified transform from local to global space. If you need to get some distance approx in local space, divide it on ScaleFactor More...
 
VolumeObjectHiddenVolume
 Hidden part of this volume, kept in VTree as well. More...
 
MeshHelper IdxAllocator
 Allows to allocate / free global indices for mesh represented by MeshInVCell. More...
 
uni_hash< float, DWORD > CavityMap
 cavity for all vertices More...
 
bool CompletelyRebuilt
 this is for undo, it indicates that structure of volume changed drastically, almost no correstondence between old and new More...
 
bool HasTransparency
 for render - nood to sort triangles or not More...
 
cList< SnapJointJoints
 Joints of all merged objects. More...
 
DWORD ApproxColor
 bot baking of approximate shader color More...
 
ShaderEstimator * Est
 estimate hader approximately More...
 
uni_hash< VolumeCell
*, tri_DWORD, 126213, 512 > 
Cells
 Array of VolumeCell. More...
 

Static Public Attributes

static Vector4D LightColor2
 111 for external light, rgb for panorama. More...
 
static float IsExternalLight = 0
 1 for external light, 0 for panorama. More...
 
static const char * CurrentSaveFile
 If user triggers saving class to file, last filename stored there. More...
 

Protected Attributes

BaseClassParentBC
 pointer to the parent class in the tree More...
 
DWORD _ClassMask
 Result of GetClassMask() written there. GetClassMask() is not const, so can't use it in const functions. The field introduced to use masking in const functions. More...
 

Static Protected Attributes

static std::mutex * pmutex
 mutex for register_this / remove_this More...
 
static uni_hash< _empty,
cPtrDiff,(1<< 18), 2048 > * 
presence
 each BaseClass registered in this list More...
 

Detailed Description

One layer without hierarchy in the SculptRoom.

Represents volume object. Volume object may be in volume or surface representations depends on bool InSurfaceRepresentation(). In volume mode voxels are modified and then mesh is generated. In surface mode mesh is modified then voxels are generated. The transform matrix of volume corresponds to latest selected instance in VoxTree. There may be multiple references from VoxTree to the same VolumeObject.
VolumeObject is voxel/surface object not placed in tree. VoxTreeBranch is the object reference. All active VoxelObject's are kept as linear set in VTree array. RootVTree consists of hiererchial set of references of objects from this array. Each VolumeObject contains complete information about geometry in local space. Correct transform matrices are kept in VoxTreeBranch that refers this VolumeObject. Transform matrices in VolumeObject correspond to non-instanced VoxTree element. If object is instance transform matrix in VolumeObject is different form VoxTreeBranch transform.

See Also
VoxTreeBranch
+ Inheritance diagram for VolumeObject:

Member Function Documentation

void VolumeObject::AddAllJoints ( )

Add all joints registered in VoxelSculptTool.

References AddJoint(), and Joints.

VolumeCell * VolumeObject::AddIndexedCellTriangulation ( int  cx,
int  cy,
int  cz 
)
void VolumeObject::AddJoint ( const SnapJoint J,
const Matrix4D GlobalTransform 
)

Add joint to volume, GlobalTransform is transform matrix for model in world space.

References Joints.

Referenced by AddAllJoints().

BaseClass* BaseClass::auto_cast ( void *  ptr) const
inherited

if class is directly castable the function returns ptr cased to BaseClass, othervice this pointrer returned. If NULL returned - something is wrong.

virtual void BaseClass::BeforeChangeMember ( BaseClass MembClass,
void *  MembPtr,
void *  MembExtra,
const char *  MembName 
)
inlinevirtualinherited

Editor will call it every time before the changes.

See Also
OnChangeMember()

Reimplemented in CurvePrimitive.

virtual bool BaseClass::CanAcceptDrag ( const char *  MemberID)
inlinevirtualinherited
virtual bool BaseClass::CanBeDragged ( const char *  MemberID,
int &  dx,
int &  dy 
)
inlinevirtualinherited

Use it for build a Drag & Drop element.

See Also
CanAcceptDrag(), OnStartDrag(), OnEndDrag(), OnAcceptDrag()

Reimplemented in ItemsTree.

Referenced by CreateControlWithBaseClass().

virtual bool BaseClass::CheckCompartabilityWith ( const char *  TypeName,
int  TypeSize 
)
inlinevirtualinherited

Checking for errors of registration.

virtual bool BaseClass::CheckDirectCasting ( ) const
inlinevirtualinherited

BaseClass corresponds to some other data type. For example _int correctonds to int, etc... In this case you can't cast pointer to data to BaseClass*. But in some cases BaseClass may be directlt castable, for example if it has registered members, or it is ClassArray. This function is to define if class is directly castable.

Returns
Return true if void* ClassPtr may be directly casted to BaseClass*

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, VoxelExtension, StringsList, and KnotReference.

Referenced by CreateControlWithBaseClass().

virtual bool BaseClass::CheckIfFunction ( ) const
inlinevirtualinherited

Special function for integrating in editor.

Referenced by CreateControlWithBaseClass().

cVec2i VolumeObject::CloseHolesFastAndGood ( bool  weld,
int  maxcontour = 100000 
)

if maxcontour == 0 it just returns (HolesCount,MaxHole)

References CreateIndexedStructure(), VolumeCellAttrib::GlobalVertIndices, VolumeCellAttrib::Indices, and VolumeCellAttrib::Verts.

Referenced by VoxelizePureGeometry().

virtual int BaseClass::condition_call ( void *  ptr)
inlinevirtualinherited

return -1 to do nothing, 0 if you want to hide everything after this registered member, 1 if you want to show

virtual bool BaseClass::CopyBaseClass ( BaseClass Dest,
bool  Add = false 
)
virtualinherited
virtual void BaseClass::CountObjects ( int &  required_index,
int *  counter,
HashSummator hash,
BaseClassElement result,
const std::function< bool(BaseClassElement *)> *  ForEachElem = nullptr,
bool  OnlyPointersMode = false 
)
inlinevirtualinherited

This is the main function used for the access to class members. Each class that has SERIALIZE section creates this function automatically.
It may count members, return hash, give element-wise access to any member. Instead of keeping registered fields that routine gives fast dynamic access to any member.
If you making own container, you should create this function as well, othervice your class will not be serialized correctly even if you will make GetElement(...) function.

Parameters
required_indexIndex of required element if result != nullptr
counterif nonzero, the elements count returned there.
hashif nonzero, returns hash value for this class.
resultif nonzero, gives access to the member with index required_index.
ForEachElemif nonzero, the function will be called for each class element.
OnlyPointersModeIf true, the field name will not be filled for speed purposes.

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, StringsList, and KnotReference.

void VolumeObject::CreateFuncShape ( std::function< float(Vector3D)>  fn,
const cList< Vector3D > &  Start,
int  Subtract,
bool  UseTemp = false,
bool  OverHide = false 
)

Creates the arbitrary volxels shape.

Parameters
fnthe callback that defines the shape. Gets position of the point returns the value 0..1 to be set as voxel value
Startthe array of start points to grow the changes
SubtractSubtract = 0: add, 1:subtract, 255: replace
UseTempset true if you want modify the cell afterward, all passed values will be kept in temp location and placed into the cell after the whole operation will be completed.
OverHideAll changes will be passed to the hidden volume
void VolumeObject::CreateIndexedStructure ( )

fills GlobalVertIndices for every cell, assigns global index for each vertex

References VolumeCell::Attr, VolumeCellAttrib::GlobalVertIndices, IdxAllocator, VolumeCellAttrib::Indices, and VolumeCellAttrib::Verts.

Referenced by CloseHolesFastAndGood(), TopoDist::Create(), Decompose(), Reproject(), and Shell().

void VolumeObject::CreateIndexedStructure2 ( )

fills GlobalVertIndices for every cell, assigns global index for each vertex, the difference is that this function makes job basing on coordinates of vertices

References VolumeCell::Attr, VolumeCellAttrib::GlobalVertIndices, IdxAllocator, VolumeCellAttrib::Indices, and VolumeCellAttrib::Verts.

void VolumeObject::Decompose ( int  MinCluster,
int  DelSize 
)
virtual bool BaseClass::DelElement ( int  Index)
inlinevirtualinherited

removes element if the operation supported

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, and StringsList.

void BaseClass::DeleteDefaultSubFields ( TagsList xml,
void *  ClassPtr,
void *  Extra = NULL 
)
inherited

Short form saving. Fields that are unchanged in comparison to default will be skipped in XML.

virtual int BaseClass::ExpandWith ( const char *  ElmName,
void *  base 
)
inlinevirtualinherited

Expand array with class ElmName.

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, and ClassArray< VMapType >.

void BaseClass::ForEach ( const std::function< bool(BaseClassElement *el)> &  fn,
bool  OnlyPointsers = false 
)
inherited

Calls function for each class member. This function used in _EACH ... _EACH_END cycle.

Parameters
fnFunction to call, usually lambda
OnlyPointsersIf true, stringual ID field of BaseClassElement will not be filled (for speed purposes).
virtual void BaseClass::FromStr ( const comms::cStr &  bs)
virtualinherited
See Also
ToBS()
virtual bool BaseClass::FullCopy ( const void *  SrcData,
const void *  SrcDataExtra,
BaseClass Dest,
void *  DestData,
void *  DstDataExtra,
CECopyContext *  C 
)
virtualinherited

Fast copy from one BaseClass to another. Names and types correspondence used to copy.

Parameters
SrcDataData data pointer
SrcDataExtraSrc extra
DestDestination class
DestDataDestination data
DstDataExtraDestination extra
Ccopy context
Returns
true if successful

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, StringsList, and Delimiter.

virtual int BaseClass::GetAmountOfElements ( )
virtualinherited

return complete amount of elements. Even invisible, masked and non-serialized elements will be counted

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, and ClassArray< VMapType >.

Referenced by CreateControlWithBaseClass().

virtual int BaseClass::GetAmountOfElementsInUI ( )
virtualinherited

return amount of elements represented in UI

virtual int BaseClass::GetAmountOfElementsInXML ( )
virtualinherited

return amount of elements taht will be stored in XML

virtual DWORD BaseClass::GetClassMask ( )
inlinevirtualinherited

Masking elements of class. Each member has mask. Element is serializable/visible only if (it's_mask & hosting_class_mask) != 0.

Reimplemented in UV_map_Tool, and VoxTreeBranch.

Referenced by CreateControlWithBaseClass().

virtual const char* BaseClass::GetClassName ( ) const
virtualinherited

return class name there if need. Usually you don't need, if you are using AUTONEW or SERIALIZE

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, StringsList, and Delimiter.

Referenced by ClassArray< VMapType >::CountObjects(), CreateControlWithBaseClass(), CurveModifier::GetTool(), ClassArray< VMapType >::SaveBin(), and ClassPtr< BasePrim >::SaveBin().

virtual int BaseClass::GetClassSize ( ) const
virtualinherited

return actual size of this class

virtual bool BaseClass::GetElement ( BaseClassElement res,
int  idx,
const void *  Ptr = nullptr,
const void *  Extra = nullptr 
)
virtualinherited

The function returns complete information about the member by it's index. If you want to walk through all members use _EACH ... _EACH_END loop.

Parameters
resAll data gathered there
idxIndex of the member
PtrPointer to data (if class is direcly castable it is equal to this, othervice it points to placement of data in memory). If NULL passed, this will be used
ExtraExtra data, used for enumerators and sliders (mostly)
Returns
return true if element exists and visible

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, and ClassPtr< BasePrim >.

Referenced by CreateControlWithBaseClass().

bool BaseClass::GetElementByName ( const char *  Name,
void *  Ptr,
void *  Extra,
BaseClassElement res,
bool  UI = false,
bool  Serialize = true 
)
inherited

The function returns complete information about the member by it's name.

Parameters
NameName of the member
PtrData ptr
ExtraExtra
resAll data gathered there
Returns
return true if element exists and visible

Referenced by CurvePrimitive::OnChangeMember().

BaseClass* BaseClass::GetRoot ( )
inherited

BaseClass is like a tree, and you always can get the root of the tree using this function.

virtual bool BaseClass::HandleKey ( int  code)
inlinevirtualinherited

Editor will call next function when key pressed.

Returns
true if key handled, false if not.Return true if code == -1 (othervice callback will never be called later).

Referenced by CreateControlWithBaseClass().

virtual bool BaseClass::Load ( TagsList xml,
void *  ClassPtr,
void *  Extra = NULL 
)
virtualinherited

Load the class from the XML structure.

Parameters
xmlThe source XML
ClassPtrThe pointer to the data, equals to this if class is directly castable
ExtraExtra data pointer
Returns
true if successful

Reimplemented in ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, CurveModifier, StringsList, and KnotReference.

Referenced by CurveModifier::Load(), ClassArray< VMapType >::Load(), and CurvePrimitive::OnChangeMember().

virtual void BaseClass::LoadBin ( void *  Data,
void *  Extra,
BinStream *  In,
Enumerator *  ExDictionary 
)
virtualinherited

Load the class from the memory. Use only for temporary storage in memory!!!

Parameters
DataPointer to the class data
ExtraExtra data
Inbinary stream to read data from
ExDictionaryAdditional dictionary

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, CurveModifier, StringsList, and Delimiter.

Referenced by CurveModifier::LoadBin(), and ClassArray< VMapType >::LoadBin().

virtual BaseClass* BaseClass::new_element ( ) const
virtualinherited

construct pointer to class of the same type like this. Elements will not be copied into the new place

Referenced by ClassArray< VMapType >::ExpandWith(), and ClassPtr< BasePrim >::ExpandWith().

virtual bool BaseClass::OnAcceptDrag ( BaseClass DraggedItemParent,
const char *  DraggedMemberID,
const char *  AcceptorMemberID,
iRct  MyRect 
)
inlinevirtualinherited
virtual bool BaseClass::OnChangeMember ( BaseClass MembClass,
void *  MembPtr,
void *  MembExtra,
const char *  MembName 
)
inlinevirtualinherited

Editor will call it every time when member changes and editor is able to recognise it.

Returns
The value doesn't matter.
See Also
BeforeChangeMember()

Reimplemented in UV_map_Tool, VoxTreeBranch, OneFacture, QuadragulationTask, and CurvePrimitive.

virtual BaseWidget* BaseClass::OnCreateControlFromScratch ( const ClassEditorContext Context,
Rct &  Rect 
)
inlinevirtualinherited

Create completely own control for ClassEditor.

Override it when need to create completely own class editor control.

Parameters
[in]FieldNameis how the object registered.
[out]Rectis rectangle to place control, may be modified by this function if need.
[in]Ptris pointer to data, if class suports direct casting it is equal to "this".
Returns
The function should return control (BaseWidget*) to place in UI
See Also
One2DCurve::OnModifyControl()

Reimplemented in ModelPreview.

Referenced by CreateControlWithBaseClass().

virtual bool BaseClass::OnEndDrag ( const char *  MemberID)
inlinevirtualinherited
virtual void BaseClass::OnModifyControl ( const char *  FieldName,
BaseWidget *  W,
ClassEditorContext Context 
)
inlinevirtualinherited

Call for every member of registered class registered class.

Override it when you need to modify default class editor control. This routine allows to modify class editor controls without rewriting from scratch. Build controls in the W.

See Also
MultiMtlLayer::OnModifyControl()
RetopoGroup::OnModifyControl()
VoxTreeBranch::OnModifyControl()

Reimplemented in VoxTreeBranch, and ItemsTree.

Referenced by CreateControlWithBaseClass().

virtual bool BaseClass::OnStartDrag ( const char *  MemberID)
inlinevirtualinherited
virtual bool BaseClass::ProcessInEditor ( BaseClass Parent)
inlinevirtualinherited

Editor will call next function always when it is visible in tree. Return true if overriden.

Reimplemented in OneFacture, and CurvePrimitive.

Referenced by CreateControlWithBaseClass().

virtual bool BaseClass::ReadFromFile ( const char *  Name)
virtualinherited

Save the object to file or binary stream. Example.

MyClass C;
MyClass C1;
// to stream
MemoryBinStream BS;
C.ToBS(BS, true);
// copy from C to C1
C1.FromBS(BS);
// to file
C.WriteToFile("file.xml");
C1.ReadFromFile("file.xml");
// to string
cStr s;
C.ToStr(s);
C1.FromStr(s);
virtual void BaseClass::RegisterMembers ( )
virtualinherited

Reload this function to register members. Usually you don't need to do this if you are using any of SERIALIZE methods of registration.

void VolumeObject::RemoveConnectedParts ( Vector3D  pt,
AABoundBox &  remBB,
float  MaxRadius 
)
void VolumeObject::Reproject ( const Vector3D Center,
float  Radius,
const Vector3D Direction,
const Vector3D T,
const Vector3D B,
int  method,
int  normalsource,
float  deepdeg,
bool  reprojectcolor 
)
virtual void BaseClass::reset_class ( void *  DataPtr = nullptr)
virtualinherited

Clearing all registered content of the class. If DataPtr is nullptr, this class will be cleared.

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, and StringsList.

virtual void BaseClass::Save ( TagsList xml,
void *  ClassPtr,
void *  Extra = NULL 
)
virtualinherited

Save class to the XML structure.

Parameters
xmlThe result
ClassPtrThe pointer to the data, equals to this if class is directly castable
ExtraExtra data pointer

Reimplemented in CurveModifier, StringsList, and KnotReference.

Referenced by CurvePrimitive::OnChangeMember(), and CurveModifier::Save().

virtual void BaseClass::SaveBin ( void *  Data,
void *  Extra,
BinStream *  Out,
Enumerator *  ExDictionary,
Enumerator *  SkipList 
)
virtualinherited

Save in binaly form. Use only for temporary storage in memory!!!

Parameters
Datadata pointer
Extraextra pointer
OutOutput stream
ExDictionaryDictionary for enumerators
SkipListSkip list for enumerators

Reimplemented in ClassRef< X >, ClassRef< BaseClass >, ClassPtr< X >, ClassPtr< BaseClass >, ClassPtr< VoxMethadata >, ClassPtr< BasicDistortion >, ClassPtr< OnePenStyle >, ClassPtr< CurvePrimitive >, ClassPtr< ModelPreview >, ClassPtr< BasePrim >, ClassArray< X >, ClassArray< TextItem >, ClassArray< BaseKnot >, ClassArray< IconicText >, ClassArray< BaseClass >, ClassArray< mitem >, ClassArray< PopupWindow >, ClassArray< OneQAItem >, ClassArray< LayerMaterial >, ClassArray< SplinePoint3D >, ClassArray< BaseNode >, ClassArray< ModelItem >, ClassArray< bcVec3 >, ClassArray< FacesCluster >, ClassArray< OneToolPreset >, ClassArray< OneVolumeTransform >, ClassArray< ItemsTree >, ClassArray< VolumeObject >, ClassArray< BasicDistortion >, ClassArray< Pt3D2 >, ClassArray< CurvElement2 >, ClassArray< ABOcTreeLevel >, ClassArray< FolderState >, ClassArray< my_test1 >, ClassArray< BaseWidget >, ClassArray< ExShaderParam >, ClassArray< GuideSection >, ClassArray< ShaderPreviewStrct >, ClassArray< BaseDrawingPrim >, ClassArray< OneFold >, ClassArray< RTUVSet >, ClassArray< ClassRef< BaseClass > >, ClassArray< StringsList >, ClassArray< MeasureElement >, ClassArray< OneRandomPen >, ClassArray< OnePreset >, ClassArray< ScrollParam >, ClassArray< CurveReference >, ClassArray< OneLayerInfo >, ClassArray< OneSubObject >, ClassArray< OneMaterial >, ClassArray< ImpUVSet2 >, ClassArray< RecoSample >, ClassArray< NaviEvent >, ClassArray< ExampleOfLoadSaveDataTo3BFileExtension::MyClassTest >, ClassArray< FolderRoot >, ClassArray< WindowPos >, ClassArray< RetopoGroup >, ClassArray< BaseEffectFlow >, ClassArray< FileEnabler >, ClassArray< One2DCurve >, ClassArray< VarStorage >, ClassArray< DbgLItem >, ClassArray< wCurvePoint >, ClassArray< OneMorphInfo >, ClassArray< psd_Layer >, ClassArray< SubFaceList >, ClassArray< MRenderTarget >, ClassArray< RenamePair >, ClassArray< SplinePoint3 >, ClassArray< DockLayoutElement >, ClassArray< Point3D >, ClassArray< CellsStorage >, ClassArray< CoreScriptTempItem >, ClassArray< JointPreview >, ClassArray< SplinePoint2 >, ClassArray< SplineCurve >, ClassArray< SubdWeights >, ClassArray< OneExportTexture >, ClassArray< DragNDropToolItem >, ClassArray< TempPt >, ClassArray< OneMtlInUVSet >, ClassArray< OneHotKey >, ClassArray< ExtraLight >, ClassArray< SphereOfInfluence >, ClassArray< ImpUV2 >, ClassArray< OneMtlLayer >, ClassArray< SplinePoint >, ClassArray< SliderState >, ClassArray< CustomLeftPanel >, ClassArray< cElement >, ClassArray< LwoNode >, ClassArray< ImpUVSet >, ClassArray< RetopoUVSet >, ClassArray< OneDrawnStroke >, ClassArray< LayerData >, ClassArray< CurvePrimitive >, ClassArray< KeptPolygon >, ClassArray< NodesCategory >, ClassArray< SymmetryState >, ClassArray< CurvedChunk >, ClassArray< BasePrim >, ClassArray< CameraShortcut >, ClassArray< VMapType >, CurveModifier, StringsList, and Delimiter.

Referenced by CurveModifier::SaveBin(), ClassArray< VMapType >::SaveBin(), and ClassPtr< BasePrim >::SaveBin().

virtual void BaseClass::SetParent ( BaseClass Parent)
virtualinherited

set parent recursively

Referenced by VoxTreeBranch::Add(), and ClassArray< VMapType >::ExpandWith().

void BaseClass::SetParents ( )
inherited

set parents to this for all child members

Referenced by CreateControlWithBaseClass().

void BaseClass::SetParentsSafe ( )
inherited

set parents to this for all child members, each child will be tested for validity

void VolumeObject::Shell ( )

Global operators.

References CreateIndexedStructure().

virtual bool BaseClass::ShouldSaveInShortForm ( )
inlinevirtualinherited

Return true if class should be saved in short form mandatory.

virtual void BaseClass::SimplySetParent ( BaseClass Parent)
virtualinherited

set parent directly to this, not affecting members

bool VolumeObject::ToRawMesh ( bool  Weld,
bool  OnlyThis,
comms::cMeshContainer mesh,
Matrix4D  SingleM,
bool  Optimize,
float  OptDegree = 0,
bool  CreateOnlyOptimizedMesh = false,
bool  OnlySel = false,
int  FixedPolycount = 0 
)
virtual void BaseClass::UpdateHash ( HashSummator S,
void *  data = nullptr,
void *  extra = nullptr 
)
virtualinherited

returns hash value dependent on data fields of this class

Parameters
dataData ptr pointer to data
extraExtra ptr pointer to methadata
Returns
Hash value returns some value dependent on the class inner data. Usually only serializable data influences on th return value.

Reimplemented in VoxTreeBranch, StringsList, and ItemsTree.

Referenced by ClassArray< VMapType >::CountObjects().

template<class Type >
bool BaseClass::valid ( ) const
inlineinherited

call it to check if this BaseClass pointer is valid

References BaseClass::pmutex, and BaseClass::presence.

Referenced by RegisterVoxHelper::clearScene(), and CreateControlWithBaseClass().

void VolumeObject::VoxelizePureGeometry ( bool  Manually,
bool  AsShell,
bool  tovox = true,
int  suggestedpoly = 0 
)

Member Data Documentation

DWORD BaseClass::_ClassMask
protectedinherited

Result of GetClassMask() written there. GetClassMask() is not const, so can't use it in const functions. The field introduced to use masking in const functions.

std_OnePoolType VolumeObject::apool

pool for VolumeCellAttrib

DWORD VolumeObject::ApproxColor

bot baking of approximate shader color

cList<tri_DWORD> VolumeObject::bkCells

Cells list to be passed to UndoQueue.

If count exceeds 18192 no more cells added, whole object considered as dirty.

Referenced by OneFacture::ApplyToChangedCells().

int VolumeObject::Border

border for dencity falloff in voxel objects, usually is 4

cStr VolumeObject::CacheName

Cache reference.

uni_hash<float,DWORD> VolumeObject::CavityMap

cavity for all vertices

bool VolumeObject::CompletelyRebuilt

this is for undo, it indicates that structure of volume changed drastically, almost no correstondence between old and new

Referenced by VoxelizePureGeometry().

std_OnePoolType VolumeObject::cpool

pool for VolumeCell

const char* BaseClass::CurrentSaveFile
staticinherited

If user triggers saving class to file, last filename stored there.

ShaderEstimator* VolumeObject::Est

estimate hader approximately

bool VolumeObject::HasTransparency

for render - nood to sort triangles or not

VolumeObject* VolumeObject::HiddenVolume

Hidden part of this volume, kept in VTree as well.

MeshHelper VolumeObject::IdxAllocator

Allows to allocate / free global indices for mesh represented by MeshInVCell.

Referenced by TopoDist::Create(), CreateIndexedStructure(), CreateIndexedStructure2(), VoxTreeBranch::ProcessItem(), and VoxelizePureGeometry().

bool VolumeObject::InCache
float VolumeObject::IsExternalLight = 0
static

1 for external light, 0 for panorama.

cList<SnapJoint> VolumeObject::Joints

Joints of all merged objects.

Referenced by AddAllJoints(), and AddJoint().

AABoundBox VolumeObject::LastDrawn

last drawn bound box of cells centers in local space

Vector4D VolumeObject::LightColor2
static

111 for external light, rgb for panorama.

cVec3i VolumeObject::MaxCell

max for bound box of cell indices, x,y,z

cVec3i VolumeObject::MinCell

min for bound box of cell indices, x,y,z

BakedLayersStorage* VolumeObject::OldColor

Color to be restored when volume will be turned back to surface mode.

Referenced by VoxTreeBranch::OnModifyControl(), VoxTreeBranch::ProcessItem(), VoxTreeBranch::UpdateHash(), and VoxelizePureGeometry().

BaseClass* BaseClass::ParentBC
protectedinherited

pointer to the parent class in the tree

float VolumeObject::PickAvgPlane

average plane position in picked radius

float VolumeObject::PickFarPlane

far plane position in picked radius

PickedPool VolumeObject::PickList

temporary storage for cells to operate

float VolumeObject::PickNearPlane

closest plane position in picked radius

float VolumeObject::PickPlane

plane position of picked center

std::mutex* BaseClass::pmutex
staticprotectedinherited

mutex for register_this / remove_this

Referenced by BaseClass::valid().

uni_hash<_empty, cPtrDiff, (1 << 18), 2048>* BaseClass::presence
staticprotectedinherited

each BaseClass registered in this list

Referenced by BaseClass::valid().

float VolumeObject::ScaleChange

How scale is changed when passed to proxy mode.

Referenced by VoxelizePureGeometry().

float VolumeObject::ScaleFactor

scale factor, it is like simplified transform from local to global space. If you need to get some distance approx in local space, divide it on ScaleFactor

Referenced by TopoDist::Create(), and Reproject().

int VolumeObject::SpaceID

Unique ID of the volume, same as VoxTreeBranch::SpaceID.

Matrix4D VolumeObject::TransformInv
bool VolumeObject::Visible

better refer visibility from VoxTreeBranch

Referenced by VoxTreeBranch::OnChangeMember().

ABOcTree VolumeObject::VoxOcTree

Represents OcTree structure for fast finding of volume cells.

std_OnePoolType VolumeObject::vpool

pool for voxel values, words


The documentation for this class was generated from the following files: