Class RegionOperator
This class automatically extracts a submesh from a mesh, and can re-insert it after you have
edited it, as long as you have not messed up the boundary
[TODO] Nearly all the code here is duplicated from RegionRemesher. Maybe this could be a base class for that?
[TODO] ReinsertSubToBaseMapT is not returned by the MeshEditor.ReinsertSubmesh, instead we are
trying to guess it here, by making some assumptions about what happens. It works for now, but
it would better if MeshEditor returned this information.
Inheritance
RegionOperator
Namespace: g3
Assembly: cs.temp.dll.dll
Syntax
public class RegionOperator
Constructors
RegionOperator(DMesh3, IEnumerable<Int32>, Action<DSubmesh3>)
Declaration
public RegionOperator(DMesh3 mesh, IEnumerable<int> regionTris, Action<DSubmesh3> submeshConfigF = null)
Parameters
RegionOperator(DMesh3, Int32[], Action<DSubmesh3>)
Declaration
public RegionOperator(DMesh3 mesh, int[] regionTris, Action<DSubmesh3> submeshConfigF = null)
Parameters
Fields
BaseMesh
Declaration
Field Value
Region
Declaration
Field Value
ReinsertDuplicateTriBehavior
Declaration
public MeshEditor.DuplicateTriBehavior ReinsertDuplicateTriBehavior
Field Value
ReinsertSubToBaseMapT
Declaration
public IndexMap ReinsertSubToBaseMapT
Field Value
ReinsertSubToBaseMapV
Declaration
public IndexMap ReinsertSubToBaseMapV
Field Value
Properties
CurrentBaseTriangles
list of sub-region triangles. This is either the input regionTris,
or the submesh triangles after they are re-inserted.
Declaration
public int[] CurrentBaseTriangles { get; }
Property Value
Methods
BackPropropagate(Boolean)
Declaration
public bool BackPropropagate(bool bAllowSubmeshRepairs = true)
Parameters
Type |
Name |
Description |
Boolean |
bAllowSubmeshRepairs |
|
Returns
BackPropropagateVertices(Boolean)
Declaration
public bool BackPropropagateVertices(bool bRecomputeBoundaryNormals = false)
Parameters
Type |
Name |
Description |
Boolean |
bRecomputeBoundaryNormals |
|
Returns
CurrentBaseInteriorVertices()
find base-mesh interior vertices of region (ie does not include region boundary vertices)
Declaration
public HashSet<int> CurrentBaseInteriorVertices()
Returns
Type |
Description |
HashSet<Int32> |
|
RepairPossibleNonManifoldEdges()
Declaration
public void RepairPossibleNonManifoldEdges()
SetSubmeshGroupID(Int32)
set group ID for entire submesh
Declaration
public void SetSubmeshGroupID(int gid)
Parameters
Type |
Name |
Description |
Int32 |
gid |
|