MeshKit  1.0
ModelEnt Class Reference

The class used in MeshKit for referring to model entities and mesh associated with them. More...

#include <meshkit/ModelEnt.hpp>

List of all members.

Public Member Functions

IAVariableia_var () const
void ia_var (IAVariable *v)
double mesh_interval_size () const
double measure () const
void mesh_intervals (const int set_mesh_int)
Firmness interval_firmness () const
 ModelEnt ()

Public Attributes

int stub_id
IAVariableiaVar
double meshIntervalSize
double entMeasure
Firmness entFirmness

Static Public Attributes

static int max_stub_id = 0

Constructor/destructor

 ModelEnt (MKCore *mk, iGeom::EntityHandle geom_ent, int geom_index, moab::EntityHandle mesh_ent=0, int mesh_index=-1, int irel_index=-1, int sizing_index=-1)
 Constructor; mesh entity can be missing, in which case it's retrieved or created.
 ModelEnt (MKCore *mk, iGeom::EntitySetHandle geom_set, int geom_index, moab::EntityHandle mesh_ent=0, int mesh_index=-1, int irel_index=-1, int sizing_index=-1, IAVariable *ia_var=NULL)
 Constructor; mesh entity can be missing, in which case it's retrieved or created.
virtual ~ModelEnt ()
 Destructor.

Topology

void children (std::vector< MEntVector > &child_ents) const
 Return children as vectors of vectors, e.g. for loops or shells.
void children (std::vector< MEntVector > &child_ents)
 Return children as vectors of vectors, e.g. for loops or shells.
void children (std::vector< std::vector< moab::EntityHandle > > &child_ents) const
 Return children as vectors of vectors, e.g. for loops or shells.
void children (std::vector< std::vector< iGeom::EntityHandle > > &child_ents) const
 Return children as vectors of vectors, e.g. for loops or shells.
void get_adjacencies (int dim, MEntVector &adjs) const
 Return adjacencies to this model entity of the input dimension.
void get_adjacencies (int dim, std::vector< iGeom::EntityHandle > &adjs) const
 Return adjacencies to this model entity of the input dimension.
void get_adjacencies (int dim, std::vector< moab::EntityHandle > &adjs) const
 Return adjacencies to this model entity of the input dimension.
void get_adjacencies (int dim, moab::Range &adjs) const
 Return adjacencies to this model entity of the input dimension.
ModelEntshared_entity (ModelEnt *ent2, int to_dim)
 Return a shared entity of specified dimension.
void get_adjs_bool (MEntVector &from_ents, int to_dim, MEntVector &to_ents, BooleanType op_type, bool only_to_ents=true)
 Get adjacent entities, with specified boolean on results.

Geometric evaluation

int dimension () const
 Return the topological dimension of this model entity.
double measure () const
 Measure of this entity, -DBL_MAX for vertices, or length, area, or volume.
double measure_discrete () const
 Similar as measure, but based on mesh.
void evaluate (double x, double y, double z, double *close=NULL, double *direction=NULL, double *curvature1=NULL, double *curvature2=NULL) const
 Evaluate entity at a point.
void evaluate_discrete (double x, double y, double z, double *close=NULL, double *direction=NULL, double *curvature1=NULL, double *curvature2=NULL) const
 Evaluate entity at a point, based on mesh data.
int id () const
 Get the id of the geometry/mesh entity, if any.

Mesh

void create_mesh_set (int ordered_flag=-1)
 Create mesh set for this ModelEnt.
void commit_mesh (moab::Range &mesh_ents, MeshedState mstate)
 Commit mesh to a model entity.
void commit_mesh (moab::EntityHandle *mesh_ents, int num_ents, MeshedState mstate)
 Commit mesh to a model entity.
void get_mesh (int dim, std::vector< moab::EntityHandle > &ments, bool bdy_too=false)
 Return the mesh on this entity, of the specified dimension or (if dim=-1) all dimensions.
void boundary (int dim, std::vector< moab::EntityHandle > &bdy, std::vector< int > *senses=NULL, std::vector< int > *group_sizes=NULL)
 Return the mesh bounding this entity, their senses, and optionally the loops/shells.
void boundary (int dim, MEntVector &elements, std::vector< int > *senses, std::vector< int > *group_sizes=NULL)
 Return the model entities bounding this entity, their senses, and optionally the loops/shells.
void boundary (int dim, moab::Range &ents) const
 Return mesh bounding this model entity in a Range (unordered wrt model entity)
void get_indexed_connect_coords (std::vector< moab::EntityHandle > &ents, std::vector< int > *senses, moab::Tag tagh, std::vector< int > &ents_as_ids, std::vector< double > &coords, moab::Range *verts_range=NULL, int start_index=0)
 From a vector of entity handles, return connectivity as integer ids, and coords of vertices if requested.
MeshedState get_meshed_state ()
 Get meshed state.
void set_meshed_state (MeshedState mstate)
 Set the meshed state.

Mesh intervals, sizing functions

int sizing_function_index () const
 Get sizing function index.
void sizing_function_index (int index, bool children_too=true)
 Set sizing function index.
double mesh_interval_size () const
 Get mesh interval size, if any Returns -1 if no size set on this entity. If intervals are set and this is a model edge, returns computed size.
int mesh_intervals () const
 Get intervals.
void mesh_intervals (int ints)
 Set intervals.
Firmness interval_firmness () const
 Get firmness.
void interval_firmness (Firmness firm)
 Set firmness.
bool constrain_even () const
 Get constrainEven.
void constrain_even (bool flag)
 Set constrainEven.

MeshOps

void add_meshop (MeshOp *meshop)
 Add a MeshOp that points to this ModelEnt.
void remove_meshop (MeshOp *meshop)
 Remove a MeshOp that pointed to this ModelEnt.
void get_meshops (std::vector< MeshOp * > &meshops)
 Get MeshOps pointing to this ModelEnt.
bool is_meshops_list_empty ()
 decide if there is a meshop defined for this model entity

Interfaces, entities

MKCoremkCore
 MeshKit instance to which this model entity is associated.
int igeomIndex
 iGeom instance index associated with this model entity
int meshIndex
 MOAB instance index associated with this model entity.
int irelIndex
 iRel pair index associated with this model entity
iGeom::EntityHandle iGeomEnt
 Geometry entity for this model entity.
iGeom::EntitySetHandle iGeomSet
 Geometry set for this model entity.
moab::EntityHandle moabEntSet
 Mesh entity set for this model entity.
int sizingFunctionIndex
 Sizing function associated with this model entity.
int meshIntervals
 Mesh intervals for this model entity.
Firmness intervalFirmness
 Mesh interval firmness for this model entity.
bool constrainEven
 Constrain mesh intervals to be even.
MeshedState meshedState
 Meshed state of this entity.
std::vector< MeshOp * > meshOps
 MeshOps pointing to this entity.
IAVariableiaVariable
 interval assignment variable
MKCoremk_core () const
 Get the MKCore object.
iGeom::EntityHandle geom_handle () const
 Get geometry entity handle.
iGeom::EntityHandle geom_handle (moab::EntityHandle ment) const
 Get geometry entity handle for a given mesh entity set.
iGeomigeom_instance () const
 Get iGeom instance associated with this model entity.
moab::Interface * moab_instance () const
 Get moab instance associated with this model entity.
moab::EntityHandle mesh_handle () const
 Get mesh entity set handle.
moab::EntityHandle mesh_handle (iGeom::EntityHandle gent) const
 Get mesh entity set handle for a given geometry entity.
moab::EntityHandle mesh_handle (iGeom::EntitySetHandle gent) const
 Get mesh entity set handle for a given geometry entity.
int iGeomIndex ()
int iRelPairIndex ()
IAVariableia_var ()
const IAVariableia_var () const
void ia_var (IAVariable *var)
ModelEntnext_winding (ModelEnt *this_edge, int this_sense, MEntVector &tmp_adjs)
 Return the next entity in the loop, using winding number.
void init_parents_children ()
 Initialize mesh set parents/children to parallel geometric topology.
void init_group_contents ()
 Initialize mesh set contents to parallel geometry set contents.
void set_downward_senses ()
 Set senses tag on moabEntSet wrt adjacent entities.

Detailed Description

The class used in MeshKit for referring to model entities and mesh associated with them.

Instances of this class are references to the entities stored in the geometry and mesh databases. Destruction/construction of ModelEnt instances does not cause destruction/construction of the corresponding database entities (one exception to this statement is that an argument to the constructor can request that the mesh entity set be created for the corresponding geometry entity).

A ModelEnt instance keeps a reference to the MKCore object to which it is associated; through that instance it can get access to the geometry/mesh/relation database instances.

Examples:
example_basic.cpp, example_copymesh.cpp, example_extrudemesh.cpp, example_graph.cpp, example_intassign.cpp, example_onetooneswept.cpp, example_setpnt2quad.cpp, and example_volice.cpp.

Definition at line 30 of file ModelEnt.hpp.


Constructor & Destructor Documentation

ModelEnt ( MKCore mk,
iGeom::EntityHandle  geom_ent,
int  geom_index,
moab::EntityHandle  mesh_ent = 0,
int  mesh_index = -1,
int  irel_index = -1,
int  sizing_index = -1 
)

Constructor; mesh entity can be missing, in which case it's retrieved or created.

Parameters:
mkMeshKit instance
geom_entGeometry entity corresponding to this ModelEntity
igeomiGeom instance
mesh_entMesh entity set corresponding to this ModelEntity
sizing_indexSizing function index (from MBCore) to be used to mesh this entity

Definition at line 15 of file ModelEnt.cpp.

ModelEnt ( MKCore mk,
iGeom::EntitySetHandle  geom_set,
int  geom_index,
moab::EntityHandle  mesh_ent = 0,
int  mesh_index = -1,
int  irel_index = -1,
int  sizing_index = -1,
IAVariable ia_var = NULL 
)

Constructor; mesh entity can be missing, in which case it's retrieved or created.

Parameters:
mkMeshKit instance
geom_setGeometry entity set corresponding to this ModelEntity
igeomiGeom instance
mesh_entMesh entity set corresponding to this ModelEntity
sizing_indexSizing function index (from MBCore) to be used to mesh this entity

Definition at line 60 of file ModelEnt.cpp.

~ModelEnt ( ) [virtual]

Destructor.

Definition at line 107 of file ModelEnt.cpp.

ModelEnt ( ) [inline]

Definition at line 40 of file IntervalAssignment/stubs/IAVariable.hpp.


Member Function Documentation

void add_meshop ( MeshOp meshop) [inline]

Add a MeshOp that points to this ModelEnt.

Parameters:
meshopMeshOp to add

Definition at line 645 of file ModelEnt.hpp.

void boundary ( int  dim,
std::vector< moab::EntityHandle > &  bdy,
std::vector< int > *  senses = NULL,
std::vector< int > *  group_sizes = NULL 
)

Return the mesh bounding this entity, their senses, and optionally the loops/shells.

In the case where vertices are requested (dim=0), vertices on end of loops are *not* repeated

Parameters:
dimDimension of boundary entities requested
bdyBoundary entities
sensesSenses of boundary entities
group_sizesIf non-NULL, pointer to vector where group sizes will be returned
Examples:
example_intassign.cpp.

Definition at line 529 of file ModelEnt.cpp.

void boundary ( int  dim,
MEntVector elements,
std::vector< int > *  senses,
std::vector< int > *  group_sizes = NULL 
)

Return the model entities bounding this entity, their senses, and optionally the loops/shells.

Parameters:
dimDimension of boundary entities requested
elementsBoundary entities
sensesSenses of boundary entities
group_sizesIf non-NULL, pointer to vector where group sizes will be returned

Definition at line 572 of file ModelEnt.cpp.

void boundary ( int  dim,
moab::Range &  ents 
) const

Return mesh bounding this model entity in a Range (unordered wrt model entity)

This function returns boundary entities in a Range, which means they're not guaranteed to be ordered consistently with respect to the model entity orientation. The input range is appended to (i.e. it is not emptied first).

Parameters:
dimDimension of requested boundary entities
entsBoundary entities requested

Definition at line 906 of file ModelEnt.cpp.

void children ( std::vector< MEntVector > &  child_ents) const [inline]

Return children as vectors of vectors, e.g. for loops or shells.

No ordered flag, since that's implied by definition

Parameters:
child_entsChild entities returned

Definition at line 674 of file ModelEnt.hpp.

void children ( std::vector< MEntVector > &  child_ents) [inline]

Return children as vectors of vectors, e.g. for loops or shells.

No ordered flag, since that's implied by definition

Parameters:
child_entsChild entities returned

Definition at line 675 of file ModelEnt.hpp.

void children ( std::vector< std::vector< moab::EntityHandle > > &  child_ents) const [inline]

Return children as vectors of vectors, e.g. for loops or shells.

No ordered flag, since that's implied by definition

Parameters:
child_entsChild entities returned

Definition at line 553 of file ModelEnt.hpp.

void children ( std::vector< std::vector< iGeom::EntityHandle > > &  child_ents) const [inline]

Return children as vectors of vectors, e.g. for loops or shells.

No ordered flag, since that's implied by definition

Parameters:
child_entsChild entities returned

Definition at line 571 of file ModelEnt.hpp.

void commit_mesh ( moab::Range &  mesh_ents,
MeshedState  mstate 
)

Commit mesh to a model entity.

Takes the input mesh entities, adds them to the entity set for this model entity, and (if both-type relation on the mesh side) sets the relations to the corresponding geometry entity.

Parameters:
mesh_entsMesh entities being assigned to this model entity
mstateThe meshed state after this mesh is added

Definition at line 337 of file ModelEnt.cpp.

void commit_mesh ( moab::EntityHandle *  mesh_ents,
int  num_ents,
MeshedState  mstate 
)

Commit mesh to a model entity.

Takes the input mesh entities, adds them to the entity set for this model entity, and (if both-type relation on the mesh side) sets the relations to the corresponding geometry entity.

Parameters:
mesh_entsPointer to mesh entities being assigned to this model entity
num_entsNumber of mesh entities in list
mstateThe meshed state after this mesh is added

Takes the input mesh entities, and adds them to the entity set for this model entity.

Parameters:
mesh_entsMesh entities being assigned to this model entity
mstateThe meshed state after this mesh is added

Definition at line 350 of file ModelEnt.cpp.

bool constrain_even ( ) const [inline]

Get constrainEven.

Definition at line 613 of file ModelEnt.hpp.

void constrain_even ( bool  flag) [inline]

Set constrainEven.

Parameters:
flagSet value

Definition at line 618 of file ModelEnt.hpp.

void create_mesh_set ( int  ordered_flag = -1)

Create mesh set for this ModelEnt.

This function creates the entity set for a geometry entity, and tags that set according to convention (GEOM_DIMENSION and GLOBAL_ID). It also sets the relation with the corresponding geometry entity. The value of flag controls whether a vector- or set-based entity set is created: flag = 1 : create a vector-based set flag = 0 : create a set-based set flag = -1: check dimension of iGeomEnt; if 1, vector-based set, otherwise set-based set

Parameters:
ordered_flagOrdered flag

Definition at line 144 of file ModelEnt.cpp.

int dimension ( ) const

Return the topological dimension of this model entity.

Definition at line 381 of file ModelEnt.cpp.

void evaluate ( double  x,
double  y,
double  z,
double *  close = NULL,
double *  direction = NULL,
double *  curvature1 = NULL,
double *  curvature2 = NULL 
) const

Evaluate entity at a point.

If any of the evaluation results are not wanted, pass NULL for them. At least one must be provided. This function throws an error if called on a vertex or volume and non-NULL is passed for direction or curvature. Direction is the tangent for edges, normal for surfaces.

Parameters:
xStart point x
yStart point y
zStart point z
closeClosest point
directionTangent or normal returned for edges or surfaces
curvature11st curvature for edges or surfaces
curvature22nd curvature for edges or surfaces

Definition at line 411 of file ModelEnt.cpp.

void evaluate_discrete ( double  x,
double  y,
double  z,
double *  close = NULL,
double *  direction = NULL,
double *  curvature1 = NULL,
double *  curvature2 = NULL 
) const [inline]

Evaluate entity at a point, based on mesh data.

If any of the evaluation results are not wanted, pass NULL for them. At least one must be provided. This function throws an error if called on a vertex or volume and non-NULL is passed for direction or curvature. Direction is the tangent for edges, normal for surfaces.

Parameters:
xStart point x
yStart point y
zStart point z
closeClosest point
directionTangent or normal returned for edges or surfaces
curvature11st curvature for edges or surfaces
curvature22nd curvature for edges or surfaces

Definition at line 633 of file ModelEnt.hpp.

iGeom::EntityHandle geom_handle ( ) const [inline]

Get geometry entity handle.

Definition at line 543 of file ModelEnt.hpp.

iGeom::EntityHandle geom_handle ( moab::EntityHandle  ment) const

Get geometry entity handle for a given mesh entity set.

Definition at line 1000 of file ModelEnt.cpp.

void get_adjacencies ( int  dim,
MEntVector adjs 
) const

Return adjacencies to this model entity of the input dimension.

This function appends adjacencies to the input vector.

Parameters:
dimDimension of entities requested; if -1, all adjacent entities are returned
adjsAdjacent entities
Examples:
example_volice.cpp.

Definition at line 363 of file ModelEnt.cpp.

void get_adjacencies ( int  dim,
std::vector< iGeom::EntityHandle > &  adjs 
) const [inline]

Return adjacencies to this model entity of the input dimension.

This function appends adjacencies to the input vector.

Parameters:
dimDimension of entities requested; if -1, all adjacent entities are returned
adjsAdjacent entities

Definition at line 671 of file ModelEnt.hpp.

void get_adjacencies ( int  dim,
std::vector< moab::EntityHandle > &  adjs 
) const [inline]

Return adjacencies to this model entity of the input dimension.

This function appends adjacencies to the input vector.

Parameters:
dimDimension of entities requested; if -1, all adjacent entities are returned
adjsAdjacent entities

Definition at line 672 of file ModelEnt.hpp.

void get_adjacencies ( int  dim,
moab::Range &  adjs 
) const [inline]

Return adjacencies to this model entity of the input dimension.

This function adds adjacencies to the input range.

Parameters:
dimDimension of entities requested; if -1, all adjacent entities are returned
adjsAdjacent entities

Definition at line 673 of file ModelEnt.hpp.

void get_adjs_bool ( MEntVector from_ents,
int  to_dim,
MEntVector to_ents,
BooleanType  op_type,
bool  only_to_ents = true 
)

Get adjacent entities, with specified boolean on results.

Parameters:
from_entsEntities whose adjacencies are being queried
to_dimDimension of adjacencies requested
to_entsAdjacent entities
op_typeBoolean type, intersect or union
only_to_entsif is true, get adjacencies from to_ents

Definition at line 785 of file ModelEnt.cpp.

void get_indexed_connect_coords ( std::vector< moab::EntityHandle > &  ents,
std::vector< int > *  senses,
moab::Tag  tagh,
std::vector< int > &  ents_as_ids,
std::vector< double > &  coords,
moab::Range *  verts_range = NULL,
int  start_index = 0 
)

From a vector of entity handles, return connectivity as integer ids, and coords of vertices if requested.

The entity handles are ordered and made unique, assigned ids, then the id vector is assembled in the same order as the input handle vector. Optionally this function returns the moab tag used to assign ids, and the moab range used to get unique ids

Parameters:
entsVector of entities whose ids to assign
sensesSenses of entities in ents; if NULL, assume forward sense, or no sense if ents are vertices
taghTag handle to use for ids; if zero, local tag is used then deleted
ents_as_idsVector of ids that get assigned, ordered same as connectivity of ents (or ents itself if they're vertices)
coordsCoordinates of vertices corresponding to ents_as_ids
verts_rangeVertices in ents, as a range; if non-NULL, populated range is returned; this range is cleared in this function
start_indexStarting index for vertex numbering

Definition at line 912 of file ModelEnt.cpp.

void get_mesh ( int  dim,
std::vector< moab::EntityHandle > &  ments,
bool  bdy_too = false 
)

Return the mesh on this entity, of the specified dimension or (if dim=-1) all dimensions.

This function will return the mesh entities on bounding entities too, if requested. This is useful for example for assembling the nodes bounding a surface, as some of those nodes are on model vertices. If requesting mesh on a periodic edge, end vertex will appear on both ends of the returned vector.

Parameters:
dimDimension of entities requested
mentsEntities
bdy_tooIf true, returns (dim)-dimensional entities from bounding entities too

Definition at line 490 of file ModelEnt.cpp.

Get meshed state.

Returns:
Meshed state

Definition at line 623 of file ModelEnt.hpp.

void get_meshops ( std::vector< MeshOp * > &  meshops) [inline]

Get MeshOps pointing to this ModelEnt.

Parameters:
meshopsMeshOps returned

Definition at line 663 of file ModelEnt.hpp.

IAVariable* ia_var ( ) const [inline]

Definition at line 25 of file IntervalAssignment/stubs/IAVariable.hpp.

void ia_var ( IAVariable v) [inline]

Definition at line 26 of file IntervalAssignment/stubs/IAVariable.hpp.

IAVariable* ia_var ( ) [inline]

Definition at line 468 of file ModelEnt.hpp.

const IAVariable* ia_var ( ) const [inline]

Definition at line 469 of file ModelEnt.hpp.

void ia_var ( IAVariable var) [inline]

Definition at line 470 of file ModelEnt.hpp.

int id ( ) const

Get the id of the geometry/mesh entity, if any.

Definition at line 460 of file ModelEnt.cpp.

iGeom * igeom_instance ( ) const

Get iGeom instance associated with this model entity.

Returns:
Returns 0 by default

Definition at line 1023 of file ModelEnt.cpp.

int iGeomIndex ( ) [inline]

Definition at line 462 of file ModelEnt.hpp.

void init_group_contents ( ) [private]

Initialize mesh set contents to parallel geometry set contents.

Definition at line 258 of file ModelEnt.cpp.

void init_parents_children ( ) [private]

Initialize mesh set parents/children to parallel geometric topology.

Definition at line 213 of file ModelEnt.cpp.

Firmness interval_firmness ( ) const [inline]

Definition at line 38 of file IntervalAssignment/stubs/IAVariable.hpp.

Firmness interval_firmness ( ) const [inline]

Get firmness.

Definition at line 602 of file ModelEnt.hpp.

void interval_firmness ( Firmness  firm) [inline]

Set firmness.

Parameters:
firmSet value

Definition at line 608 of file ModelEnt.hpp.

int iRelPairIndex ( ) [inline]

Definition at line 465 of file ModelEnt.hpp.

bool is_meshops_list_empty ( ) [inline]

decide if there is a meshop defined for this model entity

return true if the list of meshops is not empty

Definition at line 422 of file ModelEnt.hpp.

double measure ( ) const [inline]

Definition at line 32 of file IntervalAssignment/stubs/IAVariable.hpp.

double measure ( ) const

Measure of this entity, -DBL_MAX for vertices, or length, area, or volume.

Definition at line 398 of file ModelEnt.cpp.

double measure_discrete ( ) const

Similar as measure, but based on mesh.

Definition at line 406 of file ModelEnt.cpp.

moab::EntityHandle mesh_handle ( ) const [inline]

Get mesh entity set handle.

Definition at line 548 of file ModelEnt.hpp.

moab::EntityHandle mesh_handle ( iGeom::EntityHandle  gent) const

Get mesh entity set handle for a given geometry entity.

Definition at line 1035 of file ModelEnt.cpp.

moab::EntityHandle mesh_handle ( iGeom::EntitySetHandle  gent) const

Get mesh entity set handle for a given geometry entity.

Definition at line 1065 of file ModelEnt.cpp.

double mesh_interval_size ( ) const [inline]

Definition at line 29 of file IntervalAssignment/stubs/IAVariable.hpp.

double mesh_interval_size ( ) const

Get mesh interval size, if any Returns -1 if no size set on this entity. If intervals are set and this is a model edge, returns computed size.

Get mesh interval size, if any Returns -1 if no size set on this entity. If intervals are set, returns computed size.

Returns:
Interval size for this ModelEnt.

Definition at line 1099 of file ModelEnt.cpp.

void mesh_intervals ( const int  set_mesh_int) [inline]

Definition at line 35 of file IntervalAssignment/stubs/IAVariable.hpp.

int mesh_intervals ( ) const [inline]

Get intervals.

Definition at line 590 of file ModelEnt.hpp.

void mesh_intervals ( int  ints) [inline]

Set intervals.

Parameters:
intsSet value

Definition at line 596 of file ModelEnt.hpp.

MKCore * mk_core ( ) const [inline]

Get the MKCore object.

Definition at line 538 of file ModelEnt.hpp.

moab::Interface * moab_instance ( ) const

Get moab instance associated with this model entity.

Returns:
Returns 0 by default

Definition at line 1029 of file ModelEnt.cpp.

ModelEnt * next_winding ( ModelEnt this_edge,
int  this_sense,
MEntVector tmp_adjs 
) [private]

Return the next entity in the loop, using winding number.

Parameters:
this_edgeEdge next to one being requested
this_senseSense of this_edge
tmp_adjsOptional vector of candidates
Returns:
Next edge in loop

Definition at line 829 of file ModelEnt.cpp.

void remove_meshop ( MeshOp meshop) [inline]

Remove a MeshOp that pointed to this ModelEnt.

Parameters:
meshopMeshOp to remove

Definition at line 654 of file ModelEnt.hpp.

void set_downward_senses ( ) [private]

Set senses tag on moabEntSet wrt adjacent entities.

Definition at line 304 of file ModelEnt.cpp.

void set_meshed_state ( MeshedState  mstate) [inline]

Set the meshed state.

Parameters:
mstate

Definition at line 628 of file ModelEnt.hpp.

ModelEnt * shared_entity ( ModelEnt ent2,
int  to_dim 
)

Return a shared entity of specified dimension.

If no shared entities are found, NULL is returned. If more than one are found, an Error is thrown with MK_MULTIPLE_FOUND as the code.

Parameters:
ent2Other entity
to_dimDimension of shared entity
Returns:
Shared entity

Definition at line 767 of file ModelEnt.cpp.

int sizing_function_index ( ) const [inline]

Get sizing function index.

Returns:
Returns -1 if it has not been set for this entity
Examples:
example_basic.cpp, example_onetooneswept.cpp, and example_volice.cpp.

Definition at line 584 of file ModelEnt.hpp.

void sizing_function_index ( int  index,
bool  children_too = true 
)

Set sizing function index.

Parameters:
indexSizing function index being set
children_tooIf true, sizing function index is propagated to child (bounding) entities

Definition at line 131 of file ModelEnt.cpp.


Member Data Documentation

bool constrainEven [private]

Constrain mesh intervals to be even.

Definition at line 526 of file ModelEnt.hpp.

double entMeasure

Definition at line 31 of file IntervalAssignment/stubs/IAVariable.hpp.

IAVariable* iaVariable [private]

interval assignment variable

Definition at line 535 of file ModelEnt.hpp.

Geometry entity for this model entity.

Definition at line 508 of file ModelEnt.hpp.

int igeomIndex [private]

iGeom instance index associated with this model entity

Definition at line 499 of file ModelEnt.hpp.

Geometry set for this model entity.

Definition at line 511 of file ModelEnt.hpp.

Mesh interval firmness for this model entity.

Definition at line 523 of file ModelEnt.hpp.

int irelIndex [private]

iRel pair index associated with this model entity

Definition at line 505 of file ModelEnt.hpp.

int max_stub_id = 0 [static]

Definition at line 21 of file IntervalAssignment/stubs/IAVariable.hpp.

Meshed state of this entity.

Definition at line 529 of file ModelEnt.hpp.

int meshIndex [private]

MOAB instance index associated with this model entity.

Definition at line 502 of file ModelEnt.hpp.

int meshIntervals [private]

Mesh intervals for this model entity.

Definition at line 520 of file ModelEnt.hpp.

Definition at line 28 of file IntervalAssignment/stubs/IAVariable.hpp.

std::vector<MeshOp*> meshOps [private]

MeshOps pointing to this entity.

Definition at line 532 of file ModelEnt.hpp.

MKCore* mkCore [private]

MeshKit instance to which this model entity is associated.

Definition at line 496 of file ModelEnt.hpp.

moab::EntityHandle moabEntSet [private]

Mesh entity set for this model entity.

Definition at line 514 of file ModelEnt.hpp.

int sizingFunctionIndex [private]

Sizing function associated with this model entity.

Definition at line 517 of file ModelEnt.hpp.

int stub_id

Definition at line 22 of file IntervalAssignment/stubs/IAVariable.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines