-
首页
-
C4D R23.110 C++ SDK
#include <celldata.h>
详细描述
CellData
struct is a datacontainer that represents a single Voronoi Cell.
私有成员函数
|
void
|
MarkAllUsedPoints
(
BaseArray
<
Int
> &pointUseless,
Int
mark=
NOTOK
)
|
void
|
MarkAllDoublePoints
(
BaseArray
<
Int
> &pointUseless,
Bool
&pointRemoved,
Float
epsilonOverride=0.0)
|
Result
<
Bool
>
|
MarkAllColinearPoints
(
BaseArray
<
Int
> &pointUseless,
Bool
&pointRemoved,
Float
epsilonOverride=0.0)
|
Result
<
Bool
>
|
MarkAllUselessPoints
(
BaseArray
<
Int
> &pointUseless,
Bool
&pointRemoved)
|
Result
<
Bool
>
|
ReCreateCellWithOnlyUsefulPoints
(
BaseArray
<
Int
> &pointUseless)
|
Result
< void >
|
CalcAllFaceNormals
(
BaseArray
<
向量
> &faceNormals)
|
Bool
|
SetupReverseEdges
()
|
Result
< void >
|
CleanupUnusedPoints
()
|
Bool
|
TestCurrentDataStructure
(
BaseArray
<
Char
> &faceRemoved)
|
Result
< void >
|
ExpandCellByValue
(const
BaseArray
<
向量
> &planeNormals, const
BaseArray
<
Int32
> &edgeToFaceBelonging,
Float
offset,
BaseArray
<
向量
> &pointDisplacements)
|
Result
<
Bool
>
|
ShrinkCellByValue
(const
BaseArray
<
向量
> &planeNormals,
Float
offset)
|
Result
<
Bool
>
|
CutCellOnPlane
(const
Pair
<
向量
,
向量
> &plane,
Int32
planeNeighborIndex=
NOTOK
)
|
Result
<
Bool
>
|
CutFaceOnPlane
(
Int
faceIndex, const
Pair
<
向量
,
向量
> &plane, const
BaseArray
<
Float
> &pointToCutPlaneDistance, const
BaseArray
<
Int
> &edgeIntesection, const
BaseArray
<
Int
> &pointTranslateMap,
BaseArray
<
CellEdge
> &newEdges,
BaseArray
<
CellEdge
> &newFaceEdges)
|
Result
<
Bool
>
|
ProcessInsideFaceAndAddToEdges
(const
BaseArray
<
CellEdge
> &newFaceEdges,
Int
pointCount,
BaseArray
<
CellEdge
> &newEdges)
|
Result
<
Int
>
|
IntersectEdgeOnPlane
(const
Pair
<
向量
,
向量
> &planeBaseArray,
Int
edgeIndex,
BaseArray
<
向量
> &newPoints)
|
Result
< void >
|
MergePointsInCutData
(
BaseArray
<
向量
> &newPoints,
BaseArray
<
CellEdge
> &newEdges,
BaseArray
<
Int
> &newFaces,
BaseArray
<
CellEdge
> &newFaceEdges)
|
Result
< void >
|
RemoveIsolatedPoints
()
|
Result
< void >
|
FusePoints
(
BaseArray
<
Int
> &affectedPoints)
|
Result
< void >
|
RemoveFace
(
Int
faceIndex,
BaseArray
<
Int
> &affectedPoints)
|
构造函数 & 析构函数文档编制
◆
CellData()
[1/2]
◆
CellData()
[2/2]
◆
~CellData()
成员函数文档编制
◆
MAXON_DISALLOW_COPY_AND_ASSIGN()
MAXON_DISALLOW_COPY_AND_ASSIGN
|
(
|
CellData
|
|
)
|
|
◆
MAXON_OPERATOR_MOVE_ASSIGNMENT()
MAXON_OPERATOR_MOVE_ASSIGNMENT
|
(
|
CellData
|
|
)
|
|
◆
CopyFrom()
Copies the contents of src into this object.
-
参数
-
[in]
|
src
|
The object to copy from.
|
[in]
|
resizeFlags
|
Resize flag for collections.
|
-
返回
-
OK on success.
◆
Reset()
Resets this cell to an empty cell.
◆
Flush()
Resets this cell to an empty cell (keeps memory).
◆
ScaleCell()
Scales the current cell by a specific value.
-
参数
-
[in]
|
scaleValue
|
the amout the cell will be scaled by.
|
-
返回
-
if the scaling succeded.
◆
FixGeometry()
This cell checks the current cell data structure and optimizes it.
-
返回
-
true if everything worked out, otherwise false.
◆
GetVertices()
[1/2]
Gets the vertex list of this cell (writable).
-
返回
-
Reference to vertex array.
◆
GetEdges()
[1/2]
Gets the edge list of this cell (writable).
-
返回
-
Reference to edge array.
◆
GetFaces()
[1/2]
Gets the face list of this cell (writable).
-
返回
-
Reference to face array.
◆
GetAdjacentCells()
[1/2]
Gets the adjacent cell list of this cell (writable).
-
返回
-
Reference to the adjacent cell array.
◆
GetVertices()
[2/2]
Gets the vertex list of this cell (not writable).
-
返回
-
Constant reference to vertex array.
◆
GetEdges()
[2/2]
Gets the edge list of this cell (not writable).
-
返回
-
Constant reference to edge array.
◆
GetFaces()
[2/2]
Gets the face list of this cell (not writable).
-
返回
-
Constant reference to face array.
◆
GetAdjacentCells()
[2/2]
Gets the adjacent cell list of this cell (not writable).
-
返回
-
Constant reference to adjacent cell array.
◆
IsComplex()
Returns if this cell is complex (most likely not convex)
-
返回
-
Reference to face array.
◆
TestPointWithCell()
Bool
TestPointWithCell
|
(
|
const
向量
&
|
point
|
)
|
const
|
Tests if a passed point is inside of the cell.
-
参数
-
[in]
|
point
|
Point to test if it is inside.
|
-
返回
-
True if point is inside cell, otherwise false.
◆
MergeCells()
Merges another cell into this one.
-
参数
-
[in]
|
thisCellFaces
|
The faces of this cell that should be removed.
|
[in]
|
neighbourCell
|
The other cell to fuse into this one.
|
[in]
|
otherCellFaces
|
The faces of the other cell to remove.
|
-
返回
-
OK on success.
◆
FuseCells()
Fuses another cell into this one. The wall between the cells is removed if they are neighbors.
-
参数
-
[in]
|
thisCellIndex
|
The external index of this cell.
|
[in]
|
neighbourCell
|
The neighbor cell that should be fused.
|
[in]
|
otherCellIndex
|
The external index of the neighbor cell.
|
-
返回
-
OK on success.
◆
CreateCellFaceNormal()
向量
CreateCellFaceNormal
|
(
|
Int
|
faceIndex
|
)
|
const
|
Calculates the Normal of a pointloop face of the cell.
-
参数
-
[in]
|
faceIndex
|
The index of the cell to calculate the normal for.
|
-
返回
-
The normal of the face.
◆
AddCellData()
Adds the data of a different cell to this one. Indices are translated.
-
参数
-
[in]
|
otherCell
|
The other cell whose data should be added
|
-
返回
-
OK on success.
◆
GetBoundingBox()
Range
<
向量
> GetBoundingBox
|
(
|
|
)
|
const
|
Calculates and returns the Axis Aligned Bounding Box of the cell.
-
返回
-
The Bounding Box of the cell
◆
MarkAllUsedPoints()
◆
MarkAllDoublePoints()
void MarkAllDoublePoints
|
(
|
BaseArray
<
Int
> &
|
pointUseless
,
|
|
|
Bool
&
|
pointRemoved
,
|
|
|
Float
|
epsilonOverride
=
0.0
|
|
)
|
|
|
|
private
|
◆
MarkAllColinearPoints()
◆
MarkAllUselessPoints()
◆
ReCreateCellWithOnlyUsefulPoints()
◆
CalcAllFaceNormals()
◆
SetupReverseEdges()
Bool
SetupReverseEdges
|
(
|
|
)
|
|
|
private
|
◆
CleanupUnusedPoints()
Result
<void> CleanupUnusedPoints
|
(
|
|
)
|
|
|
private
|
◆
TestCurrentDataStructure()
◆
ExpandCellByValue()
◆
ShrinkCellByValue()
◆
CutCellOnPlane()
◆
CutFaceOnPlane()
◆
ProcessInsideFaceAndAddToEdges()
◆
IntersectEdgeOnPlane()
◆
MergePointsInCutData()
◆
RemoveIsolatedPoints()
Result
<void> RemoveIsolatedPoints
|
(
|
|
)
|
|
|
private
|
◆
FusePoints()
◆
RemoveFace()
Friends And Related Function Documentation
◆
Voronoi3DImpl
friend class Voronoi3DImpl
|
friend
|
Member Data Documentation
◆
_verticesPreIndex
◆
_vertices
◆
_edges
◆
_faces
◆
_adjacentCell
◆
_isComplex