MeshLib
 
Loading...
Searching...
No Matches
MR::GridSettings Struct Reference

settings defining regular grid, where each quadrangular cell is split on two triangles in one of two ways More...

#include <MRGridSettings.h>

Public Types

enum class  EdgeType { Horizontal , Vertical , DiagonalA , DiagonalB }
 
enum class  TriType { Lower , Upper }
 

Public Attributes

Vector2i dim
 
BMap< VertId, size_t > vertIds
 
BMap< UndirectedEdgeId, size_t > uedgeIds
 
BMap< FaceId, size_t > faceIds
 

Detailed Description

settings defining regular grid, where each quadrangular cell is split on two triangles in one of two ways

Member Enumeration Documentation

◆ EdgeType

enum class MR::GridSettings::EdgeType
strong
Enumerator
Horizontal 
Vertical 
DiagonalA 
DiagonalB 

◆ TriType

enum class MR::GridSettings::TriType
strong
Enumerator
Lower 
Upper 

Member Data Documentation

◆ dim

Vector2i MR::GridSettings::dim

the number of cells in X and Y dimensions; the number of vertices will be at most (X+1)*(Y+1)

◆ faceIds

BMap<FaceId, size_t> MR::GridSettings::faceIds

grid coordinates of lower-left vertex and triangle-type to faceId; all 3 vertices and all 3 edges of valid face must be valid as well; index is 2 * ( x + y * settings.dim.x ) + triType

◆ uedgeIds

BMap<UndirectedEdgeId, size_t> MR::GridSettings::uedgeIds

grid coordinates of lower-left vertex and edge-type to edgeId with the origin in this vertex; both vertices of valid edge must be valid as well; index is 4 * ( x + y * ( settings.dim.x + 1 ) ) + edgeType

◆ vertIds

BMap<VertId, size_t> MR::GridSettings::vertIds

grid coordinates to vertex Id; invalid vertex Id means that this vertex is missing in grid; index is x + y * ( settings.dim.x + 1 )


The documentation for this struct was generated from the following file: