12#ifndef __RefinementUtilities_H
13#define __RefinementUtilities_H
113 std::vector<Gedim::GeometryUtilities::LinePolygonPositionResult::EdgeIntersection>
Cell1DsIntersection = {};
114 std::vector<Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit>
Cell1DsToSplit = {};
185 std::vector<Gedim::RefinementUtilities::RefinePolyhedron_Result::RefinedCell1D>
NewCell1DsIndex = {};
186 std::vector<Gedim::RefinementUtilities::RefinePolyhedron_Result::RefinedCell2D>
NewCell2DsIndex = {};
220 std::vector<Gedim::RefinementUtilities::RefinePolygon_Result::RefinedCell1D>
NewCell1DsIndex = {};
237 std::vector<Gedim::RefinementUtilities::RefinePolygon_UpdateNeighbour_Result::UpdatedCell2D>
UpdatedCell2Ds = {};
248 std::vector<Gedim::RefinementUtilities::RefinePolyhedron_UpdateNeighbour_Result::UpdatedCell3D>
UpdatedCell3Ds = {};
277 std::vector<Gedim::RefinementUtilities::Cell2Ds_GeometricData::Cell2D_GeometricData::StatusTypes>
Status;
291 std::vector<Gedim::RefinementUtilities::Cell2Ds_GeometricData::Cell1D_GeometricData::StatusTypes>
Status = {};
363 const unsigned int toEdge,
373 const unsigned int toEdge,
389 const Eigen::Vector3d ¢roid)
const;
392 const Eigen::Vector3d ¢roid,
393 const Eigen::Matrix3d &
inertia)
const;
Eigen column vector.
Definition Eigen_Array.hpp:23
The GeometryUtilities class intersects 3D segments.
Definition GeometryUtilities.hpp:37
PolygonTypes
Definition GeometryUtilities.hpp:51
The IMeshDAO (mesh data access object) class to read and write mesh data.
Definition IMeshDAO.hpp:24
MeshUtilities.
Definition MeshUtilities.hpp:23
RefinementUtilities.
Definition RefinementUtilities.hpp:25
Gedim::RefinementUtilities::RefinePolyhedron_Result RefinePolyhedronCell_ByPlane(const unsigned int &cell3DIndex, const Eigen::MatrixXd &cell3DVertices, const Eigen::MatrixXi &cell3DEdges, const Eigen::VectorXd &cell3DEdgesLength, const std::vector< Eigen::MatrixXi > &cell3DFaces, const std::vector< Eigen::MatrixXd > &cell3DFaces3DVertices, const std::vector< Eigen::MatrixXd > &cell3DFacesEdges3DTangent, const std::vector< Eigen::Vector3d > &cell3DFacesTranslation, const std::vector< Eigen::Matrix3d > &cell3DFacesRotationMatrix, const double &cell3DVolume, const Eigen::Vector3d &planeNormal, const Eigen::Vector3d &planeOrigin, const Eigen::Matrix3d &planeRotationMatrix, const Eigen::Vector3d &planeTranslation, Gedim::IMeshDAO &mesh) const
Refine Polyhedral Cell3D By Plane.
Definition RefinementUtilities3D.cpp:50
Gedim::RefinementUtilities::TetrahedronMaxEdgeDirection ComputeTetrahedronMaxEdgeDirection(const Eigen::MatrixXi &polyhedronEdges, const Eigen::VectorXd &edgesLength) const
Definition RefinementUtilities3D.cpp:18
Gedim::RefinementUtilities::PolygonDirection ComputePolygonMaxInertiaDirection(const Eigen::MatrixXd &unalignedVertices, const Eigen::VectorXd &unalignedEdgesLength, const Eigen::Vector3d ¢roid, const Eigen::Matrix3d &inertia) const
Definition RefinementUtilities2D.cpp:1022
Gedim::RefinementUtilities::RefinePolyhedron_UpdateNeighbour_Result RefinePolyhedronCell_UpdateFaceNeighbours(const unsigned int &cell3DIndex, const unsigned int &cell2DIndex, const unsigned int &newCell1DIndex, const std::vector< unsigned int > &splitCell1DsOriginalIndex, const std::vector< unsigned int > &splitCell1DsNewCell0DIndex, const std::vector< std::vector< unsigned int > > &splitCell1DsUpdatedIndices, const std::vector< unsigned int > &splitCell2DsIndex, const std::vector< std::vector< std::vector< bool > > > &cell3DsFacesEdgesDirection, std::map< unsigned int, unsigned int > &updatedCell2Ds, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities3D.cpp:424
Gedim::RefinementUtilities::Cell2Ds_GeometricData RefinePolygonCell_InitializeGeometricData(const Gedim::IMeshDAO &mesh) const
Compute the geometric data for all the mesh.
Definition RefinementUtilities2D.cpp:701
SplitCell1D_Result SplitCell1D_MiddlePoint(const unsigned int &cell1DIndex, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities.hpp:317
void RefineMesh2D(const std::vector< unsigned int > &cell2DsToRefineIndex, const double &cell1DsQualityWeight, const double &cell1DsAlignedWeight, Gedim::RefinementUtilities::Cell2Ds_GeometricData &meshGeometricData, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D_refine_triangles.cpp:301
Gedim::RefinementUtilities::SplitCell1D_Result SplitCell1D(const unsigned int &cell1DIndex, const Eigen::Vector3d &newVertexCoordinate, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities.cpp:26
bool SplitPolygon_IsAreaPositive(const Eigen::VectorXi &newCell2D_Indices, const Eigen::Matrix3d &cell2DRotation, const Eigen::Vector3d &cell2DTranslation, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:177
Gedim::RefinementUtilities::RefinePolygon_CheckResult RefinePolygonCell_CheckRefinement(const unsigned int &cell2DIndex, const Eigen::MatrixXd &cell2DVertices, const Eigen::Vector3d &lineTangent, const Eigen::Vector3d &lineOrigin, const std::vector< double > &cell2DsQuality, const std::vector< unsigned int > &cell1DsAligned, const double &cell1DsQualityWeight, const double &cell1DsAlignedWeight, const double &cell2DArea, const std::vector< Eigen::VectorXd > &cell2DsEdgesLength, const std::vector< bool > &cell2DEdgesDirection, Gedim::IMeshDAO &mesh) const
Refine Polygon Cell2D By Direction.
Definition RefinementUtilities2D.cpp:1200
Gedim::RefinementUtilities::RefinePolygon_Result RefinePolygonCell_ByDirection(const unsigned int &cell2DIndex, const Gedim::GeometryUtilities::PolygonTypes &cell2DPolygonType, const Gedim::GeometryUtilities::PolygonTypes &cell2DUnalignedPolygonType, const Eigen::MatrixXd &cell2DVertices, const Gedim::RefinementUtilities::RefinePolygon_CheckResult &cell2DCheckToRefine, const Eigen::Matrix3d &cell2DRotation, const Eigen::Vector3d &cell2DTranslation, const std::vector< bool > &cell2DEdgesDirection, const bool &extendToNeighbours, Gedim::IMeshDAO &mesh) const
Refine Polygon Cell2D By Direction.
Definition RefinementUtilities2D.cpp:1332
Gedim::RefinementUtilities::CheckSplitType_Result SplitPolygon_CheckSplitType(const Gedim::GeometryUtilities::PolygonTypes &cell2DPolygonType, const Gedim::GeometryUtilities::PolygonTypes &cell2DUnalignedPolygonType, const Eigen::MatrixXd &cell2DVertices, const Gedim::RefinementUtilities::RefinePolygon_CheckResult &cell2DCheckToRefine) const
Definition RefinementUtilities2D.cpp:18
unsigned int UpdateCell2D_NewVertex(const unsigned int cell2DIndex, const bool cell2DEdgeDirection, const unsigned int cell2DEdgePosition, const std::vector< unsigned int > &newCell1DsIndex, const unsigned int newCell0DIndex, Gedim::IMeshDAO &mesh) const
update cell2DIndex with a new splitted edge cell1DIndex by newCell0DIndex
Definition RefinementUtilities.cpp:50
Gedim::RefinementUtilities::SplitPolygon_Result SplitPolygon_NewVertexFrom(const unsigned int cell2DIndex, const unsigned int cell2DNumVertices, const unsigned int fromEdge, const unsigned int toVertex, const Eigen::Matrix3d &cell2DRotation, const Eigen::Vector3d &cell2DTranslation, const unsigned int fromNewCell0DIndex, const std::vector< unsigned int > &fromSplitCell1DsIndex, const bool &fromEdgeDirection, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:310
Gedim::RefinementUtilities::SplitPolygon_Result SplitPolygon_NewVertexTo(const unsigned int cell2DIndex, const unsigned int cell2DNumVertices, const unsigned int fromVertex, const unsigned int toEdge, const Eigen::Matrix3d &cell2DRotation, const Eigen::Vector3d &cell2DTranslation, const unsigned int toNewCell0DIndex, const std::vector< unsigned int > &toSplitCell1DsIndex, const bool &toEdgeDirection, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:428
void RefinePolygonCell_UpdateGeometricData(const Gedim::IMeshDAO &mesh, const std::vector< unsigned int > &cell2DsIndex, Gedim::RefinementUtilities::Cell2Ds_GeometricData &geometricData) const
Update the geometric data for only cell2Ds.
Definition RefinementUtilities2D.cpp:754
Gedim::RefinementUtilities::TriangleMaxEdgeDirection ComputeTriangleMaxEdgeDirection(const Eigen::VectorXd &edgesLength) const
Definition RefinementUtilities2D.cpp:670
Gedim::RefinementUtilities::PolygonDirection ComputePolygonMaxDiameterDirection(const Eigen::MatrixXd unalignedVertices, const Eigen::Vector3d ¢roid) const
Definition RefinementUtilities2D.cpp:1006
Gedim::RefinementUtilities::RefinePolyhedron_UpdateNeighbour_Result RefinePolyhedronCell_UpdateEdgeNeighbours(const unsigned int &cell3DIndex, const unsigned int &cell1DIndex, const std::vector< unsigned int > &newCell1DsIndex, const unsigned int &newCell0DIndex, const std::vector< std::vector< std::vector< bool > > > &cell3DsFacesEdgesDirection, std::map< unsigned int, unsigned int > &updatedCell2Ds, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities3D.cpp:539
bool SplitPolygon_CheckIsToSplit_Relaxed(const Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit &cell1DSplitOne, const Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit &cell1DSplitTwo) const
Definition RefinementUtilities2D.cpp:163
Gedim::RefinementUtilities::RefinePolygon_Result RefineTriangleCell_ByEdge(const unsigned int &cell2DIndex, const unsigned int &edgeIndex, const unsigned int &oppositeVertexIndex, const std::vector< bool > &cell2DEdgesDirection, const double &cell2DArea, const Eigen::Matrix3d &cell2DRotation, const Eigen::Vector3d &cell2DTranslation, const Eigen::VectorXd &cell2DEdgesLength, Gedim::IMeshDAO &mesh) const
Refine Triangle Cell2D By Edge.
Definition RefinementUtilities2D.cpp:1066
bool AreVerticesAligned(const Eigen::MatrixXd &cell2DVertices, const unsigned int fromVertex, const unsigned int toVertex) const
Definition RefinementUtilities.cpp:87
Gedim::RefinementUtilities::RefinePolygon_UpdateNeighbour_Result RefineTriangleCell_UpdateNeighbours(const unsigned int &cell2DIndex, const unsigned int &cell1DIndex, const unsigned int &newCell0DIndex, const std::vector< unsigned int > &splitCell1DsIndex, const bool &cell2DEdgeDirection, const std::vector< Eigen::Matrix3d > &cell2DsRotation, const std::vector< Eigen::Vector3d > &cell2DsTranslation, Gedim::IMeshDAO &mesh) const
Update Cell1D neighbours of refined triangle by edge with refine by edge.
Definition RefinementUtilities2D.cpp:1140
std::vector< unsigned int > refine_mesh_2D_triangles(const Gedim::GeometryUtilities &geometry_utilities, const std::vector< unsigned int > &cell2DsToRefineIndex, Gedim::RefinementUtilities::Cell2Ds_GeometricData &meshGeometricData, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D_refine_triangles.cpp:18
~RefinementUtilities()
Definition RefinementUtilities.cpp:22
Gedim::RefinementUtilities::RefinePolygon_UpdateNeighbour_Result RefinePolygonCell_UpdateNeighbours(const unsigned int &cell2DIndex, const unsigned int &cell1DIndex, const unsigned int &newCell0DIndex, const std::vector< unsigned int > &splitCell1DsIndex, const std::vector< std::vector< bool > > &cell2DsEdgesDirection, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:1696
Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit RefinePolygonCell_IsCell1DToSplit(const unsigned int &cell1DIndex, const unsigned int &cell2DIndex, const Gedim::GeometryUtilities::LinePolygonPositionResult::EdgeIntersection &edgeIntersection, const std::vector< Eigen::VectorXd > &cell2DsEdgesLength, const double &cell1DsQualityWeight, const double &cell1DsAlignedWeight, const std::vector< double > &cell2DsQuality, const std::vector< unsigned int > &cell1DsAligned, const Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:866
bool SplitPolygon_CheckIsNotToExtend(const Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit &cell1DSplitOne, const Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit &cell1DSplitTwo) const
Definition RefinementUtilities2D.cpp:141
Gedim::MeshUtilities::MeshGeometricData2D ConvertRefinementGeometricData_to_MeshGeometricData(const Gedim::RefinementUtilities::Cell2Ds_GeometricData &ref_mesh_geometric_data, const IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:717
Gedim::RefinementUtilities::SplitPolygon_Result SplitPolygon_NewVertices(const unsigned int cell2DIndex, const unsigned int cell2DNumVertices, const unsigned int fromEdge, const unsigned int toEdge, const Eigen::Matrix3d &cell2DRotation, const Eigen::Vector3d &cell2DTranslation, const unsigned int fromNewCell0DIndex, const unsigned int toNewCell0DIndex, const std::vector< unsigned int > &fromSplitCell1DsIndex, const std::vector< unsigned int > &toSplitCell1DsIndex, const bool &fromEdgeDirection, const bool &toEdgeDirection, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:543
Gedim::RefinementUtilities::SplitPolygon_Result SplitPolygon_NoNewVertices(const unsigned int cell2DIndex, const unsigned int cell2DNumVertices, const unsigned int fromVertex, const unsigned int toVertex, const Eigen::Matrix3d &cell2DRotation, const Eigen::Vector3d &cell2DTranslation, Gedim::IMeshDAO &mesh) const
Definition RefinementUtilities2D.cpp:205
Definition Eigen_Array.cpp:22
Definition GeometryUtilities.hpp:621
Definition MeshUtilities.hpp:149
Definition RefinementUtilities.hpp:281
std::vector< unsigned int > Aligned
Definition RefinementUtilities.hpp:290
unsigned int MaxAligned
Definition RefinementUtilities.hpp:289
StatusTypes
Definition RefinementUtilities.hpp:283
std::vector< Gedim::RefinementUtilities::Cell2Ds_GeometricData::Cell1D_GeometricData::StatusTypes > Status
Definition RefinementUtilities.hpp:291
Definition RefinementUtilities.hpp:254
std::vector< Eigen::VectorXd > UnalignedEdgesLength
Definition RefinementUtilities.hpp:272
StatusTypes
Definition RefinementUtilities.hpp:256
std::vector< Eigen::MatrixXd > EdgesNormal
Definition RefinementUtilities.hpp:267
std::vector< Eigen::Vector3d > Centroid
Definition RefinementUtilities.hpp:265
std::vector< std::vector< unsigned int > > UnalignedVerticesIndex
Definition RefinementUtilities.hpp:262
std::vector< std::vector< bool > > EdgesDirection
Definition RefinementUtilities.hpp:266
std::vector< double > InRadius
Definition RefinementUtilities.hpp:275
std::vector< Eigen::VectorXd > EdgesLength
Definition RefinementUtilities.hpp:268
std::vector< Gedim::RefinementUtilities::Cell2Ds_GeometricData::Cell2D_GeometricData::StatusTypes > Status
Definition RefinementUtilities.hpp:277
std::vector< Eigen::Matrix3d > Inertia
Definition RefinementUtilities.hpp:270
std::vector< Eigen::VectorXd > CentroidEdgesDistance
Definition RefinementUtilities.hpp:273
std::vector< double > Quality
Definition RefinementUtilities.hpp:276
std::vector< Eigen::VectorXd > CentroidVerticesDistance
Definition RefinementUtilities.hpp:274
std::vector< double > Area
Definition RefinementUtilities.hpp:264
std::vector< std::vector< Eigen::Matrix3d > > Triangulations
Definition RefinementUtilities.hpp:269
std::vector< Eigen::MatrixXd > Vertices
Definition RefinementUtilities.hpp:263
std::vector< Eigen::MatrixXd > UnalignedVertices
Definition RefinementUtilities.hpp:271
Definition RefinementUtilities.hpp:252
Gedim::RefinementUtilities::Cell2Ds_GeometricData::Cell1D_GeometricData Cell1Ds
Definition RefinementUtilities.hpp:294
Gedim::RefinementUtilities::Cell2Ds_GeometricData::Cell2D_GeometricData Cell2Ds
Definition RefinementUtilities.hpp:295
Definition RefinementUtilities.hpp:120
Gedim::RefinementUtilities::CheckSplitType_Result::SplitTypes Type
Definition RefinementUtilities.hpp:132
std::array< unsigned int, 2 > NoNewVerticesIndex
valid only for NoNewVertices type
Definition RefinementUtilities.hpp:131
SplitTypes
Definition RefinementUtilities.hpp:122
Definition RefinementUtilities.hpp:46
std::vector< double > Cell1DsQuality
Definition RefinementUtilities.hpp:48
std::vector< double > Cell2DsQuality
Definition RefinementUtilities.hpp:47
Definition RefinementUtilities.hpp:40
Eigen::Vector3d LineTangent
Definition RefinementUtilities.hpp:42
Eigen::Vector3d LineOrigin
Definition RefinementUtilities.hpp:41
Definition RefinementUtilities.hpp:83
unsigned int Cell2DEdgeIndex
Definition RefinementUtilities.hpp:107
bool IsLocalQualityEnough
Definition RefinementUtilities.hpp:100
bool IsAlignedRespect
Definition RefinementUtilities.hpp:104
bool IsIntersectionInside
Definition RefinementUtilities.hpp:98
std::vector< bool > IsNeighQualityEnough
Definition RefinementUtilities.hpp:102
bool IsToSplit
Definition RefinementUtilities.hpp:106
bool IsQualityEnough
Definition RefinementUtilities.hpp:101
Types
Definition RefinementUtilities.hpp:85
@ OnlyLocalQualityNotEnough
@ OnlyNeighAlignedNotRespect
@ OnlyNeighQualityNotEnough
@ OnlyLocalAlignedNotRespect
std::vector< bool > IsNeighAlignedRespect
Definition RefinementUtilities.hpp:105
bool IsLocalAlignedRespect
Definition RefinementUtilities.hpp:103
Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit::Types Type
Definition RefinementUtilities.hpp:108
bool IsEdgeLengthEnough
Definition RefinementUtilities.hpp:99
Definition RefinementUtilities.hpp:72
std::vector< Gedim::RefinementUtilities::RefinePolygon_CheckResult::Cell1DToSplit > Cell1DsToSplit
Definition RefinementUtilities.hpp:114
std::vector< Gedim::GeometryUtilities::LinePolygonPositionResult::EdgeIntersection > Cell1DsIntersection
Definition RefinementUtilities.hpp:113
Gedim::RefinementUtilities::RefinePolygon_CheckResult::ResultTypes ResultType
Definition RefinementUtilities.hpp:115
ResultTypes
Definition RefinementUtilities.hpp:74
@ Cell2DSplitUnderTolerance
@ SplitDirectionNotInsideCell2D
std::vector< unsigned int > Cell1DsIndex
Definition RefinementUtilities.hpp:112
Definition RefinementUtilities.hpp:203
std::vector< unsigned int > NewCell1DsIndex
Definition RefinementUtilities.hpp:213
Types
Definition RefinementUtilities.hpp:205
unsigned int OriginalCell1DIndex
Definition RefinementUtilities.hpp:214
Gedim::RefinementUtilities::RefinePolygon_Result::RefinedCell1D::Types Type
Definition RefinementUtilities.hpp:211
unsigned int NewCell0DIndex
Definition RefinementUtilities.hpp:215
unsigned int OriginalCell2DEdgeIndex
Definition RefinementUtilities.hpp:216
Definition RefinementUtilities.hpp:191
std::vector< unsigned int > NewCell0DsIndex
Definition RefinementUtilities.hpp:219
std::vector< unsigned int > NewCell2DsIndex
Definition RefinementUtilities.hpp:221
Gedim::RefinementUtilities::CheckSplitType_Result::SplitTypes SplitType
Definition RefinementUtilities.hpp:223
std::vector< Gedim::RefinementUtilities::RefinePolygon_Result::RefinedCell1D > NewCell1DsIndex
Definition RefinementUtilities.hpp:220
ResultTypes
Definition RefinementUtilities.hpp:193
@ SplitQualityCheckCell2DFailed
@ Cell2DSplitUnderTolerance
@ SplitDirectionNotInsideCell2D
Gedim::RefinementUtilities::RefinePolygon_Result::ResultTypes ResultType
Definition RefinementUtilities.hpp:225
Definition RefinementUtilities.hpp:232
unsigned int OriginalCell2DIndex
Definition RefinementUtilities.hpp:233
unsigned int NewCell2DIndex
Definition RefinementUtilities.hpp:234
Definition RefinementUtilities.hpp:230
std::vector< Gedim::RefinementUtilities::RefinePolygon_UpdateNeighbour_Result::UpdatedCell2D > UpdatedCell2Ds
Definition RefinementUtilities.hpp:237
Definition RefinementUtilities.hpp:148
Gedim::RefinementUtilities::RefinePolyhedron_Result::RefinedCell1D::Types Type
Definition RefinementUtilities.hpp:156
std::vector< unsigned int > NewCell1DsIndex
Definition RefinementUtilities.hpp:158
unsigned int OriginalCell3DEdgeIndex
Definition RefinementUtilities.hpp:161
unsigned int NewCell0DIndex
Definition RefinementUtilities.hpp:160
unsigned int OriginalCell1DIndex
Definition RefinementUtilities.hpp:159
Types
Definition RefinementUtilities.hpp:150
Definition RefinementUtilities.hpp:165
unsigned int OriginalCell3DFaceIndex
Definition RefinementUtilities.hpp:179
std::vector< unsigned int > NewCell1DsPosition
Position in NewCell1DsIndex array.
Definition RefinementUtilities.hpp:178
unsigned int OriginalCell2DIndex
Definition RefinementUtilities.hpp:176
unsigned int NewCell1DIndex
Definition RefinementUtilities.hpp:177
Gedim::RefinementUtilities::RefinePolyhedron_Result::RefinedCell2D::Types Type
Definition RefinementUtilities.hpp:173
std::vector< unsigned int > NewCell2DsIndex
Definition RefinementUtilities.hpp:175
Types
Definition RefinementUtilities.hpp:167
Definition RefinementUtilities.hpp:137
std::vector< Gedim::RefinementUtilities::RefinePolyhedron_Result::RefinedCell1D > NewCell1DsIndex
Definition RefinementUtilities.hpp:185
Gedim::RefinementUtilities::RefinePolyhedron_Result::ResultTypes ResultType
Definition RefinementUtilities.hpp:182
ResultTypes
Definition RefinementUtilities.hpp:139
@ Cell3DSplitUnderTolerance
std::vector< Gedim::RefinementUtilities::RefinePolyhedron_Result::RefinedCell2D > NewCell2DsIndex
Definition RefinementUtilities.hpp:186
std::vector< unsigned int > NewCell3DsIndex
Definition RefinementUtilities.hpp:187
std::vector< unsigned int > NewCell0DsIndex
Definition RefinementUtilities.hpp:184
Definition RefinementUtilities.hpp:243
unsigned int NewCell3DIndex
Definition RefinementUtilities.hpp:245
unsigned int OriginalCell3DIndex
Definition RefinementUtilities.hpp:244
Definition RefinementUtilities.hpp:241
std::vector< Gedim::RefinementUtilities::RefinePolyhedron_UpdateNeighbour_Result::UpdatedCell3D > UpdatedCell3Ds
Definition RefinementUtilities.hpp:248
Definition RefinementUtilities.hpp:52
std::vector< unsigned int > NewCell1DsIndex
Definition RefinementUtilities.hpp:54
unsigned int NewCell0DIndex
Definition RefinementUtilities.hpp:53
Definition RefinementUtilities.hpp:58
std::vector< unsigned int > NewCell2DsIndex
Definition RefinementUtilities.hpp:68
Types
Definition RefinementUtilities.hpp:60
Gedim::RefinementUtilities::SplitPolygon_Result::Types Type
Definition RefinementUtilities.hpp:66
unsigned int NewCell1DIndex
Definition RefinementUtilities.hpp:67
Definition RefinementUtilities.hpp:34
unsigned int MaxEdgeIndex
Definition RefinementUtilities.hpp:35
std::array< unsigned int, 2 > OppositeVerticesIndex
Definition RefinementUtilities.hpp:36
Definition RefinementUtilities.hpp:28
unsigned int MaxEdgeIndex
Definition RefinementUtilities.hpp:29
unsigned int OppositeVertexIndex
Definition RefinementUtilities.hpp:30