![]() For instance a cycle designed to answer the question, “what edges share this vertex” would have the vertex itself as the base and its edges as the nodes of the cycle. ![]() The base of each cycle is the entity which the cycle is designed to answer adjacency queries for. The connections between the elements are defined by loops around topological entities, referred to as cycles. These lists are conceptually the same as those found in other boundary representations such as half-edge, radial edge and partial entity and like these other representations each topological entity is itself a node in the cycles to which it belongs so the memory requirements for storing adjacency information remains minimal. Persistent adjacency information is stored using a system of double linked circular lists which maintain the relationships among topological entities. The second through fourth features all depend upon the first, and as such the system which provides this facility is the foundation of the bmesh data structure. Trivially represents any non-manifold condition including wire edges.Loops store per-face-vertex data (amongst other things outlined later in this document).įaces link to a loop in the loop cycle, the circular linked list of loops defining the boundary of the face.Įach element (vertex/edge/loop/face) in a mesh has an associated persistent bitfield, these flags store information such as the visibility of the entity, or its selection state.īMesh structure has the following features: f - pointer to the face associated with this loop.v - pointer to the vertex at the start of the edge (where "start" is defined by CCW order).Each loop logically corresponds to an edge, though the loop is local to a single face so there will usually be more than one loop per edge (except at boundary edges of the surface). Loops define the boundary loop of a face. Vertices store a coordinate and link to an edge in the disk cycle of the vertex (covered below).Įdges represent a connection between two vertices, but also store a link to a loop in the radial cycle of the edge (covered below). Loops (stores per-face-vertex data, uvs, vcols, etc).Īt the most basic level, BMesh stores topology in four main element structures: It is comparable to the Radial Edge Structure. It was designed to replace the current, limited EditMesh structure, solving many of the design limitations and maintainance issues of EditMesh. BMesh is a non-manifold boundary representation.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |