273 lines
7.4 KiB
Markdown
273 lines
7.4 KiB
Markdown
|
|
---
|
|||
|
|
GENERATOR: 'Mozilla/4.05C-SGI [en] (X11; I; IRIX64 6.5 IP28) [Netscape]'
|
|||
|
|
---
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/arrow2.gif">"30"
|
|||
|
|
"30"](http://www.ees.lanl.gov/staff/rao/mstkla/mstkla.md#MESH%20VERTEX:) <img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/arrow3.gif">"30"
|
|||
|
|
"30"](http://www.ees.lanl.gov/staff/rao/mstkla/MeshEdge.md) <img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/arrow4.gif">"30"
|
|||
|
|
"30"](http://www.ees.lanl.gov/staff/rao/mstkla/GenRegion.md)
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
**MESH VERTEX OPERATORS**
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*int* **MV\_Number**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
Return an ID number for the mesh vertex.
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*VType* **MV\_Type**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
Return the mesh vertex type. Most useful in checking if a mesh vertex
|
|||
|
|
|
|||
|
|
has been deleted or if it is a parent vertex on an interface
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*PGeomEntity* **MV\_GMEntity**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
Return the geometric model entity the mesh vertex is classified on.
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*GType* **MV\_GMtype**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
Return the type of geometric model entity the mesh vertex is
|
|||
|
|
|
|||
|
|
classified on (GREGION, GFACE, GEDGE, GVERTEX, GUNKNOWN).
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*void* **MV\_Coords**(*PMeshObj* mesh, *PMeshVert* v, *double*
|
|||
|
|
*xyz);
|
|||
|
|
|
|||
|
|
Coordinates of mesh vertex
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*int* **MV\_IsParent**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/note1.gif">"31" "32"A vertex not on an
|
|||
|
|
interface is its own parent - return value will be 1
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*int* **MV\_IsChild**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/note1.gif">"31" "32"A vertex not on an
|
|||
|
|
interface is its own child - return value will be 1
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*PMeshVert* **MV\_Parent**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/note1.gif">"31" "32"For a vertex not on an
|
|||
|
|
interface, the vertex itself is returned
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*void* **MV\_Children**(*PMeshVert* mesh, *PMeshVert* v, *int*
|
|||
|
|
*nvc,
|
|||
|
|
*PMeshVert*
|
|||
|
|
*
|
|||
|
|
*vc)
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/note1.gif">"31" "32"For a vertex not on an
|
|||
|
|
interface, a 1 item array with the vertex
|
|||
|
|
|
|||
|
|
pointer itself is returned and nvc = 1
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*void* **MV\_Edges**(*PMeshObj* mesh, *PMeshVert* v, *int*
|
|||
|
|
*nve,
|
|||
|
|
*PMeshEdge*
|
|||
|
|
*
|
|||
|
|
*vedges);
|
|||
|
|
|
|||
|
|
List of mesh edges connected to vertex. For this routine to work
|
|||
|
|
|
|||
|
|
properly, one must call MESH\_BldAdj first. If not the routine will
|
|||
|
|
|
|||
|
|
just return 0.
|
|||
|
|
|
|||
|
|
If the vertex is a parent vertex, then the operator will return all
|
|||
|
|
|
|||
|
|
the edges connected to all the child vertices of the vertex. The edge
|
|||
|
|
|
|||
|
|
returned will be of type PARENT. Each of these edges will be made up
|
|||
|
|
|
|||
|
|
of 'v' and any other parent vertex it is connected to. If it is a
|
|||
|
|
|
|||
|
|
child vertex, then it will return edges connected only to itself. In
|
|||
|
|
|
|||
|
|
this case all the edges will be of type CHILD. Each edge will be made
|
|||
|
|
|
|||
|
|
up of the child vertex 'v' and any other child vertex it is connected
|
|||
|
|
|
|||
|
|
to. Note that vertices on 2-manifold (single material) boundaries and
|
|||
|
|
|
|||
|
|
in the interior can be considered a parent or a child as required.
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/bullet12.gif">"27" "31"
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
* IMPORTANT
|
|||
|
|
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
|
|||
|
|
When finished with the list of edges, call ME\_Delete on each of the
|
|||
|
|
|
|||
|
|
edges and free the vedges list. This is important since the MeshEdge
|
|||
|
|
|
|||
|
|
data structures are created on the fly and the MESH object does not
|
|||
|
|
|
|||
|
|
keep track of them.
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*void* **MV\_Faces**(*PMeshObj* mesh, *PMeshVert* v, *int*
|
|||
|
|
*nvf,
|
|||
|
|
*PMeshFace*
|
|||
|
|
*
|
|||
|
|
*vfaces);
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/note1.gif">"31" "32"
|
|||
|
|
*
|
|||
|
|
* NOT YET TESTED
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
|
|||
|
|
List of mesh faces connected to vertex. For this routine to work
|
|||
|
|
|
|||
|
|
properly, one must call MESH\_BldAdj first. If not the routine will
|
|||
|
|
|
|||
|
|
just return 0.
|
|||
|
|
|
|||
|
|
The behavior of the operator for parent and child vertices is the same
|
|||
|
|
|
|||
|
|
as it is for MV\_Edges.
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/bullet12.gif">"27" "31"
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
* IMPORTANT
|
|||
|
|
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
|
|||
|
|
When finished with the list of faces, call MF\_Delete on each of the
|
|||
|
|
|
|||
|
|
faces and free the vfaces list. This is important since the MeshFace
|
|||
|
|
|
|||
|
|
data structures are created on the fly and the MESH object does not
|
|||
|
|
|
|||
|
|
keep track of them.
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*int* **MV\_numRegions**(*PMeshObj* mesh, *PMeshVert* v);
|
|||
|
|
|
|||
|
|
Number of mesh regions connected to mesh vertex. For this routine to
|
|||
|
|
|
|||
|
|
work properly, one must call MESH\_BldUpAdj first. If not the routine
|
|||
|
|
|
|||
|
|
will just return 0.
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*void* **MV\_Regions**(*PMeshObj* mesh, *PMeshVert* v, *int*
|
|||
|
|
*nr,
|
|||
|
|
*PMeshRegn*
|
|||
|
|
*
|
|||
|
|
*regns);
|
|||
|
|
|
|||
|
|
List of mesh regions connected to mesh vertex. For this routine to
|
|||
|
|
|
|||
|
|
work properly, one must call MESH\_BldUpAdj first. If not the routine
|
|||
|
|
|
|||
|
|
will just return 0 for the number of regions and a NULL pointer for
|
|||
|
|
|
|||
|
|
the region list.
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
For a parent vertex, mesh regions in all the material regions
|
|||
|
|
|
|||
|
|
connected to all its children are returned. For a child vertex, only
|
|||
|
|
|
|||
|
|
mesh regions in the particular material region pointed to by the child
|
|||
|
|
|
|||
|
|
are returned.
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
[]{#MV-Attribs*int* **MV\_GetAttVal**(*PMeshObj* mesh, *PMeshVert* v,
|
|||
|
|
*char
|
|||
|
|
**attname, *int
|
|||
|
|
**ival,
|
|||
|
|
|
|||
|
|
*double
|
|||
|
|
**rval, *char
|
|||
|
|
**cval, *void
|
|||
|
|
*
|
|||
|
|
**pval, *AttType
|
|||
|
|
**atype);
|
|||
|
|
|
|||
|
|
Depending on the type of the attribute, the appropriate field will be
|
|||
|
|
|
|||
|
|
filled on succesful completion. Arrays are returned in pval, integer in
|
|||
|
|
|
|||
|
|
ival and real number in rval (I don't think lagrit supports character
|
|||
|
|
|
|||
|
|
attributes)
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
------------------------------------------------------------------------
|
|||
|
|
|
|||
|
|
*int* **MV\_SetAttVal**(*PMeshObj* mesh, *PMeshVert* v, *char
|
|||
|
|
|
|||
|
|
**attname, *int* ival,
|
|||
|
|
|
|||
|
|
*double* rval, *char* cval, *void
|
|||
|
|
**pval);
|
|||
|
|
|
|||
|
|
This is similar to the GetAttVal routine - depending on the type and
|
|||
|
|
|
|||
|
|
rank, one sends in a value with the right variable
|
|||
|
|
|
|||
|
|
*
|
|||
|
|
*
|
|||
|
|
* PERHAPS these routines need an additional variable, "rank" but
|
|||
|
|
for
|
|||
|
|
|
|||
|
|
now.....
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/arrow2.gif">"30"
|
|||
|
|
"30"](http://www.ees.lanl.gov/staff/rao/mstkla/mstkla.md#MESH%20VERTEX:) <img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/arrow3.gif">"30"
|
|||
|
|
"30"](http://www.ees.lanl.gov/staff/rao/mstkla/MeshEdge.md) <img height="300" width="300" src="https://lanl.github.io/LaGriT/assets/images/arrow4.gif">"30"
|
|||
|
|
"30"](http://www.ees.lanl.gov/staff/rao/mstkla/GenRegion.md)
|