MOAB: Mesh Oriented datABase
(version 5.4.1)
|
#include <iostream>
#include <map>
#include "FBiGeom_MOAB.hpp"
#include "moab/GeomTopoTool.hpp"
#include "moab/OrientedBoxTreeTool.hpp"
#include "moab/CartVect.hpp"
#include "moab/FileOptions.hpp"
#include "MBTagConventions.hpp"
#include <cstdlib>
#include <cstring>
#include <cassert>
Go to the source code of this file.
Defines | |
#define | COPY_RANGE(r, vec) |
#define | TAG_HANDLE(tagh) reinterpret_cast< Tag >( tagh ) |
#define | COPY_DOUBLEVEC(r, vec) |
Functions | |
static int | compare_no_case1 (const char *str1, const char *str2, size_t n) |
static std::string | filter_options1 (const char *begin, const char *end) |
void | FBiGeom_getDescription (FBiGeom_Instance instance, char *descr, int descr_len) |
Get a description of the error returned from the last FBiGeom call. | |
void | FBiGeom_getErrorType (FBiGeom_Instance instance, int *error_type) |
Get the error type returned from the last FBiGeom function. | |
void | FBiGeom_newGeom (char const *options, FBiGeom_Instance *instance_out, int *err, int options_len) |
Construct a new FBiGeom instance. | |
void | FBiGeom_dtor (FBiGeom_Instance instance, int *err) |
Construct a new FBiGeom instance. | |
void | FBiGeom_newGeomFromMesh (iMesh_Instance mesh, iBase_EntitySetHandle set, const char *options, FBiGeom_Instance *geom, int *err, int) |
void | FBiGeom_dtor2 (FBiGeom_Instance instance, int *err) |
void | FBiGeom_load (FBiGeom_Instance instance, char const *name, char const *options, int *err, int, int options_len) |
Load a geom from a file. | |
void | FBiGeom_save (FBiGeom_Instance instance, char const *name, char const *options, int *err, int name_len, int options_len) |
Save a geom to a file. | |
void | FBiGeom_getRootSet (FBiGeom_Instance instance, iBase_EntitySetHandle *root_set, int *err) |
Get handle of the root set for this instance. | |
void | FBiGeom_getBoundBox (FBiGeom_Instance instance, double *, double *, double *, double *, double *, double *, int *err) |
Get the bounding box of the entire model. | |
void | FBiGeom_getEntities (FBiGeom_Instance instance, iBase_EntitySetHandle set_handle, int entity_type, iBase_EntityHandle **entity_handles, int *entity_handles_allocated, int *entity_handles_size, int *err) |
Get entities of specific type in set or instance. | |
void | FBiGeom_getNumOfType (FBiGeom_Instance instance, iBase_EntitySetHandle set_handle, int entity_type, int *num_out, int *err) |
Get the number of entities with the specified type in the instance or set. | |
void | FBiGeom_getEntType (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, int *type, int *err) |
Get the entity type for the specified entity. | |
void | FBiGeom_getArrType (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, int **type, int *type_allocated, int *type_size, int *err) |
Get the entity type for the specified entities. | |
void | FBiGeom_getEntAdj (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, int to_dimension, iBase_EntityHandle **adj_entities, int *adj_entities_allocated, int *adj_entities_size, int *err) |
Get entities of specified type adjacent to an entity. | |
void | FBiGeom_getArrAdj (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, int requested_entity_type, iBase_EntityHandle **adj_entity_handles, int *adj_entity_handles_allocated, int *adj_entity_handles_size, int **offset, int *offset_allocated, int *offset_size, int *err) |
Get entities of specified type adjacent to entities. | |
void | FBiGeom_getEnt2ndAdj (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, int bridge_dimension, int to_dimension, iBase_EntityHandle **adjacent_entities, int *adjacent_entities_allocated, int *adjacent_entities_size, int *err) |
Get "2nd order" adjacencies to an entity. | |
void | FBiGeom_getArr2ndAdj (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, int, iBase_EntityHandle **, int *, int *, int **, int *, int *, int *err) |
Get "2nd order" adjacencies to an array of entities. | |
void | FBiGeom_isEntAdj (FBiGeom_Instance instance, iBase_EntityHandle entity_handle1, iBase_EntityHandle entity_handle2, int *are_adjacent, int *err) |
Return whether two entities are adjacent. | |
void | FBiGeom_isArrAdj (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles_1, int entity_handles_1_size, iBase_EntityHandle const *entity_handles_2, int entity_handles_2_size, int **is_adjacent_info, int *is_adjacent_info_allocated, int *is_adjacent_info_size, int *err) |
Return whether entity pairs are adjacent. | |
void | FBiGeom_getEntClosestPt (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, double near_x, double near_y, double near_z, double *on_x, double *on_y, double *on_z, int *err) |
Get closest point to an entity. | |
void | FBiGeom_getArrClosestPt (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, int storage_order, double const *near_coordinates, int near_coordinates_size, double **on_coordinates, int *on_coordinates_allocated, int *on_coordinates_size, int *err) |
Get closest point for an array of entities and points For surfaces, it made sure the closest point in on surface. Get closest point for an array of entities and points. If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum. | |
void | FBiGeom_getEntNrmlXYZ (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, double x, double y, double z, double *nrml_i, double *nrml_j, double *nrml_k, int *err) |
Get the normal vector on an entity at the given position Get the normal vector on an entity at the given position. | |
void | FBiGeom_getArrNrmlXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, int storage_order, double const *coordinates, int coordinates_size, double **normals, int *normals_allocated, int *normals_size, int *err) |
Get the normal vector on an entity(ies) at given position(s) | |
void | FBiGeom_getEntNrmlPlXYZ (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, double x, double y, double z, double *pt_x, double *pt_y, double *pt_z, double *nrml_i, double *nrml_j, double *nrml_k, int *err) |
Get the normal vector AND closest point on an entity at given position. | |
void | FBiGeom_getArrNrmlPlXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, int storage_order, double const *near_coordinates, int near_coordinates_size, double **on_coordinates, int *on_coordinates_allocated, int *on_coordinates_size, double **normals, int *normals_allocated, int *normals_size, int *err) |
Get the normal vector AND closest point on an entity(ies) at given position(s) | |
void | FBiGeom_getEntTgntXYZ (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double *, double *, double *, int *err) |
Get the tangent vector on an entity at given position. | |
void | FBiGeom_getArrTgntXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int *err) |
Get the tangent vector on an entity(ies) at given position(s) | |
void | FBiGeom_getEntBoundBox (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, double *min_x, double *min_y, double *min_z, double *max_x, double *max_y, double *max_z, int *err) |
Get the bounding box of the specified entity. | |
void | FBiGeom_getArrBoundBox (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, int storage_order, double **min_corner, int *min_corner_allocated, int *min_corner_size, double **max_corner, int *max_corner_allocated, int *max_corner_size, int *err) |
Get the bounding box of the specified entities. | |
void | FBiGeom_getVtxCoord (FBiGeom_Instance instance, iBase_EntityHandle vertex_handle, double *x, double *y, double *z, int *err) |
Get coordinates of specified vertex. | |
void | FBiGeom_getVtxArrCoords (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, int storage_order, double **coordinates, int *coordinates_allocated, int *coordinates_size, int *err) |
Get coordinates of specified vertices. | |
void | FBiGeom_getPntRayIntsct (FBiGeom_Instance instance, double x, double y, double z, double dir_x, double dir_y, double dir_z, iBase_EntityHandle **intersect_entity_handles, int *intersect_entity_handles_allocated, int *intersect_entity_handles_size, int storage_order, double **intersect_coords, int *intersect_coords_allocated, int *intersect_coords_size, double **param_coords, int *param_coords_allocated, int *param_coords_size, int *err) |
Intersect a ray with the model. | |
void | FBiGeom_getPntArrRayIntsct (FBiGeom_Instance instance, int, const double *, int, const double *, int, iBase_EntityHandle **, int *, int *, int **, int *, int *, double **, int *, int *, double **, int *, int *, int *err) |
Intersect an array of rays with the model. | |
void | FBiGeom_getEntNrmlSense (FBiGeom_Instance instance, iBase_EntityHandle face, iBase_EntityHandle region, int *sense_out, int *err) |
Get the sense of a face with respect to a region. | |
void | FBiGeom_getArrNrmlSense (FBiGeom_Instance instance, iBase_EntityHandle const *, int, iBase_EntityHandle const *, int, int **, int *, int *, int *err) |
Get the senses of an array of faces with respect to an array of regions. | |
void | FBiGeom_getEgFcSense (FBiGeom_Instance instance, iBase_EntityHandle edge, iBase_EntityHandle face, int *sense_out, int *err) |
Get the sense of an edge with respect to a face Get the sense of an edge with respect to a face. Sense returned is -1, 0, or 1, representing "reversed", "both", or "forward". "both" sense indicates that edge bounds the face once with each sense. | |
void | FBiGeom_getEgFcArrSense (FBiGeom_Instance instance, iBase_EntityHandle const *, int, iBase_EntityHandle const *, int, int **, int *, int *, int *err) |
Get the senses of an array of edges with respect to an array of faces. | |
void | FBiGeom_getEgVtxSense (FBiGeom_Instance instance, iBase_EntityHandle edge, iBase_EntityHandle vertex1, iBase_EntityHandle vertex2, int *sense_out, int *err) |
Get the sense of a vertex pair with respect to an edge. | |
void | FBiGeom_getEgVtxArrSense (FBiGeom_Instance instance, iBase_EntityHandle const *, int, iBase_EntityHandle const *, int, iBase_EntityHandle const *, int, int **, int *, int *, int *err) |
Get the senses of vertex pair with respect to a edges. | |
void | FBiGeom_measure (FBiGeom_Instance instance, iBase_EntityHandle const *entity_handles, int entity_handles_size, double **measures, int *measures_allocated, int *measures_size, int *err) |
Return the measure (length, area, or volume) of entities. | |
void | FBiGeom_getFaceType (FBiGeom_Instance instance, iBase_EntityHandle, char *face_type, int *err, int *face_type_length) |
Get the geometric type of a face. | |
void | FBiGeom_getParametric (FBiGeom_Instance instance, int *is_parametric, int *err) |
Return whether interface has information about parameterization. | |
void | FBiGeom_isEntParametric (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, int *parametric, int *err) |
Return whether an entity has a parameterization. | |
void | FBiGeom_isArrParametric (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int **, int *, int *, int *err) |
Return whether entities have parameterizations. | |
void | FBiGeom_getEntUVtoXYZ (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double *, double *, double *, int *err) |
Return coordinate position at specified parametric position on entity. | |
void | FBiGeom_getArrUVtoXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int *err) |
Return coordinate positions at specified parametric position(s) on entity(ies) | |
void | FBiGeom_getEntUtoXYZ (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, double u, double *x, double *y, double *z, int *err) |
Return coordinate position at specified parametric position on entity. | |
void | FBiGeom_getArrUtoXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *, int, double const *, int, int, double **, int *, int *, int *err) |
Return coordinate positions at specified parametric position(s) on entity(ies) | |
void | FBiGeom_getEntXYZtoUV (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double *, double *, int *err) |
Return parametric position at specified spatial position on entity. | |
void | FBiGeom_getEntXYZtoU (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double *, int *err) |
Return parametric position at specified spatial position on entity. | |
void | FBiGeom_getArrXYZtoUV (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int *err) |
Return parametric positions at specified spatial position(s) on entity(ies) Return parametric positions at specified spatial position(s) on entity(ies). If either the number of entities or number of spatial coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum. | |
void | FBiGeom_getArrXYZtoU (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int *err) |
Return spatial positions at specified parametric position(s) on entity(ies) | |
void | FBiGeom_getEntXYZtoUVHint (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double *, double *, int *err) |
Return parametric position at specified spatial position on entity, based on parametric position hint. | |
void | FBiGeom_getArrXYZtoUVHint (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int *err) |
Return parametric positions at specified spatial position(s) on entity(ies), based on parametric position hints Return parametric positions at specified spatial position(s) on entity(ies), based on parametric position hints. If either the number of entities or number of spatial coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum. | |
void | FBiGeom_getEntUVRange (FBiGeom_Instance instance, iBase_EntityHandle, double *, double *, double *, double *, int *err) |
Get parametric range of entity. | |
void | FBiGeom_getEntURange (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, double *u_min, double *u_max, int *err) |
Get parametric range of entity. | |
void | FBiGeom_getArrUVRange (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double **, int *, int *, double **, int *, int *, int *err) |
Get parametric range of entities. | |
void | FBiGeom_getArrURange (FBiGeom_Instance instance, iBase_EntityHandle const *, int, double **, int *, int *, double **, int *, int *, int *err) |
Get parametric range of entities. | |
void | FBiGeom_getEntUtoUV (FBiGeom_Instance instance, iBase_EntityHandle, iBase_EntityHandle, double, double *, double *, int *err) |
Return the face parametric coordinates for a parametric position on a bounding edge. | |
void | FBiGeom_getVtxToUV (FBiGeom_Instance instance, iBase_EntityHandle, iBase_EntityHandle, double *, double *, int *err) |
Return parametric coordinates on face of vertex position. | |
void | FBiGeom_getVtxToU (FBiGeom_Instance instance, iBase_EntityHandle, iBase_EntityHandle, double *, int *err) |
Return parametric coordinates on edge of vertex position. | |
void | FBiGeom_getArrUtoUV (FBiGeom_Instance instance, iBase_EntityHandle const *, int, iBase_EntityHandle const *, int, double const *, int, int, double **, int *, int *, int *err) |
Return the face parametric coordinates for a parametric position on bounding edges. | |
void | FBiGeom_getVtxArrToUV (FBiGeom_Instance instance, iBase_EntityHandle const *, int, iBase_EntityHandle const *, int, int, double **, int *, int *, int *err) |
Return parametric coordinates on faces of vertex positions. | |
void | FBiGeom_getVtxArrToU (FBiGeom_Instance instance, iBase_EntityHandle const *, int, iBase_EntityHandle const *, int, double **, int *, int *, int *err) |
Return parametric coordinates on edges of vertex positions. | |
void | FBiGeom_getEntNrmlUV (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double *, double *, double *, int *err) |
Return the normal at a specified parametric position. | |
void | FBiGeom_getArrNrmlUV (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int *err) |
Return the normals at specified parametric positions. | |
void | FBiGeom_getEntTgntU (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, double u, double *tgnt_i, double *tgnt_j, double *tgnt_k, int *err) |
Return the tangent at a specified parametric position. | |
void | FBiGeom_getArrTgntU (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int *err) |
Return the tangents at specified parametric positions. | |
void | FBiGeom_getEnt1stDrvt (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double **, int *, int *, double **, int *, int *, int *err) |
Get the first derivative of a face at specified parametric position. | |
void | FBiGeom_getArr1stDrvt (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int **, int *, int *, double **, int *, int *, int **, int *, int *, int *err) |
Get the first derivatives of faces at specified parametric positions. | |
void | FBiGeom_getEnt2ndDrvt (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double **, int *, int *, double **, int *, int *, double **, int *, int *, int *err) |
Get the second derivative of a face at specified parametric position. | |
void | FBiGeom_getArr2ndDrvt (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, int **, int *, int *, double **, int *, int *, int **, int *, int *, double **, int *, int *, int **, int *, int *, int *err) |
Get the second derivatives of faces at specified parametric positions. | |
void | FBiGeom_getFcCvtrUV (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double *, double *, double *, double *, double *, double *, int *err) |
Get the two principle curvature vectors for a face at a parametric position. | |
void | FBiGeom_getFcArrCvtrUV (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, double **, int *, int *, int *err) |
Get the curvature(s) on face(s) at given parametric position(s) | |
void | FBiGeom_isEntPeriodic (FBiGeom_Instance, iBase_EntityHandle, int *in_u, int *in_v, int *err) |
Return whether an entity is periodic. | |
void | FBiGeom_isArrPeriodic (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int **, int *, int *, int *err) |
Return whether entities are periodic. | |
void | FBiGeom_isFcDegenerate (FBiGeom_Instance instance, iBase_EntityHandle, int *, int *err) |
Return whether a face is degenerate. | |
void | FBiGeom_isFcArrDegenerate (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int **, int *, int *, int *err) |
Return whether faces are degenerate. | |
void | FBiGeom_initEntIter (FBiGeom_Instance instance, iBase_EntitySetHandle, int, iBase_EntityIterator *, int *err) |
Initialize an iterator over specified entity type. | |
void | FBiGeom_initEntArrIter (FBiGeom_Instance instance, iBase_EntitySetHandle, int, int, iBase_EntityArrIterator *, int *err) |
Initialize an array iterator over specified entity type and size. | |
void | FBiGeom_getNextEntIter (FBiGeom_Instance instance, iBase_EntityIterator, iBase_EntityHandle *, int *, int *err) |
Get entity corresponding to an iterator and increment iterator. | |
void | FBiGeom_getNextEntArrIter (FBiGeom_Instance instance, iBase_EntityArrIterator, iBase_EntityHandle **, int *, int *, int *, int *err) |
Get entities contained in array iterator and increment iterator. | |
void | FBiGeom_resetEntIter (FBiGeom_Instance instance, iBase_EntityIterator, int *err) |
Reset the iterator. | |
void | FBiGeom_resetEntArrIter (FBiGeom_Instance instance, iBase_EntityArrIterator, int *err) |
Reset the array iterator. | |
void | FBiGeom_endEntIter (FBiGeom_Instance instance, iBase_EntityIterator, int *err) |
Destroy the specified iterator. | |
void | FBiGeom_endEntArrIter (FBiGeom_Instance instance, iBase_EntityArrIterator, int *err) |
Destroy the specified array iterator. | |
void | FBiGeom_copyEnt (FBiGeom_Instance instance, iBase_EntityHandle, iBase_EntityHandle *, int *err) |
Make a copy of the specified entity. | |
void | FBiGeom_sweepEntAboutAxis (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double, iBase_EntityHandle *, int *err) |
Sweep (extrude) an entity about an axis. | |
void | FBiGeom_deleteAll (FBiGeom_Instance instance, int *err) |
Delete all entities and sets. | |
void | FBiGeom_deleteEnt (FBiGeom_Instance instance, iBase_EntityHandle, int *err) |
Delete specified entity. | |
void | FBiGeom_createSphere (FBiGeom_Instance instance, double, iBase_EntityHandle *, int *err) |
Create a sphere. | |
void | FBiGeom_createPrism (FBiGeom_Instance instance, double, int, double, double, iBase_EntityHandle *, int *err) |
Create a prism. | |
void | FBiGeom_createBrick (FBiGeom_Instance instance, double, double, double, iBase_EntityHandle *, int *err) |
Create an axis-oriented box. | |
void | FBiGeom_createCylinder (FBiGeom_Instance instance, double, double, double, iBase_EntityHandle *, int *err) |
Create a cylinder. | |
void | FBiGeom_createCone (FBiGeom_Instance instance, double, double, double, double, iBase_EntityHandle *, int *err) |
Create a cone or tapered cylinder. | |
void | FBiGeom_createTorus (FBiGeom_Instance instance, double, double, iBase_EntityHandle *, int *err) |
Create a torus. | |
void | FBiGeom_moveEnt (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, int *err) |
Move an entity by the given vector. | |
void | FBiGeom_rotateEnt (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double, int *err) |
Rotate an entity about an axis. | |
void | FBiGeom_reflectEnt (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double, double, double, int *err) |
Reflect an entity across a plane. | |
void | FBiGeom_scaleEnt (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double, double, double, int *err) |
Scale an entity in the x, y, and z directions. | |
void | FBiGeom_uniteEnts (FBiGeom_Instance instance, iBase_EntityHandle const *, int, iBase_EntityHandle *, int *err) |
Geometrically unite entities. | |
void | FBiGeom_subtractEnts (FBiGeom_Instance instance, iBase_EntityHandle, iBase_EntityHandle, iBase_EntityHandle *, int *err) |
Geometrically subtract one entity from another. | |
void | FBiGeom_intersectEnts (FBiGeom_Instance instance, iBase_EntityHandle, iBase_EntityHandle, iBase_EntityHandle *, int *err) |
Geometrically intersect a pair of entities. | |
void | FBiGeom_sectionEnt (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double, int, iBase_EntityHandle *, int *err) |
Section (cut) a region with a plane. | |
void | FBiGeom_imprintEnts (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int *err) |
Imprint entities. | |
void | FBiGeom_mergeEnts (FBiGeom_Instance instance, iBase_EntityHandle const *, int, double, int *err) |
Merge ents. | |
void | FBiGeom_createEntSet (FBiGeom_Instance instance, int isList, iBase_EntitySetHandle *entity_set_created, int *err) |
Create an entity set. | |
void | FBiGeom_destroyEntSet (FBiGeom_Instance instance, iBase_EntitySetHandle, int *err) |
Destroy an entity set. | |
void | FBiGeom_isList (FBiGeom_Instance instance, iBase_EntitySetHandle, int *, int *err) |
Return whether a specified set is ordered or unordered. | |
void | FBiGeom_getNumEntSets (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_handle, int, int *num_sets, int *err) |
Get the number of entity sets contained in a set or interface. | |
void | FBiGeom_getEntSets (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_handle, int, iBase_EntitySetHandle **contained_set_handles, int *contained_set_handles_allocated, int *contained_set_handles_size, int *err) |
Get the entity sets contained in a set or interface. | |
void | FBiGeom_addEntToSet (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_EntitySetHandle entity_set, int *err) |
Add an entity to a set. | |
void | FBiGeom_rmvEntFromSet (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_EntitySetHandle entity_set, int *err) |
Remove an entity from a set. | |
void | FBiGeom_addEntArrToSet (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_EntitySetHandle entity_set, int *err) |
Add an array of entities to a set. | |
void | FBiGeom_rmvEntArrFromSet (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_EntitySetHandle entity_set, int *err) |
Remove an array of entities from a set. | |
void | FBiGeom_addEntSet (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_to_add, iBase_EntitySetHandle entity_set_handle, int *err) |
Add an entity set to a set. | |
void | FBiGeom_rmvEntSet (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_to_remove, iBase_EntitySetHandle entity_set_handle, int *err) |
Remove an entity set from a set. | |
void | FBiGeom_isEntContained (FBiGeom_Instance instance, iBase_EntitySetHandle containing_entity_set, iBase_EntityHandle contained_entity, int *is_contained, int *err) |
Return whether an entity is contained in another set. | |
void | FBiGeom_isEntArrContained (FBiGeom_Instance instance, iBase_EntitySetHandle containing_set, const iBase_EntityHandle *entity_handles, int num_entity_handles, int **is_contained, int *is_contained_allocated, int *is_contained_size, int *err) |
Return whether entities are contained in a set. | |
void | FBiGeom_isEntSetContained (FBiGeom_Instance instance, iBase_EntitySetHandle containing_entity_set, iBase_EntitySetHandle contained_entity_set, int *is_contained, int *err) |
Return whether an entity set is contained in another set. | |
void | FBiGeom_addPrntChld (FBiGeom_Instance instance, iBase_EntitySetHandle parent_entity_set, iBase_EntitySetHandle child_entity_set, int *err) |
Add parent/child links between two sets. | |
void | FBiGeom_rmvPrntChld (FBiGeom_Instance instance, iBase_EntitySetHandle parent_entity_set, iBase_EntitySetHandle child_entity_set, int *err) |
Remove parent/child links between two sets. | |
void | FBiGeom_isChildOf (FBiGeom_Instance instance, iBase_EntitySetHandle parent_entity_set, iBase_EntitySetHandle child_entity_set, int *is_child, int *err) |
Return whether two sets are related by parent/child links. | |
void | FBiGeom_getNumChld (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, int num_hops, int *num_child, int *err) |
Get the number of child sets linked from a specified set. | |
void | FBiGeom_getNumPrnt (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, int num_hops, int *num_parent, int *err) |
Get the number of parent sets linked from a specified set. | |
void | FBiGeom_getChldn (FBiGeom_Instance instance, iBase_EntitySetHandle from_entity_set, int num_hops, iBase_EntitySetHandle **entity_set_handles, int *entity_set_handles_allocated, int *entity_set_handles_size, int *err) |
Get the child sets linked from a specified set. | |
void | FBiGeom_getPrnts (FBiGeom_Instance instance, iBase_EntitySetHandle from_entity_set, int num_hops, iBase_EntitySetHandle **entity_set_handles, int *entity_set_handles_allocated, int *entity_set_handles_size, int *err) |
Get the parent sets linked from a specified set. | |
void | FBiGeom_createTag (FBiGeom_Instance instance, const char *tag_name, int tag_size, int tag_type, iBase_TagHandle *tag_handle, int *err, int tag_name_len) |
Create a tag with specified name, size, and type. | |
void | FBiGeom_destroyTag (FBiGeom_Instance instance, iBase_TagHandle tag_handle, int, int *err) |
Destroy a tag. | |
void | FBiGeom_getTagName (FBiGeom_Instance instance, iBase_TagHandle tag_handle, char *name, int *err, int name_len) |
Get the name for a given tag handle. | |
void | FBiGeom_getTagSizeValues (FBiGeom_Instance instance, iBase_TagHandle tag_handle, int *tag_size, int *err) |
Get size of a tag in units of numbers of tag data type. | |
void | FBiGeom_getTagSizeBytes (FBiGeom_Instance instance, iBase_TagHandle tag_handle, int *tag_size, int *err) |
Get size of a tag in units of bytes. | |
void | FBiGeom_getTagHandle (FBiGeom_Instance instance, const char *tag_name, iBase_TagHandle *tag_handle, int *err, int tag_name_len) |
Get a the handle of an existing tag with the specified name. | |
void | FBiGeom_getTagType (FBiGeom_Instance instance, iBase_TagHandle tag_handle, int *tag_type, int *err) |
Get the data type of the specified tag handle. | |
void | FBiGeom_setEntSetData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_handle, iBase_TagHandle tag_handle, const void *tag_value, int tag_value_size, int *err) |
Set a tag value of arbitrary type on an entity set. | |
void | FBiGeom_setEntSetIntData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, int tag_value, int *err) |
Set a tag value of integer type on an entity set. | |
void | FBiGeom_setEntSetDblData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, double tag_value, int *err) |
Set a tag value of double type on an entity set. | |
void | FBiGeom_setEntSetEHData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, iBase_EntityHandle tag_value, int *err) |
Set a tag value of entity handle type on an entity set. | |
void | FBiGeom_setEntSetESHData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, iBase_EntitySetHandle tag_value, int *err) |
Set a tag value of entity set handle type on an entity set. | |
void | FBiGeom_getEntSetData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_handle, iBase_TagHandle tag_handle, void **tag_value, int *tag_value_allocated, int *tag_value_size, int *err) |
Get the value of a tag of arbitrary type on an entity set. | |
void | FBiGeom_getEntSetIntData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, int *out_data, int *err) |
Get the value of a tag of integer type on an entity set. | |
void | FBiGeom_getEntSetDblData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, double *out_data, int *err) |
Get the value of a tag of double type on an entity set. | |
void | FBiGeom_getEntSetEHData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, iBase_EntityHandle *out_data, int *err) |
Get the value of a tag of entity handle type on an entity set. | |
void | FBiGeom_getEntSetESHData (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set, iBase_TagHandle tag_handle, iBase_EntitySetHandle *out_data, int *err) |
Get the value of a tag of entity set handle type on an entity set. | |
void | FBiGeom_getAllEntSetTags (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_handle, iBase_TagHandle **tag_handles, int *tag_handles_allocated, int *tag_handles_size, int *err) |
Get all the tags associated with a specified entity set. | |
void | FBiGeom_rmvEntSetTag (FBiGeom_Instance instance, iBase_EntitySetHandle entity_set_handle, iBase_TagHandle tag_handle, int *err) |
Remove a tag value from an entity set. | |
void | FBiGeom_getArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, void **tag_values, int *tag_values_allocated, int *tag_values_size, int *err) |
Get tag values of arbitrary type for an array of entities. | |
void | FBiGeom_getIntArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, int **tag_values, int *tag_values_allocated, int *tag_values_size, int *err) |
Get tag values of integer type for an array of entities. | |
void | FBiGeom_getDblArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, double **tag_values, int *tag_values_allocated, int *tag_values_size, int *err) |
Get tag values of double type for an array of entities. | |
void | FBiGeom_getEHArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, iBase_EntityHandle **tag_value, int *tag_value_allocated, int *tag_value_size, int *err) |
Get tag values of entity handle type for an array of entities. | |
void | FBiGeom_getESHArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, iBase_EntitySetHandle **tag_value, int *tag_value_allocated, int *tag_value_size, int *err) |
Get tag values of entity set handle type for an array of entities. | |
void | FBiGeom_setArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, const void *tag_values, int tag_values_size, int *err) |
Set tag values of arbitrary type on an array of entities. | |
void | FBiGeom_setIntArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, const int *tag_values, int tag_values_size, int *err) |
Set tag values of integer type on an array of entities. | |
void | FBiGeom_setDblArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, const double *tag_values, const int tag_values_size, int *err) |
Set tag values of double type on an array of entities. | |
void | FBiGeom_setEHArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, const iBase_EntityHandle *tag_values, int tag_values_size, int *err) |
Set tag values of entity handle type on an array of entities. | |
void | FBiGeom_setESHArrData (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, const iBase_EntitySetHandle *tag_values, int tag_values_size, int *err) |
Set tag values of entity set handle type on an array of entities. | |
void | FBiGeom_rmvArrTag (FBiGeom_Instance instance, const iBase_EntityHandle *entity_handles, int entity_handles_size, iBase_TagHandle tag_handle, int *err) |
Remove a tag value from an array of entities. | |
void | FBiGeom_getData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, void **tag_value, int *tag_value_allocated, int *tag_value_size, int *err) |
Get the value of a tag of arbitrary type on an entity. | |
void | FBiGeom_getIntData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, int *out_data, int *err) |
Get the value of a tag of integer type on an entity. | |
void | FBiGeom_getDblData (FBiGeom_Instance instance, const iBase_EntityHandle entity_handle, const iBase_TagHandle tag_handle, double *out_data, int *err) |
Get the value of a tag of double type on an entity. | |
void | FBiGeom_getEHData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, iBase_EntityHandle *out_data, int *err) |
Get the value of a tag of entity handle type on an entity. | |
void | FBiGeom_getESHData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, iBase_EntitySetHandle *out_data, int *err) |
Get the value of a tag of entity set handle type on an entity. | |
void | FBiGeom_setData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, const void *tag_value, int tag_value_size, int *err) |
Set a tag value of arbitrary type on an entity. | |
void | FBiGeom_setIntData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, int tag_value, int *err) |
Set a tag value of integer type on an entity. | |
void | FBiGeom_setDblData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, double tag_value, int *err) |
Set a tag value of double type on an entity. | |
void | FBiGeom_setEHData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, iBase_EntityHandle tag_value, int *err) |
Set a tag value of entity handle type on an entity. | |
void | FBiGeom_setESHData (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, iBase_EntitySetHandle tag_value, int *err) |
Set a tag value of entity set handle type on an entity. | |
void | FBiGeom_getAllTags (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle **tag_handles, int *tag_handles_allocated, int *tag_handles_size, int *err) |
Get all the tags associated with a specified entity handle. | |
void | FBiGeom_rmvTag (FBiGeom_Instance instance, iBase_EntityHandle entity_handle, iBase_TagHandle tag_handle, int *err) |
Remove a tag value from an entity. | |
void | FBiGeom_subtract (FBiGeom_Instance instance, iBase_EntitySetHandle, iBase_EntitySetHandle, iBase_EntitySetHandle *, int *err) |
Subtract contents of one entity set from another. | |
void | FBiGeom_intersect (FBiGeom_Instance instance, iBase_EntitySetHandle, iBase_EntitySetHandle, iBase_EntitySetHandle *, int *err) |
Intersect contents of one entity set with another. | |
void | FBiGeom_unite (FBiGeom_Instance instance, iBase_EntitySetHandle, iBase_EntitySetHandle, iBase_EntitySetHandle *, int *err) |
Unite contents of one entity set with another. | |
void | FBiGeom_getEntClosestPtTrimmed (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double *, double *, double *, int *err) |
Get closest point for an array of entities and points For surfaces, closest point could be on the void space inside it. Get closest point for an array of entities and points. If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum. | |
void | FBiGeom_getFcCvtrXYZ (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double *, double *, double *, double *, double *, double *, int *err) |
Get the two principle curvature vectors for a face at a point. | |
void | FBiGeom_getEgCvtrXYZ (FBiGeom_Instance instance, iBase_EntityHandle, double, double, double, double *, double *, double *, int *err) |
Get the principle curvature vector for an edge at a point. | |
void | FBiGeom_getEntArrCvtrXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, double **, int *, int *, int *err) |
Get the curvature(s) on an entity(ies) at given position(s) | |
void | FBiGeom_getEgEvalXYZ (FBiGeom_Instance instance, iBase_EntityHandle edge, double x, double y, double z, double *on_x, double *on_y, double *on_z, double *tngt_i, double *tngt_j, double *tngt_k, double *cvtr_i, double *cvtr_j, double *cvtr_k, int *err) |
Get closest point, tangent, and curvature of edge. | |
void | FBiGeom_getFcEvalXYZ (FBiGeom_Instance instance, iBase_EntityHandle face_handle, double x, double y, double z, double *on_x, double *on_y, double *on_z, double *nrml_i, double *nrml_j, double *nrml_k, double *cvtr1_i, double *cvtr1_j, double *cvtr1_k, double *cvtr2_i, double *cvtr2_j, double *cvtr2_k, int *err) |
Get closest point, tangent, and curvature of face. | |
void | FBiGeom_getArrEgEvalXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, double **, int *, int *, double **, int *, int *, int *err) |
Get the closest point(s), tangent(s), and curvature(s) on an entity(ies) at given position(s) | |
void | FBiGeom_getArrFcEvalXYZ (FBiGeom_Instance instance, iBase_EntityHandle const *, int, int, double const *, int, double **, int *, int *, double **, int *, int *, double **, int *, int *, double **, int *, int *, int *err) |
Get the closest point(s), tangent(s), and curvature(s) on an entity(ies) at given position(s) | |
void | FBiGeom_getPntClsf (FBiGeom_Instance instance, double, double, double, iBase_EntityHandle *, int *err) |
Get the entity on which a point is located. | |
void | FBiGeom_getPntArrClsf (FBiGeom_Instance instance, int, double const *, int, iBase_EntityHandle **, int *, int *, int *err) |
Get the entities on which points are located. | |
void | FBiGeom_getFacets (FBiGeom_Instance instance, iBase_EntityHandle, double, double, int, int, int, int, int, int *err) |
void | FBiGeom_getEntTolerance (FBiGeom_Instance instance, iBase_EntityHandle, double *, int *err) |
Get the tolerance of the specified entity. | |
void | FBiGeom_getArrTolerance (FBiGeom_Instance instance, iBase_EntityHandle const *, int, double **, int *, int *, int *err) |
Get the tolerances of the specified entities. | |
void | FBiGeom_getTolerance (FBiGeom_Instance instance, int *, double *, int *err) |
Get the tolerance of the instance. | |
Variables | |
bool | debug_igeom = false |
bool | Debug_surf_eval = false |
#define COPY_DOUBLEVEC | ( | r, | |
vec | |||
) |
{ \ double* tmp_ptr = reinterpret_cast< double* >( vec ); \ std::copy( ( r ).begin(), ( r ).end(), tmp_ptr ); \ }
Definition at line 58 of file FBiGeom_MOAB.cpp.
Referenced by FBiGeom_getPntRayIntsct().
#define COPY_RANGE | ( | r, | |
vec | |||
) |
{ \ EntityHandle* tmp_ptr = reinterpret_cast< EntityHandle* >( vec ); \ std::copy( ( r ).begin(), ( r ).end(), tmp_ptr ); \ }
Definition at line 50 of file FBiGeom_MOAB.cpp.
Referenced by FBiGeom_getArrAdj(), FBiGeom_getEnt2ndAdj(), FBiGeom_getEntAdj(), FBiGeom_getEntities(), FBiGeom_getEntSets(), and FBiGeom_getPntRayIntsct().
#define TAG_HANDLE | ( | tagh | ) | reinterpret_cast< Tag >( tagh ) |
Definition at line 56 of file FBiGeom_MOAB.cpp.
Referenced by FBiGeom_destroyTag().
static int compare_no_case1 | ( | const char * | str1, |
const char * | str2, | ||
size_t | n | ||
) | [static] |
Definition at line 16 of file FBiGeom_MOAB.cpp.
Referenced by filter_options1().
{ for( size_t i = 1; i != n && *str1 && toupper( *str1 ) == toupper( *str2 ); ++i, ++str1, ++str2 ) ; return toupper( *str2 ) - toupper( *str1 ); }
void FBiGeom_addEntArrToSet | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_EntitySetHandle | entity_set, | ||
int * | err | ||
) |
Add an array of entities to a set.
Add an array of entities to a set
instance | FBiGeom instance handle |
entity_handles | Array of entities being added |
entity_handles_size | Number of entities in entity_handles array |
entity_set | Pointer to the set being added to |
*err | Pointer to error type returned from function |
Definition at line 1871 of file FBiGeom_MOAB.cpp.
References iMesh_addEntArrToSet, and IMESH_INSTANCE.
{ iMesh_addEntArrToSet( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, entity_set, err ); }
void FBiGeom_addEntSet | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_to_add, | ||
iBase_EntitySetHandle | entity_set_handle, | ||
int * | err | ||
) |
Add an entity set to a set.
Add an entity set to a set
instance | FBiGeom instance handle |
entity_set_to_add | The entity set being added |
entity_set_handle | Pointer to the set being added to |
*err | Pointer to error type returned from function |
Definition at line 1889 of file FBiGeom_MOAB.cpp.
References iMesh_addEntSet, and IMESH_INSTANCE.
{ iMesh_addEntSet( IMESH_INSTANCE( instance ), entity_set_to_add, entity_set_handle, err ); }
void FBiGeom_addEntToSet | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_EntitySetHandle | entity_set, | ||
int * | err | ||
) |
Add an entity to a set.
Add an entity to a set
instance | FBiGeom instance handle |
entity_handle | The entity being added |
entity_set | Pointer to the set being added to |
*err | Pointer to error type returned from function |
Definition at line 1855 of file FBiGeom_MOAB.cpp.
References iMesh_addEntToSet, and IMESH_INSTANCE.
{ iMesh_addEntToSet( IMESH_INSTANCE( instance ), entity_handle, entity_set, err ); }
void FBiGeom_addPrntChld | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | parent_entity_set, | ||
iBase_EntitySetHandle | child_entity_set, | ||
int * | err | ||
) |
Add parent/child links between two sets.
Add parent/child links between two sets. Makes parent point to child and child point to parent.
instance | FBiGeom instance handle |
parent_entity_set | Pointer to parent set |
child_entity_set | Pointer to child set |
*err | Pointer to error type returned from function |
Definition at line 1937 of file FBiGeom_MOAB.cpp.
References iMesh_addPrntChld, and IMESH_INSTANCE.
{ iMesh_addPrntChld( IMESH_INSTANCE( instance ), parent_entity_set, child_entity_set, err ); }
void FBiGeom_copyEnt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | source, | ||
iBase_EntityHandle * | copy, | ||
int * | err | ||
) |
Make a copy of the specified entity.
Make a copy of the specified entity
instance | FBiGeom instance handle |
source | entity to be copied |
copy | the newly-created entity |
*err | Pointer to error type returned from function |
Definition at line 1638 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_createBrick | ( | FBiGeom_Instance | instance, |
double | x, | ||
double | y, | ||
double | z, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Create an axis-oriented box.
Create an axis-oriented box of the given dimensions, centered at the origin.
instance | FBiGeom instance handle |
x | x dimension of new box |
y | y dimension of new box |
z | z dimension of new box |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1676 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_createCone | ( | FBiGeom_Instance | instance, |
double | height, | ||
double | major_rad_base, | ||
double | minor_rad_base, | ||
double | rad_top, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Create a cone or tapered cylinder.
Create a cone parallel to the z-axis and centered at the origin (so that its z-coordinate extents are +height/2 and -height/2). The 'base' of the cylinder is at z = -height/2, and the top is at +height/2.
instance | FBiGeom instance handle |
height | The height of the cone. |
major_rad_base | The x-axis radius at the base of the cylinder |
minor_rad_base | The y-axis radius at the base. If minor_rad_base is 0, the cylinder will be circular (as if minor_rad_base == major_rad_base) |
rad_top | The x-axis radius at the top of the cone. The y-axis radius at the top of the cone will be inferred to keep the aspect ratio of the top of the cone the same as the bottom. If rad_top is 0, the cone terminates at a point. |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1686 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_createCylinder | ( | FBiGeom_Instance | instance, |
double | height, | ||
double | major_rad, | ||
double | minor_rad, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Create a cylinder.
Create a cylinder parallel to the z-axis and centered at the origin (so that its z-coordinate extents are +height/2 and -height/2).
instance | FBiGeom instance handle |
height | The height of the cylinder. |
major_rad | The x-axis radius |
minor_rad | The y-axis radius. If minor_rad is 0, the cylinder will be circular (as if minor_rad == major_rad). |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1681 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_createEntSet | ( | FBiGeom_Instance | instance, |
int | isList, | ||
iBase_EntitySetHandle * | entity_set_created, | ||
int * | err | ||
) |
Create an entity set.
Create an entity set, either ordered (isList=1) or unordered (isList=0). Unordered entity sets can contain a given entity or set only once.
instance | FBiGeom instance handle |
isList | If non-zero, an ordered list is created, otherwise an unordered set is created. |
entity_set_created | Entity set created by function |
*err | Pointer to error type returned from function |
Definition at line 1779 of file FBiGeom_MOAB.cpp.
References FWDERR, iMesh_createEntSet, and IMESH_INSTANCE.
{ iMesh_createEntSet( IMESH_INSTANCE( instance ), isList, entity_set_created, err ); FWDERR(); }
void FBiGeom_createPrism | ( | FBiGeom_Instance | instance, |
double | height, | ||
int | n_sides, | ||
double | major_rad, | ||
double | minor_rad, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Create a prism.
Create a prism parallel to the z-axis and centered at the origin (so that its z-coordinate extents are +height/2 and -height/2).
instance | FBiGeom instance handle |
height | height of new prism |
n_sides | number of sides of new prism |
major_rad | major radius of new prism |
minor_rad | minor radius of new prism |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1671 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_createSphere | ( | FBiGeom_Instance | instance, |
double | radius, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Create a sphere.
Create a sphere of the specified radius centered on the origin.
instance | FBiGeom instance handle |
radius | radius of the sphere |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1666 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_createTag | ( | FBiGeom_Instance | instance, |
const char * | tag_name, | ||
int | tag_size, | ||
int | tag_type, | ||
iBase_TagHandle * | tag_handle, | ||
int * | err, | ||
int | tag_name_len | ||
) |
Create a tag with specified name, size, and type.
Create a tag with specified name, size, and type. Tag size is in units of size of tag_type data types. Value input for tag type must be value in iBase_TagType enumeration.
instance | FBiGeom instance handle |
tag_name | Character string indicating tag name |
tag_size | Size of each tag value, in units of number of tag_type entities |
tag_type | Data type for data stored in this tag |
tag_handle | Pointer to tag handle returned from function |
*err | Pointer to error type returned from function |
tag_name_len | Length of tag name string |
Definition at line 2004 of file FBiGeom_MOAB.cpp.
References iMesh_createTag, and IMESH_INSTANCE.
{ iMesh_createTag( IMESH_INSTANCE( instance ), tag_name, tag_size, tag_type, tag_handle, err, tag_name_len ); }
void FBiGeom_createTorus | ( | FBiGeom_Instance | instance, |
double | major_rad, | ||
double | minor_rad, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Create a torus.
Create a torus centered on the origin and encircling the z-axis.
instance | FBiGeom instance handle |
major_rad | The distance from the origin to the center of the torus's circular cross-section. |
minor_rad | The radius of the cross-section. |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1691 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_deleteAll | ( | FBiGeom_Instance | instance, |
int * | err | ||
) |
Delete all entities and sets.
Delete all entities and sets
instance | FBiGeom instance handle |
*err | Pointer to error type returned from function |
Definition at line 1655 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ // it means deleting some sets from moab db ; is this what we want? RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_deleteEnt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
int * | err | ||
) |
Delete specified entity.
Delete specified entity
instance | FBiGeom instance handle |
entity_handle | Entity to be deleted |
*err | Pointer to error type returned from function |
Definition at line 1661 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_destroyEntSet | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
int * | err | ||
) |
Destroy an entity set.
Destroy an entity set
instance | FBiGeom instance handle |
entity_set | Entity set to be destroyed |
*err | Pointer to error type returned from function |
Definition at line 1785 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_destroyTag | ( | FBiGeom_Instance | instance, |
iBase_TagHandle | tag_handle, | ||
int | forced, | ||
int * | err | ||
) |
Destroy a tag.
Destroy a tag. If forced is non-zero and entities still have values set for this tag, tag is deleted anyway and those values disappear, otherwise tag is not deleted.
instance | FBiGeom instance handle |
tag_handle | Handle of tag to be deleted |
forced | If non-zero, delete the tag even if entities have values set for that tag |
*err | Pointer to error type returned from function |
Definition at line 2016 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, iBase_SUCCESS, MBI, RETURN, and TAG_HANDLE.
{ ErrorCode rval = MBI->tag_delete( TAG_HANDLE( tag_handle ) );CHKERR( rval, "Failed to delete tag" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_dtor | ( | FBiGeom_Instance | instance, |
int * | err | ||
) |
Construct a new FBiGeom instance.
Construct a new FBiGeom instance, using an existing moab iMesh instance and a root set that encapsulates the topological model
mesh | iMesh_Instance |
set | root set for the mesh based geometry |
options | Pointer to implementation-specific options string |
instance | Pointer to FBiGeom instance handle returned from function |
*err | Pointer to error type returned from function |
options_len | Length of the character string pointed to by optionsDestroy an FBiGeom instance |
Destroy an FBiGeom instance
instance | FBiGeom instance to be destroyed |
*err | Pointer to error type returned from function |
Definition at line 87 of file FBiGeom_MOAB.cpp.
References iBase_SUCCESS.
{ MBiGeom** mbigeom = reinterpret_cast< MBiGeom** >( &instance ); if( *mbigeom ) delete *mbigeom; *err = iBase_SUCCESS; }
void FBiGeom_dtor2 | ( | FBiGeom_Instance | instance, |
int * | err | ||
) |
Definition at line 119 of file FBiGeom_MOAB.cpp.
References FBE_cast(), moab::FBEngine::get_gtt(), and iBase_SUCCESS.
Referenced by shutdown_test2().
{ moab::FBEngine* fbe = FBE_cast( instance ); if( fbe ) { moab::GeomTopoTool* gtt = fbe->get_gtt(); if( gtt ) delete gtt; delete fbe; } MBiGeom** mbigeom = reinterpret_cast< MBiGeom** >( &instance ); if( *mbigeom ) delete *mbigeom; *err = iBase_SUCCESS; }
void FBiGeom_endEntArrIter | ( | FBiGeom_Instance | instance, |
iBase_EntityArrIterator | entArr_iterator, | ||
int * | err | ||
) |
Destroy the specified array iterator.
Destroy the specified array iterator
instance | FBiGeom instance handle |
entArr_iterator | Iterator which gets destroyed |
*err | Pointer to error type returned from function |
Definition at line 1633 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_endEntIter | ( | FBiGeom_Instance | instance, |
iBase_EntityIterator | entity_iterator, | ||
int * | err | ||
) |
Destroy the specified iterator.
Destroy the specified iterator
instance | FBiGeom instance handle |
entity_iterator | Iterator which gets destroyed |
*err | Pointer to error type returned from function |
Definition at line 1628 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getAllEntSetTags | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
iBase_TagHandle ** | tag_handles, | ||
int * | tag_handles_allocated, | ||
int * | tag_handles_size, | ||
int * | err | ||
) |
Get all the tags associated with a specified entity set.
Get all the tags associated with a specified entity set
instance | FBiGeom instance handle |
entity_set_handle | Entity being queried |
*tag_handles | Pointer to array of tag_handles returned from function |
*tag_handles_allocated | Pointer to allocated size of tag_handles array |
*tag_handles_size | Pointer to occupied size of tag_handles array |
*err | Pointer to error type returned from function |
Definition at line 2145 of file FBiGeom_MOAB.cpp.
References iMesh_getAllEntSetTags, and IMESH_INSTANCE.
{ iMesh_getAllEntSetTags( IMESH_INSTANCE( instance ), entity_set_handle, tag_handles, tag_handles_allocated, tag_handles_size, err ); }
void FBiGeom_getAllTags | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle ** | tag_handles, | ||
int * | tag_handles_allocated, | ||
int * | tag_handles_size, | ||
int * | err | ||
) |
Get all the tags associated with a specified entity handle.
Get all the tags associated with a specified entity handle
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
*tag_handles | Pointer to array of tag_handles returned from function |
*tag_handles_allocated | Pointer to allocated size of tag_handles array |
*tag_handles_size | Pointer to occupied size of tag_handles array |
*err | Pointer to error type returned from function |
Definition at line 2392 of file FBiGeom_MOAB.cpp.
References iMesh_getAllTags, and IMESH_INSTANCE.
{ iMesh_getAllTags( IMESH_INSTANCE( instance ), entity_handle, tag_handles, tag_handles_allocated, tag_handles_size, err ); }
void FBiGeom_getArr1stDrvt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | uv, | ||
int | uv_size, | ||
double ** | dvrt_u, | ||
int * | dvrt_u_allocated, | ||
int * | dvrt_u_size, | ||
int ** | u_offset, | ||
int * | u_offset_allocated, | ||
int * | u_offset_size, | ||
double ** | dvrt_v, | ||
int * | dvrt_v_allocated, | ||
int * | dvrt_v_size, | ||
int ** | v_offset, | ||
int * | v_offset_allocated, | ||
int * | v_offset_size, | ||
int * | err | ||
) |
Get the first derivatives of faces at specified parametric positions.
Get the first derivatives of faces at specified parametric positions. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Array of entity handles being queried |
entity_handles_size | Number of entities in entity_handles array |
storage_order | Storage order of coordinates input and output |
uv | Parametric coordinates being queried |
uv_size | Number of coordinates in array |
dvrt_u | Pointer to array of coordinates of derivative with respect to u at specified position returned from function |
dvrt_u_allocated | Allocated size of dvrt_u array |
dvrt_u_size | Occupied size of dvrt_u array |
u_offset | Pointer to array of offsets for dvrt_u returned from function |
u_offset_allocated | Pointer to allocated size of u_offset array |
u_offset_size | Pointer to occupied size of u_offset array |
dvrt_v | Pointer to array of coordinates of derivative with respect to v at specified position returned from function |
dvrt_v_allocated | Allocated size of dvrt_v array |
dvrt_v_size | Occupied size of dvrt_v array |
v_offset | Pointer to array of offsets for dvrt_v returned from function |
v_offset_allocated | Pointer to allocated size of v_offset array |
v_offset_size | Pointer to occupied size of v_offset array |
*err | Pointer to error type returned from function |
Definition at line 1466 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArr2ndAdj | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | order_adjacent_key, | ||
int | requested_entity_type, | ||
iBase_EntityHandle ** | adj_entity_handles, | ||
int * | adj_entity_handles_allocated, | ||
int * | adj_entity_handles_size, | ||
int ** | offset, | ||
int * | offset_allocated, | ||
int * | offset_size, | ||
int * | err | ||
) |
Get "2nd order" adjacencies to an array of entities.
Get "2nd order" adjacencies to an array of entities, that is, from each entity, through other entities of a specified "bridge" dimension, to other entities of another specified "to" dimension.
instance | FBiGeom instance handle |
entity_handles | Entities from which adjacencies are requested |
entity_handles_size | Number of entities whose adjacencies are requested |
bridge_dimension | Bridge dimension for 2nd order adjacencies |
to_dimension | Dimension of adjacent entities returned |
adj_entity_handles | Adjacent entities |
adj_entity_handles_allocated | Allocated size of returned array |
adj_entity_handles_size | Occupied size of returned array |
offset | Offset[i] is offset into adj_entity_handles of 2nd order adjacencies of ith entity in entity_handles |
offset_allocated | Allocated size of offset array |
offset_size | Occupied size of offset array |
*err | Pointer to error type returned from function |
Definition at line 388 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ // not implemented // who would need this monster, anyway? RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArr2ndDrvt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | uv, | ||
int | uv_size, | ||
double ** | dvtr_uu, | ||
int * | dvrt_uu_allocated, | ||
int * | dvrt_uu_size, | ||
int ** | uu_offset, | ||
int * | uu_offset_allocated, | ||
int * | uu_offset_size, | ||
double ** | dvtr_vv, | ||
int * | dvrt_vv_allocated, | ||
int * | dvrt_vv_size, | ||
int ** | vv_offset, | ||
int * | vv_offset_allocated, | ||
int * | vv_offset_size, | ||
double ** | dvrt_uv, | ||
int * | dvrt_uv_allocated, | ||
int * | dvrt_uv_size, | ||
int ** | uv_offset, | ||
int * | uv_offset_allocated, | ||
int * | uv_offset_size, | ||
int * | err | ||
) |
Get the second derivatives of faces at specified parametric positions.
Get the second derivatives of faces at specified parametric positions. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Array of entity handles being queried |
entity_handles_size | Number of entities in entity_handles array |
storage_order | Storage order of coordinates input and output |
uv | Parametric coordinates being queried |
uv_size | Number of coordinates in array |
dvrt_uu | Pointer to array of coordinates of derivative with respect to u at specified position returned from function |
dvrt_uu_allocated | Allocated size of dvrt_uu array |
dvrt_uu_size | Occupied size of dvrt_uu array |
uu_offset | Pointer to array of offsets for dvrt_uu returned from function |
uu_offset_allocated | Pointer to allocated size of uu_offset array |
uu_offset_size | Pointer to occupied size of uu_offset array |
dvrt_vv | Pointer to array of coordinates of derivative with respect to v at specified position returned from function |
dvrt_vv_allocated | Allocated size of dvrt_vv array |
dvrt_vv_size | Occupied size of dvrt_vv array |
vv_offset | Pointer to array of offsets for dvrt_vv returned from function |
vv_offset_allocated | Pointer to allocated size of vv_offset array |
vv_offset_size | Pointer to occupied size of vv_offset array |
dvrt_uv | Pointer to array of coordinates of derivative with respect to u and v at specified position returned from function |
dvrt_uv_allocated | Allocated size of dvrt_uv array |
dvrt_uv_size | Occupied size of dvrt_uv array |
uv_offset | Pointer to array of offsets for dvrt_uv returned from function |
uv_offset_allocated | Pointer to allocated size of uv_offset array |
uv_offset_size | Pointer to occupied size of uv_offset array |
*err | Pointer to error type returned from function |
Definition at line 1505 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrAdj | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | requested_entity_type, | ||
iBase_EntityHandle ** | adj_entity_handles, | ||
int * | adj_entity_handles_allocated, | ||
int * | adj_entity_handles_size, | ||
int ** | offset, | ||
int * | offset_allocated, | ||
int * | offset_size, | ||
int * | err | ||
) |
Get entities of specified type adjacent to entities.
Get entities of specified type adjacent to entities. Specified type must be value in the iBase_EntityType enumeration. offset(i) is index of first entity in adjacentEntityHandles array adjacent to entity_handles[i].
instance | FBiGeom instance handle |
entity_handles | Array of entity handles being queried |
entity_handles_size | Number of entities in entity_handles array |
entity_type_requested | Type of adjacent entities requested |
*adjacentEntityHandles | Pointer to array of adjacentEntityHandles returned from function |
*adjacentEntityHandles_allocated | Pointer to allocated size of adjacentEntityHandles array |
*adj_entity_handles_size | Pointer to occupied size of adjacentEntityHandles array |
*offset | Pointer to array of offsets returned from function |
*offset_allocated | Pointer to allocated size of offset array |
*offset_size | Pointer to occupied size of offset array |
*err | Pointer to error type returned from function |
Definition at line 312 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, CHKERR, moab::Range::clear(), COPY_RANGE, ErrorCode, FBE_cast(), moab::FBEngine::getEntAdj(), iBase_SUCCESS, MBH_cast(), moab::Range::merge(), RETURN, and moab::Range::size().
{ // check offset array size Range temp_range, total_range; CHECK_SIZE( *offset, *offset_allocated, entity_handles_size + 1, int, NULL ); *offset_size = entity_handles_size + 1; // get adjacent entities for( int i = 0; i < entity_handles_size; ++i ) { ( *offset )[i] = total_range.size(); temp_range.clear(); ErrorCode rval = FBE_cast( instance )->getEntAdj( MBH_cast( entity_handles[i] ), requested_entity_type, temp_range );CHKERR( rval, "Failed to get adjacent entities in FBiGeom_getArrAdj." ); total_range.merge( temp_range ); } int nTot = total_range.size(); ( *offset )[entity_handles_size] = nTot; // copy adjacent entities CHECK_SIZE( *adj_entity_handles, *adj_entity_handles_allocated, nTot, iBase_EntityHandle, NULL ); COPY_RANGE( total_range, *adj_entity_handles ); *adj_entity_handles_size = nTot; RETURN( iBase_SUCCESS ); }
void FBiGeom_getArrBoundBox | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double ** | min_corner, | ||
int * | min_corner_allocated, | ||
int * | min_corner_size, | ||
double ** | max_corner, | ||
int * | max_corner_allocated, | ||
int * | max_corner_size, | ||
int * | err | ||
) |
Get the bounding box of the specified entities.
Get the bounding box of the specified entities. Storage order passed in should be a member of iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entity handles being queried |
enttiy_handles_size | Number of entities being queried |
storage_order | Storage order of coordinates passed back |
min_corner | Minimum coordinates of bounding boxes |
min_corner_allocated | Allocated size of minimum coordinates array |
min_corner_size | Occupied size of minimum coordinates array |
max_corner | Maximum coordinates of bounding boxes |
max_corner_allocated | Allocated size of maximum coordinates array |
max_corner_size | Occupied size of maximum coordinates array |
*err | Pointer to error type returned from function |
Definition at line 853 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, FBiGeom_getEntBoundBox, FWDERR, iBase_BLOCKED, iBase_SUCCESS, init(), and RETURN.
{ // check or pre-allocate the coordinate arrays CHECK_SIZE( *min_corner, *min_corner_allocated, 3 * entity_handles_size, double, NULL ); CHECK_SIZE( *max_corner, *max_corner_allocated, 3 * entity_handles_size, double, NULL ); size_t step, init; if( storage_order == iBase_BLOCKED ) { step = 1; init = entity_handles_size; } else { step = 3; init = 1; } double *min_x, *min_y, *min_z, *max_x, *max_y, *max_z; min_x = *min_corner; max_x = *max_corner; min_y = min_x + init; max_y = max_x + init; min_z = min_y + init; max_z = max_y + init; for( int i = 0; i < entity_handles_size; ++i ) { FBiGeom_getEntBoundBox( instance, entity_handles[i], min_x, min_y, min_z, max_x, max_y, max_z, err ); FWDERR(); min_x += step; max_x += step; min_y += step; max_y += step; min_z += step; max_z += step; } *min_corner_size = 3 * entity_handles_size; *max_corner_size = 3 * entity_handles_size; RETURN( iBase_SUCCESS ); }
void FBiGeom_getArrClosestPt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | near_coordinates, | ||
int | near_coordinates_size, | ||
double ** | on_coordinates, | ||
int * | on_coordinates_allocated, | ||
int * | on_coordinates_size, | ||
int * | err | ||
) |
Get closest point for an array of entities and points For surfaces, it made sure the closest point in on surface. Get closest point for an array of entities and points. If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entity(ies) being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of input points |
near_coordinates | Coordinates of starting point(s) |
near_coordinates_size | Number of values in near_coordinates array |
on_coordinates | Coordinates of closest points |
on_coordinates_allocated | Allocated size of closest point array |
on_coordinates_size | Occupied size of closest point array |
*err | Pointer to error type returned from function |
Definition at line 494 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, FBiGeom_getEntClosestPt, FWDERR, iBase_BLOCKED, iBase_INTERLEAVED, iBase_SUCCESS, and RETURN.
{ CHECK_SIZE( *on_coordinates, *on_coordinates_allocated, near_coordinates_size, double, NULL ); for( int i = 0; i < entity_handles_size; i++ ) { if( storage_order == iBase_INTERLEAVED ) { FBiGeom_getEntClosestPt( instance, entity_handles[i], near_coordinates[3 * i], near_coordinates[3 * i + 1], near_coordinates[3 * i + 2], on_coordinates[3 * i], on_coordinates[3 * i + 1], on_coordinates[3 * i + 2], err ); } else if( storage_order == iBase_BLOCKED ) { FBiGeom_getEntClosestPt( instance, entity_handles[i], near_coordinates[i], near_coordinates[i + entity_handles_size], near_coordinates[i + 2 * entity_handles_size], on_coordinates[i], on_coordinates[i + entity_handles_size], on_coordinates[i + 2 * entity_handles_size], err ); } FWDERR(); } *on_coordinates_size = near_coordinates_size; RETURN( iBase_SUCCESS ); }
void FBiGeom_getArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
void ** | tag_values, | ||
int * | tag_values_allocated, | ||
int * | tag_values_size, | ||
int * | err | ||
) |
Get tag values of arbitrary type for an array of entities.
Get tag values of arbitrary type for an array of entities. Tag data is returned as void*. tag_values_size specifies the size of the memory pointed to by tag_values in terms of bytes. Applications may use this function to get data of any type, not just iBase_BYTES. However, because this function supports data of arbitrary type, in all cases the size specified by tag_values_size always in terms of bytes.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
*tag_values | Pointer to tag data array being returned from function. Note that the implicit INTERLEAVED storage order rule applies (see section ITAPS Storage Orders) |
tag_values_allocated | Pointer to allocated size of tag data array |
tag_values_size | Pointer to occupied size in bytes of tag data array |
*err | Pointer to error type returned from function |
Definition at line 2164 of file FBiGeom_MOAB.cpp.
References iMesh_getArrData, and IMESH_INSTANCE.
{ iMesh_getArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_allocated, tag_values_size, err ); }
void FBiGeom_getArrEgEvalXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | edge_handles, | ||
int | edge_handles_size, | ||
int | storage_order, | ||
double const * | coords, | ||
int | coords_size, | ||
double ** | on_coords, | ||
int * | on_coords_allocated, | ||
int * | on_coords_size, | ||
double ** | tangent, | ||
int * | tangent_allocated, | ||
int * | tangent_size, | ||
double ** | cvtr, | ||
int * | cvtr_allocated, | ||
int * | cvtr_size, | ||
int * | err | ||
) |
Get the closest point(s), tangent(s), and curvature(s) on an entity(ies) at given position(s)
Get the closest point(s), tangent(s), and curvature(s) on an entity(ies) at given position(s). If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
edge_handles | Edge(s) being queried |
edge_handles_size | Number of edges being queried |
storage_order | Storage order of coordinates |
coords | Starting coordinates |
coords_size | Number of values in coordinates array |
on_coords | Closest point array |
on_coords_allocated | Allocated size of closest point array |
on_coords_size | Occupied size of closest point array |
tangent | Tangent array |
tangent_allocated | Allocated size of tangent array |
tangent_size | Occupied size of tangent array |
cvtr | First principal curvatures |
cvtr_allocated | Allocated size of first curvature array |
cvtr_size | Occupied size of first curvature array |
*err | Pointer to error type returned from function |
Definition at line 2559 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrFcEvalXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
int | storage_order, | ||
double const * | coords, | ||
int | coords_size, | ||
double ** | on_coords, | ||
int * | on_coords_allocated, | ||
int * | on_coords_size, | ||
double ** | normal, | ||
int * | normal_allocated, | ||
int * | normal_size, | ||
double ** | cvtr1, | ||
int * | cvtr1_allocated, | ||
int * | cvtr1_size, | ||
double ** | cvtr2, | ||
int * | cvtr2_allocated, | ||
int * | cvtr2_size, | ||
int * | err | ||
) |
Get the closest point(s), tangent(s), and curvature(s) on an entity(ies) at given position(s)
Get the closest point(s), tangent(s), and curvature(s) on an entity(ies) at given position(s). If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
edge_handles | Edge(s) being queried |
edge_handles_size | Number of edges being queried |
storage_order | Storage order of coordinates |
coords | Starting coordinates |
coords_size | Number of values in coordinates array |
on_coords | Closest point array |
on_coords_allocated | Allocated size of closest point array |
on_coords_size | Occupied size of closest point array |
normal | Normal array |
normal_allocated | Allocated size of normal array |
normal_size | Occupied size of normal array |
cvtr_1 | First principal curvatures |
cvtr_1_allocated | Allocated size of first curvature array |
cvtr_1_size | Occupied size of first curvature array |
cvtr_2 | Second principal curvatures |
cvtr_2_allocated | Allocated size of second curvature array |
cvtr_2_size | Occupied size of second curvature array |
*err | Pointer to error type returned from function |
Definition at line 2579 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrNrmlPlXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | near_coordinates, | ||
int | near_coordinates_size, | ||
double ** | on_coordinates, | ||
int * | on_coordinates_allocated, | ||
int * | on_coordinates_size, | ||
double ** | normals, | ||
int * | normals_allocated, | ||
int * | normals_size, | ||
int * | err | ||
) |
Get the normal vector AND closest point on an entity(ies) at given position(s)
Get the normal vector AND closest point on an entity(ies) at given position(s). If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entity(ies) being queried |
entity_handles_size | Number of entity(ies) being queried |
storage_order | Storage order in near_coordinates array |
near_coordinates | Starting coordinates |
near_coordinates_size | Number of values in near_coordinates array |
on_coordinates | Closest point array |
on_coordinates_allocated | Allocated size of closest point array |
on_coordinates_size | Occupied size of closest point array |
normals | Normal array |
normals_allocated | Allocated size of normal array |
normals_size | Occupied size of normal array |
*err | Pointer to error type returned from function |
Definition at line 664 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, ERROR, FBiGeom_getEntNrmlPlXYZ, FWDERR, iBase_BLOCKED, iBase_INTERLEAVED, iBase_INVALID_ENTITY_COUNT, iBase_SUCCESS, and RETURN.
{ // set up iteration according to storage order. // allow either gentity_handles or near_coordinates to contain // only one value, where that single value is applied for every // entry in the other list. size_t index = 0; size_t near_step, on_step = 1, ent_step; int count; if( 3 * entity_handles_size == near_coordinates_size ) { near_step = ent_step = 1; count = entity_handles_size; } else if( near_coordinates_size == 3 ) { near_step = 0; ent_step = 1; count = entity_handles_size; } else if( entity_handles_size == 1 ) { near_step = 1; ent_step = 0; count = near_coordinates_size / 3; } else { ERROR( iBase_INVALID_ENTITY_COUNT, "Mismatched array sizes" ); } // check or pre-allocate the coordinate arrays CHECK_SIZE( *on_coordinates, *on_coordinates_allocated, 3 * count, double, NULL ); CHECK_SIZE( *normals, *normals_allocated, 3 * count, double, NULL ); const double *near_x, *near_y, *near_z; double *on_x, *on_y, *on_z; double *norm_x, *norm_y, *norm_z; if( storage_order == iBase_BLOCKED ) { near_x = near_coordinates; near_y = near_x + near_coordinates_size / 3; near_z = near_y + near_coordinates_size / 3; on_x = *on_coordinates; on_y = on_x + count; on_z = on_y + count; norm_x = *normals; norm_y = norm_x + count; norm_z = norm_y + count; on_step = 1; } else { storage_order = iBase_INTERLEAVED; /* set if unspecified */ near_x = near_coordinates; near_y = near_x + 1; near_z = near_x + 2; on_x = *on_coordinates; on_y = on_x + 1; on_z = on_x + 2; norm_x = *normals; norm_y = norm_x + 1; norm_z = norm_x + 2; near_step *= 3; on_step = 3; } for( int i = 0; i < count; ++i ) { FBiGeom_getEntNrmlPlXYZ( instance, entity_handles[index], *near_x, *near_y, *near_z, on_x, on_y, on_z, norm_x, norm_y, norm_z, err ); FWDERR(); // entities += ent_step; index += ent_step; near_x += near_step; near_y += near_step; near_z += near_step; on_x += on_step; on_y += on_step; on_z += on_step; norm_x += on_step; norm_y += on_step; norm_z += on_step; } *on_coordinates_size = count * 3; *normals_size = count; RETURN( iBase_SUCCESS ); }
void FBiGeom_getArrNrmlSense | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
iBase_EntityHandle const * | region_handles, | ||
int | region_handles_size, | ||
int ** | sense, | ||
int * | sense_allocated, | ||
int * | sense_size, | ||
int * | err | ||
) |
Get the senses of an array of faces with respect to an array of regions.
Get the senses of an array of faces with respect to an array of regions. Sense returned is -1, 0, or 1, representing "reversed", "both", or "forward". "both" sense indicates that face bounds the region once with each sense.
instance | FBiGeom instance handle |
face_handles | Faces being queried |
face_handles_size | Size of face handles array |
region_handles | Regions being queried |
region_handles_size | Size of region handles array |
sense | Senses of faces with respect to regions |
sense_allocated | Allocated size of senses array |
sense_size | Occupied size of senses array |
*err | Pointer to error type returned from function |
Definition at line 1049 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ // not implemented RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrNrmlUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
int | storage_order, | ||
double const * | parameters, | ||
int | parameters_size, | ||
double ** | normals, | ||
int * | normals_allocated, | ||
int * | normals_size, | ||
int * | err | ||
) |
Return the normals at specified parametric positions.
Return the normals at specified parametric positions. If either the number of entities or number of spatial coordinate pairs is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
face_handle | Faces being queried |
face_handles_size | Number of faces being queried |
storage_order | Storage order of coordinates input and output |
parameters | Parametric coordinates being queried |
parameters_size | Number of coordinates in array |
normals | Coordinates of normals at specified positions |
normals_allocated | Allocated size of normals array |
normals_size | Occupied size of normals array |
*err | Pointer to error type returned from function |
Definition at line 1414 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrNrmlXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | coordinates, | ||
int | coordinates_size, | ||
double ** | normals, | ||
int * | normals_allocated, | ||
int * | normals_size, | ||
int * | err | ||
) |
Get the normal vector on an entity(ies) at given position(s)
Get the normal vector on an entity(ies) at given position(s). If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entity(ies) being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of coordinates |
coordinates | Starting coordinates |
coordinates_size | Number of values in coordinates array |
normals | Normal coordinates |
normals_allocated | Allocated size of normals array |
normals_size | Occupied size of normals array |
*err | Pointer to error type returned from function |
Definition at line 545 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, ERROR, FBiGeom_getEntNrmlXYZ, FWDERR, iBase_BLOCKED, iBase_INTERLEAVED, iBase_INVALID_ENTITY_COUNT, iBase_SUCCESS, and RETURN.
{ // set up iteration according to storage order. // allow either gentity_handles or near_coordinates to contain // only one value, where that single value is applied for every // entry in the other list. size_t index = 0; size_t coord_step, norm_step = 1, ent_step; int count; if( 3 * entity_handles_size == coordinates_size ) { coord_step = ent_step = 1; count = entity_handles_size; } else if( coordinates_size == 3 ) { coord_step = 0; ent_step = 1; count = entity_handles_size; } else if( entity_handles_size == 1 ) { coord_step = 1; ent_step = 0; count = coordinates_size / 3; } else { ERROR( iBase_INVALID_ENTITY_COUNT, "Mismatched array sizes" ); } // check or pre-allocate the coordinate arrays CHECK_SIZE( *normals, *normals_allocated, 3 * count, double, NULL ); const double *coord_x, *coord_y, *coord_z; double *norm_x, *norm_y, *norm_z; if( storage_order == iBase_BLOCKED ) { coord_x = coordinates; coord_y = coord_x + coordinates_size / 3; coord_z = coord_y + coordinates_size / 3; norm_x = *normals; norm_y = norm_x + count; norm_z = norm_y + count; norm_step = 1; } else { storage_order = iBase_INTERLEAVED; /* set if unspecified */ coord_x = coordinates; coord_y = coord_x + 1; coord_z = coord_x + 2; norm_x = *normals; norm_y = norm_x + 1; norm_z = norm_x + 2; coord_step *= 3; norm_step = 3; } for( int i = 0; i < count; ++i ) { FBiGeom_getEntNrmlXYZ( instance, entity_handles[index], *coord_x, *coord_y, *coord_z, norm_x, norm_y, norm_z, err ); FWDERR(); index += ent_step; coord_x += coord_step; coord_y += coord_step; coord_z += coord_step; norm_x += norm_step; norm_y += norm_step; norm_z += norm_step; } *normals_size = count; RETURN( iBase_SUCCESS ); }
void FBiGeom_getArrTgntU | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | edge_handles, | ||
int | edge_handles_size, | ||
int | storage_order, | ||
double const * | parameters, | ||
int | parameters_size, | ||
double ** | tangents, | ||
int * | tangents_allocated, | ||
int * | tangents_size, | ||
int * | err | ||
) |
Return the tangents at specified parametric positions.
Return the tangents at specified parametric positions. If either the number of entities or number of spatial coordinates is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
edge_handle | Edges being queried |
edge_handles_size | Number of faces being queried |
storage_order | Storage order of coordinates output |
parameters | Parametric coordinates being queried |
parameters_size | Number of coordinates in array |
tangents | Coordinates of tangents at specified positions |
tangents_allocated | Allocated size of tangents array |
tangents_size | Occupied size of tangents array |
*err | Pointer to error type returned from function |
Definition at line 1439 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrTgntXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | coordinates, | ||
int | coordinates_size, | ||
double ** | tangents, | ||
int * | tangents_allocated, | ||
int * | tangents_size, | ||
int * | err | ||
) |
Get the tangent vector on an entity(ies) at given position(s)
Get the tangent vector on an entity(ies) at given position(s). If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum
instance | FBiGeom instance handle |
entity_handles | Entity(ies) being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of coordinates |
coordinates | Starting coordinates |
coordinates_size | Number of values in coordinates array |
tangents | Tangent coordinates |
tangents_allocated | Allocated size of tangents array |
tangents_size | Occupied size of tangents array |
*err | Pointer to error type returned from function |
Definition at line 779 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrTolerance | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
double ** | tolerances, | ||
int * | tolerances_allocated, | ||
int * | tolerances_size, | ||
int * | err | ||
) |
Get the tolerances of the specified entities.
Get the tolerances of the specified entities.
instance | FBiGeom instance handle |
entity_handles | Array of entity handles being queried |
entity_handles_size | Number of entities in entity_handles array |
tolerance | Pointer to array of tolerances returned from function |
tolerance_allocated | Pointer to allocated size of tolerance array |
tololerance_size | Pointer to occupied size of tolerance array |
*err | Pointer to error type returned from function |
Definition at line 2637 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrType | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int ** | type, | ||
int * | type_allocated, | ||
int * | type_size, | ||
int * | err | ||
) |
Get the entity type for the specified entities.
Get the entity type for the specified entities. Types returned are values in the iBase_EntityType enumeration.
instance | FBiGeom instance handle |
entity_handles | Array of entity handles being queried |
entity_handles_size | Number of entities in entity_handles array |
*type | Pointer to array of types returned from function |
*type_allocated | Pointer to allocated size of type array |
*type_size | Pointer to occupied size of type array |
*err | Pointer to error type returned from function |
Definition at line 263 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, ERROR, FBiGeom_getEntType, iBase_SUCCESS, and RETURN.
{ CHECK_SIZE( *type, *type_allocated, entity_handles_size, int, NULL ); *type_size = entity_handles_size; int tmp_err; for( int i = 0; i < entity_handles_size; i++ ) { FBiGeom_getEntType( instance, entity_handles[i], *type + i, &tmp_err ); if( iBase_SUCCESS != tmp_err ) { ERROR( tmp_err, "Failed to get entity type in FBiGeom_getArrType." ); } } RETURN( iBase_SUCCESS ); }
void FBiGeom_getArrURange | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
double ** | u_min, | ||
int * | u_min_allocated, | ||
int * | u_min_size, | ||
double ** | u_max, | ||
int * | u_max_allocated, | ||
int * | u_max_size, | ||
int * | err | ||
) |
Get parametric range of entities.
Get parametric range of entities
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of parametric coordinates being returned |
u_min | Minimum parametric coordinate for entities |
u_min_allocated | Allocated size of minimum parametric coordinate array |
u_min_size | Occupied size of minimum parametric coordinate array |
u_max | Maximum parametric coordinate for entities |
u_max_allocated | Allocated size of maximum parametric coordinate array |
u_max_size | Occupied size of maximum parametric coordinate array |
*err | Pointer to error type returned from function |
Definition at line 1332 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrUtoUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | edge_handles, | ||
int | edge_handles_size, | ||
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
double const * | u_in, | ||
int | u_in_size, | ||
int | storage_order, | ||
double ** | uv, | ||
int * | uv_allocated, | ||
int * | uv_size, | ||
int * | err | ||
) |
Return the face parametric coordinates for a parametric position on bounding edges.
Return the face parametric coordinates for a parametric position on bounding edges
instance | FBiGeom instance handle |
edge_handles | Edges being queried |
edge_handles_size | Number of edges being queried |
face_handles | Faces being queried |
face_handles_size | Number of faces being queried |
u_in | Parametric positions on edges |
u_in_size | Number of parametric positions on edges |
storage_order | Storage order of coordinates returned |
uv | Corresponding parametric positions on faces |
uv_allocated | Allocated size of parameter array |
uv_size | Occupied size of parameter array |
*err | Pointer to error type returned from function |
Definition at line 1363 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrUtoXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
double const * | u, | ||
int | u_size, | ||
int | storage_order, | ||
double ** | on_coords, | ||
int * | on_coords_allocated, | ||
int * | on_coords_size, | ||
int * | err | ||
) |
Return coordinate positions at specified parametric position(s) on entity(ies)
Return coordinate positions at specified parametric position(s) on entity(ies). If either the number of entities or number of parametric coordinate pairs is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of resulting coordinates |
uv | Coordinates being queried |
uv_size | Number of coordinates in array |
coordinates | Coordinates of parametric positions |
coordinates_allocated | Allocated size of coordinates array |
coordinates_size | Occupied size of coordinates array |
*err | Pointer to error type returned from function |
Definition at line 1219 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ // not implemented RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrUVRange | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double ** | uv_min, | ||
int * | uv_min_allocated, | ||
int * | uv_min_size, | ||
double ** | uv_max, | ||
int * | uv_max_allocated, | ||
int * | uv_max_size, | ||
int * | err | ||
) |
Get parametric range of entities.
Get parametric range of entities
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of parametric coordinates being returned |
uv_min | Minimum parametric coordinate for entities |
uv_min_allocated | Allocated size of minimum parametric coordinate array |
uv_min_size | Occupied size of minimum parametric coordinate array |
uv_max | Maximum parametric coordinate for entities |
uv_max_allocated | Allocated size of maximum parametric coordinate array |
uv_max_size | Occupied size of maximum parametric coordinate array |
*err | Pointer to error type returned from function |
Definition at line 1318 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrUVtoXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | uv, | ||
int | uv_size, | ||
double ** | coordinates, | ||
int * | coordinates_allocated, | ||
int * | coordinates_size, | ||
int * | err | ||
) |
Return coordinate positions at specified parametric position(s) on entity(ies)
Return coordinate positions at specified parametric position(s) on entity(ies). If either the number of entities or number of parametric coordinate pairs is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of uv coordinates input and xyz coordinate output |
uv | Coordinates being queried |
uv_size | Number of coordinates in array |
coordinates | Coordinates of parametric positions |
coordinates_allocated | Allocated size of coordinates array |
coordinates_size | Occupied size of coordinates array |
*err | Pointer to error type returned from function |
Definition at line 1186 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrXYZtoU | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | coordinates, | ||
int | coordinates_size, | ||
double ** | u, | ||
int * | u_allocated, | ||
int * | u_size, | ||
int * | err | ||
) |
Return spatial positions at specified parametric position(s) on entity(ies)
Return spatial positions at specified parametric position(s) on entity(ies). If either the number of entities or number of spatial coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of spatial coordinates input |
coordinates | Coordinates being queried |
coordinates_size | Number of coordinates in array |
u | Coordinates of parametric positions |
u_allocated | Allocated size of coordinates array |
u_size | Occupied size of coordinates array |
*err | Pointer to error type returned from function |
Definition at line 1261 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrXYZtoUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | coordinates, | ||
int | coordinates_size, | ||
double ** | uv, | ||
int * | uv_allocated, | ||
int * | uv_size, | ||
int * | err | ||
) |
Return parametric positions at specified spatial position(s) on entity(ies) Return parametric positions at specified spatial position(s) on entity(ies). If either the number of entities or number of spatial coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of spatial coordinates input |
coordinates | Coordinates being queried |
coordinates_size | Number of coordinates in array |
uv | Coordinates of parametric positions |
uv_allocated | Allocated size of coordinates array |
uv_size | Occupied size of coordinates array |
*err | Pointer to error type returned from function |
Definition at line 1248 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getArrXYZtoUVHint | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | coords, | ||
int | coords_size, | ||
double ** | uv, | ||
int * | uv_allocated, | ||
int * | uv_size, | ||
int * | err | ||
) |
Return parametric positions at specified spatial position(s) on entity(ies), based on parametric position hints Return parametric positions at specified spatial position(s) on entity(ies), based on parametric position hints. If either the number of entities or number of spatial coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of spatial coordinates input |
coordinates | Coordinates being queried |
coordinates_size | Number of coordinates in array |
uv | Coordinates of parametric positions |
uv_allocated | Allocated size of coordinates array |
uv_size | Occupied size of coordinates array |
*err | Pointer to error type returned from function |
Definition at line 1285 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getBoundBox | ( | FBiGeom_Instance | instance, |
double * | min_x, | ||
double * | min_y, | ||
double * | min_z, | ||
double * | max_x, | ||
double * | max_y, | ||
double * | max_z, | ||
int * | err | ||
) |
Get the bounding box of the entire model.
Get the bounding box of the entire model
instance | FBiGeom instance handle |
min_x | Minimum coordinate of bounding box |
min_y | Minimum coordinate of bounding box |
min_z | Minimum coordinate of bounding box |
max_x | Maximum coordinate of bounding box |
max_y | Maximum coordinate of bounding box |
max_z | Maximum coordinate of bounding box |
*err | Pointer to error type returned from function |
Definition at line 209 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getChldn | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | from_entity_set, | ||
int | num_hops, | ||
iBase_EntitySetHandle ** | entity_set_handles, | ||
int * | entity_set_handles_allocated, | ||
int * | entity_set_handles_size, | ||
int * | err | ||
) |
Get the child sets linked from a specified set.
Get the child sets linked from a specified set. If num_hops is not -1, this represents the maximum hops from entity_set to any child.
instance | FBiGeom instance handle |
from_entity_set | Entity set being queried |
num_hops | Maximum hops from entity_set_handle to child set, not inclusive of the child set |
*entity_set_handles | Pointer to array of child sets returned from function |
*entity_set_handles_allocated | Pointer to allocated size of entity_set_handles array |
*entity_set_handles_size | Pointer to occupied size of entity_set_handles array |
*err | Pointer to error type returned from function |
Definition at line 1980 of file FBiGeom_MOAB.cpp.
References iMesh_getChldn, and IMESH_INSTANCE.
{ iMesh_getChldn( IMESH_INSTANCE( instance ), from_entity_set, num_hops, entity_set_handles, entity_set_handles_allocated, entity_set_handles_size, err ); }
void FBiGeom_getData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
void ** | tag_value, | ||
int * | tag_value_allocated, | ||
int * | tag_value_size, | ||
int * | err | ||
) |
Get the value of a tag of arbitrary type on an entity.
Get the value of a tag of arbitrary type on an entity. Tag data is passed back as void*. tag_value_size specifies the size of the memory pointed to by tag_value in terms of bytes. Applications may use this function to get data of any type, not just iBase_BYTES. However, because this function supports arbitrary type, in all cases the size specified by tag_value_size is always in terms of bytes.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
*tag_value | Pointer to tag data array being queried |
*tag_value_allocated | Pointer to tag data array allocated size |
*tag_value_size | Pointer to occupied size in bytes of tag data array |
*err | Pointer to error type returned from function |
Definition at line 2298 of file FBiGeom_MOAB.cpp.
References iMesh_getData, and IMESH_INSTANCE.
{ iMesh_getData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, tag_value, tag_value_allocated, tag_value_size, err ); }
void FBiGeom_getDblArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
double ** | tag_values, | ||
int * | tag_values_allocated, | ||
int * | tag_values_size, | ||
int * | err | ||
) |
Get tag values of double type for an array of entities.
Get tag values of double type for an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
*tag_values | Pointer to tag data array being returned from function |
tag_values_allocated | Pointer to allocated size of tag data array |
tag_values_size | Pointer to occupied size of tag data array |
*err | Pointer to error type returned from function |
Definition at line 2190 of file FBiGeom_MOAB.cpp.
References iMesh_getDblArrData, and IMESH_INSTANCE.
{ iMesh_getDblArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_allocated, tag_values_size, err ); }
void FBiGeom_getDblData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle | entity_handle, | ||
const iBase_TagHandle | tag_handle, | ||
double * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of double type on an entity.
Get the value of a tag of double type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2319 of file FBiGeom_MOAB.cpp.
References iMesh_getDblData, and IMESH_INSTANCE.
{ iMesh_getDblData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, out_data, err ); }
void FBiGeom_getDescription | ( | FBiGeom_Instance | instance, |
char * | descr, | ||
int | descr_len | ||
) |
Get a description of the error returned from the last FBiGeom call.
Get a description of the error returned from the last FBiGeom function
instance | FBiGeom instance handle |
descr | Pointer to a character string to be filled with a description of the error from the last FBiGeom function |
descr_len | Length of the character string pointed to by descr |
Definition at line 64 of file FBiGeom_MOAB.cpp.
References iMesh_getDescription, and IMESH_INSTANCE.
{ iMesh_getDescription( IMESH_INSTANCE( instance ), descr, descr_len ); }
void FBiGeom_getEgCvtrXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | edge_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | cvtr_i, | ||
double * | cvtr_j, | ||
double * | cvtr_k, | ||
int * | err | ||
) |
Get the principle curvature vector for an edge at a point.
Get the principle curvature vector for an edge at a point. Magnitude of vector is the curvature, direction is direction of principal curvature.
instance | FBiGeom instance handle |
edge_handle | Edge being queried |
x | Position being queried |
y | Position being queried |
z | Position being queried |
cvtr_i | Maximum curvature vector |
cvtr_j | Maximum curvature vector |
cvtr_k | Maximum curvature vector |
*err | Pointer to error type returned from function |
Definition at line 2465 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEgEvalXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | edge_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | on_x, | ||
double * | on_y, | ||
double * | on_z, | ||
double * | tgnt_i, | ||
double * | tgnt_j, | ||
double * | tgnt_k, | ||
double * | cvtr_i, | ||
double * | cvtr_j, | ||
double * | cvtr_k, | ||
int * | err | ||
) |
Get closest point, tangent, and curvature of edge.
Get closest point, tangent, and curvature of edge.
instance | FBiGeom instance handle |
edge_handle | Edge being queried |
x | Point at which entity is being queried |
y | Point at which entity is being queried |
z | Point at which entity is being queried |
on_x | Closest point at point being queried |
on_y | Closest point at point being queried |
on_z | Closest point at point being queried |
tgnt_i | Tangent at point being queried |
tgnt_j | Tangent at point being queried |
tgnt_k | Tangent at point being queried |
cvtr_i | Curvature at point being queried |
cvtr_j | Curvature at point being queried |
cvtr_k | Curvature at point being queried |
*err | Pointer to error type returned from function |
Definition at line 2495 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEgEvalXYZ(), iBase_SUCCESS, and RETURN.
{ ErrorCode rval = FBE_cast( instance ) ->getEgEvalXYZ( (moab::EntityHandle)edge, x, y, z, *on_x, *on_y, *on_z, *tngt_i, *tngt_j, *tngt_k, *cvtr_i, *cvtr_j, *cvtr_k );CHKERR( rval, "can't get point on edge " ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEgFcArrSense | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | edge_handles, | ||
int | edge_handles_size, | ||
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
int ** | sense, | ||
int * | sense_allocated, | ||
int * | sense_size, | ||
int * | err | ||
) |
Get the senses of an array of edges with respect to an array of faces.
Get the senses of an array of edges with respect to an array of faces. Sense returned is -1, 0, or 1, representing "reversed", "both", or "forward". "both" sense indicates that edge bounds the face once with each sense.
instance | FBiGeom instance handle |
edge_handles | Edges being queried |
edge_handles_size | Size of edge handles array |
face_handles | Faces being queried |
face_handles_size | Size of face handles array |
sense | Senses of faces with respect to regions |
sense_allocated | Allocated size of senses array |
sense_size | Occupied size of senses array |
*err | Pointer to error type returned from function |
Definition at line 1086 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEgFcSense | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | edge, | ||
iBase_EntityHandle | face, | ||
int * | sense_out, | ||
int * | err | ||
) |
Get the sense of an edge with respect to a face Get the sense of an edge with respect to a face. Sense returned is -1, 0, or 1, representing "reversed", "both", or "forward". "both" sense indicates that edge bounds the face once with each sense.
Get the sense of an edge with respect to a face.
edge | Edge being queried |
face | Face being queried |
sense_out | Sense of edge with respect to face |
Definition at line 1072 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEgFcSense(), iBase_SUCCESS, MBH_cast(), and RETURN.
{ // this one is important, for establishing the orientation of the edges in faces // bummer, I "thought" it is already implemented // use senses ErrorCode rval = FBE_cast( instance )->getEgFcSense( MBH_cast( edge ), MBH_cast( face ), *sense_out ); CHKERR( rval, "Failed to get edge senses in FBiGeom_getEgFcSense." ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEgVtxArrSense | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | edge_handles, | ||
int | edge_handles_size, | ||
iBase_EntityHandle const * | vertex_handles_1, | ||
int | veretx_handles_1_size, | ||
iBase_EntityHandle const * | vertex_handles_2, | ||
int | vertex_handles_2_size, | ||
int ** | sense, | ||
int * | sense_allocated, | ||
int * | sense_size, | ||
int * | err | ||
) |
Get the senses of vertex pair with respect to a edges.
Get the senses of vertex pairs with respect to edges. Sense returned is -1, 0, or 1, representing "reversed", "both", or "forward". "both" sense indicates that both vertices in pair are identical and that vertex bounds both sides of the edge.
instance | FBiGeom instance handle |
edge_handles | Edges being queried |
edge_handles_size | Number of edges being queried |
vertex_handles_1 | First vertex being queried |
vertex_handles_1_size | Number of vertices in vertices array |
vertex_handles_2 | Second vertex being queried |
vertex_handles_2_size | Number of vertices in vertices array |
sense | Sense of vertex pair with respect to edge |
sense_allocated | Allocated size of sense array |
sense_size | Occupied size of sense array |
*err | Pointer to error type returned from function |
Definition at line 1111 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEgVtxSense | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | edge, | ||
iBase_EntityHandle | vertex1, | ||
iBase_EntityHandle | vertex2, | ||
int * | sense_out, | ||
int * | err | ||
) |
Get the sense of a vertex pair with respect to an edge.
Get the sense of a vertex pair with respect to an edge. Sense returned is -1, 0, or 1, representing "reversed", "both", or "forward". "both" sense indicates that vertices are identical and that vertex bounds both sides of the edge.
instance | FBiGeom instance handle |
edge | Edge being queried |
vertex1 | First vertex being queried |
vertex2 | Second vertex being queried |
sense_out | Sense of vertex pair with respect to edge |
*err | Pointer to error type returned from function |
Definition at line 1099 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEgVtxSense(), iBase_SUCCESS, MBH_cast(), and RETURN.
{ ErrorCode rval = FBE_cast( instance )->getEgVtxSense( MBH_cast( edge ), MBH_cast( vertex1 ), MBH_cast( vertex2 ), *sense_out );CHKERR( rval, "Failed to get vertex sense wrt edge in FBiGeom_getEgVtxSense" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEHArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntityHandle ** | tag_value, | ||
int * | tag_value_allocated, | ||
int * | tag_value_size, | ||
int * | err | ||
) |
Get tag values of entity handle type for an array of entities.
Get tag values of entity handle type for an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
*tag_value | Pointer to tag data array being returned from function |
tag_value_allocated | Pointer to allocated size of tag data array |
tag_value_size | Pointer to occupied size of tag data array |
*err | Pointer to error type returned from function |
Definition at line 2203 of file FBiGeom_MOAB.cpp.
References iMesh_getEHArrData, and IMESH_INSTANCE.
{ iMesh_getEHArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_value, tag_value_allocated, tag_value_size, err ); }
void FBiGeom_getEHData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntityHandle * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of entity handle type on an entity.
Get the value of a tag of entity handle type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2328 of file FBiGeom_MOAB.cpp.
References iMesh_getEHData, and IMESH_INSTANCE.
{ iMesh_getEHData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, out_data, err ); }
void FBiGeom_getEnt1stDrvt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | u, | ||
double | v, | ||
double ** | drvt_u, | ||
int * | drvt_u_allocated, | ||
int * | drvt_u_size, | ||
double ** | drvt_v, | ||
int * | dvrt_v_allocated, | ||
int * | dvrt_v_size, | ||
int * | err | ||
) |
Get the first derivative of a face at specified parametric position.
Get the first derivative of a face at specified parametric position.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u | Parametric position being queried |
v | Parametric position being queried |
dvrt_u | Pointer to coordinates of derivative with respect to u at specified position returned from function |
dvrt_u_allocated | Allocated size of dvrt_u array |
dvrt_u_size | Occupied size of dvrt_u array |
dvrt_v | Pointer to coordinates of derivative with respect to v at specified position returned from function |
dvrt_v_allocated | Allocated size of dvrt_v array |
dvrt_v_size | Occupied size of dvrt_v array |
*err | Pointer to error type returned from function |
Definition at line 1452 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEnt2ndAdj | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
int | bridge_dimension, | ||
int | to_dimension, | ||
iBase_EntityHandle ** | adjacent_entities, | ||
int * | adjacent_entities_allocated, | ||
int * | adjacent_entities_size, | ||
int * | err | ||
) |
Get "2nd order" adjacencies to an entity.
Get "2nd order" adjacencies to an entity, that is, from an entity, through other entities of a specified "bridge" dimension, to other entities of another specified "to" dimension.
instance | FBiGeom instance handle |
entity_handle | Entity from which adjacencies are requested |
bridge_dimension | Bridge dimension for 2nd order adjacencies |
to_dimension | Dimension of adjacent entities returned |
adjacent_entities | Adjacent entities |
adjacent_entities_allocated | Allocated size of returned array |
adjacent_entities_size | Occupied size of returned array |
*err | Pointer to error type returned from function |
Definition at line 349 of file FBiGeom_MOAB.cpp.
References moab::Range::begin(), CHECK_SIZE, CHKERR, moab::Range::clear(), COPY_RANGE, moab::Range::end(), ErrorCode, FBE_cast(), moab::Range::find(), moab::FBEngine::getEntAdj(), iBase_SUCCESS, moab::Range::insert(), MBH_cast(), RETURN, and moab::Range::size().
{ Range to_ents, bridge_ents, tmp_ents; ErrorCode rval = FBE_cast( instance )->getEntAdj( MBH_cast( entity_handle ), bridge_dimension, bridge_ents ); CHKERR( rval, "Failed to get adjacent entities in FBiGeom_getEnt2ndAdj." ); Range::iterator iter, jter, kter, end_jter; Range::iterator end_iter = bridge_ents.end(); for( iter = bridge_ents.begin(); iter != end_iter; ++iter ) { rval = FBE_cast( instance )->getEntAdj( *iter, to_dimension, tmp_ents ); CHKERR( rval, "Failed to get adjacent entities in FBiGeom_getEnt2ndAdj." ); for( jter = tmp_ents.begin(); jter != end_jter; ++jter ) { if( to_ents.find( *jter ) == to_ents.end() ) { to_ents.insert( *jter ); } } tmp_ents.clear(); } *adjacent_entities_size = to_ents.size(); CHECK_SIZE( *adjacent_entities, *adjacent_entities_allocated, *adjacent_entities_size, iBase_EntityHandle, NULL ); COPY_RANGE( to_ents, *adjacent_entities ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEnt2ndDrvt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | u, | ||
double | v, | ||
double ** | drvt_uu, | ||
int * | drvt_uu_allocated, | ||
int * | drvt_uu_size, | ||
double ** | drvt_vv, | ||
int * | dvrt_vv_allocated, | ||
int * | dvrt_vv_size, | ||
double ** | drvt_uv, | ||
int * | dvrt_uv_allocated, | ||
int * | dvrt_uv_size, | ||
int * | err | ||
) |
Get the second derivative of a face at specified parametric position.
Get the second derivative of a face at specified parametric position.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u | Parametric position being queried |
v | Parametric position being queried |
dvrt_uu | Pointer to coordinates of derivative with respect to u at specified position returned from function |
dvrt_uu_allocated | Allocated size of dvrt_uu array |
dvrt_uu_size | Occupied size of dvrt_uu array |
dvrt_vv | Pointer to coordinates of derivative with respect to v at specified position returned from function |
dvrt_vv_allocated | Allocated size of dvrt_vv array |
dvrt_vv_size | Occupied size of dvrt_vv array |
dvrt_uv | Pointer to coordinates of derivative with respect to u and v at specified position returned from function |
dvrt_uv_allocated | Allocated size of dvrt_uv array |
dvrt_uv_size | Occupied size of dvrt_uv array |
*err | Pointer to error type returned from function |
Definition at line 1488 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntAdj | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
int | to_dimension, | ||
iBase_EntityHandle ** | adj_entities, | ||
int * | adj_entities_allocated, | ||
int * | adj_entities_size, | ||
int * | err | ||
) |
Get entities of specified type adjacent to an entity.
Get entities of specified type adjacent to an entity. Specified type must be value in the iBase_EntityType enumeration.
instance | FBiGeom instance handle |
entity_handle | Entity handle being queried |
entity_type_requested | Type of adjacent entities requested |
*adj_entity_handles | Pointer to array of adjacent entities returned from function |
*adj_entity_handles_allocated | Pointer to allocated size of adj_entity_handles array |
*adj_entity_handles_size | Pointer to occupied size of adj_entity_handles array |
*err | Pointer to error type returned from function |
Definition at line 288 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, CHKERR, COPY_RANGE, ErrorCode, FBE_cast(), moab::FBEngine::getEntAdj(), iBase_SUCCESS, MBH_cast(), RETURN, and moab::Range::size().
{ Range adjs; EntityHandle this_ent = MBH_cast( entity_handle ); ErrorCode rval = FBE_cast( instance )->getEntAdj( this_ent, to_dimension, adjs ); CHKERR( rval, "Failed to get adjacent entities in FBiGeom_getEntAdj." ); // copy adjacent entities *adj_entities_size = adjs.size(); CHECK_SIZE( *adj_entities, *adj_entities_allocated, *adj_entities_size, iBase_EntityHandle, NULL ); COPY_RANGE( adjs, *adj_entities ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntArrCvtrXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double const * | coords, | ||
int | coords_size, | ||
double ** | cvtr_1, | ||
int * | cvtr_1_allocated, | ||
int * | cvtr_1_size, | ||
double ** | cvtr_2, | ||
int * | cvtr_2_allocated, | ||
int * | cvtr_2_size, | ||
int * | err | ||
) |
Get the curvature(s) on an entity(ies) at given position(s)
Get the curvature(s) on an entity(ies) at given position(s). If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entity(ies) being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of coordinates |
coords | Starting coordinates |
coords_size | Number of values in coordinates array |
cvtr_1 | First principal curvatures |
cvtr_1_allocated | Allocated size of first curvature array |
cvtr_1_size | Occupied size of first curvature array |
cvtr_2 | Second principal curvatures |
cvtr_2_allocated | Allocated size of second curvature array |
cvtr_2_size | Occupied size of second curvature array |
*err | Pointer to error type returned from function |
Definition at line 2478 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntBoundBox | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double * | min_x, | ||
double * | min_y, | ||
double * | min_z, | ||
double * | max_x, | ||
double * | max_y, | ||
double * | max_z, | ||
int * | err | ||
) |
Get the bounding box of the specified entity.
Get the bounding box of the specified entity
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
min_x | Minimum coordinate of bounding box |
min_y | Minimum coordinate of bounding box |
min_z | Minimum coordinate of bounding box |
max_x | Maximum coordinate of bounding box |
max_y | Maximum coordinate of bounding box |
max_z | Maximum coordinate of bounding box |
*err | Pointer to error type returned from function |
Definition at line 793 of file FBiGeom_MOAB.cpp.
References moab::CartVect::array(), moab::OrientedBoxTreeTool::box(), center(), CHKERR, ERROR, ErrorCode, FBiGeom_getEntType, FBiGeom_getVtxCoord, FWDERR, moab::GeomTopoTool::get_root(), GETGTT, iBase_FAILURE, iBase_INVALID_ENTITY_TYPE, iBase_NOT_SUPPORTED, iBase_SUCCESS, MBH_cast(), moab::GeomTopoTool::obb_tree(), and RETURN.
{ ErrorCode rval; int type; FBiGeom_getEntType( instance, entity_handle, &type, err ); FWDERR(); if( type == 0 ) { FBiGeom_getVtxCoord( instance, entity_handle, min_x, min_y, min_z, err ); FWDERR(); max_x = min_x; max_y = min_y; max_z = min_z; } else if( type == 1 ) { // it could be relatively easy to support *err = iBase_NOT_SUPPORTED; FWDERR(); } else if( type == 2 || type == 3 ) { EntityHandle root; CartVect center, axis[3]; GeomTopoTool* gtt = GETGTT( instance ); if( !gtt ) ERROR( iBase_FAILURE, "Can't get geom topo tool." ); rval = gtt->get_root( MBH_cast( entity_handle ), root );CHKERR( rval, "Failed to get tree root in FBiGeom_getEntBoundBox." ); rval = gtt->obb_tree()->box( root, center.array(), axis[0].array(), axis[1].array(), axis[2].array() );CHKERR( rval, "Failed to get box from obb tree." ); CartVect absv[3]; for( int i = 0; i < 3; i++ ) { absv[i] = CartVect( fabs( axis[i][0] ), fabs( axis[i][1] ), fabs( axis[i][2] ) ); } CartVect min, max; min = center - absv[0] - absv[1] - absv[2]; max = center + absv[0] + absv[1] + absv[2]; *min_x = min[0]; *min_y = min[1]; *min_z = min[2]; *max_x = max[0]; *max_y = max[1]; *max_z = max[2]; } else RETURN( iBase_INVALID_ENTITY_TYPE ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntClosestPt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | near_x, | ||
double | near_y, | ||
double | near_z, | ||
double * | on_x, | ||
double * | on_y, | ||
double * | on_z, | ||
int * | err | ||
) |
Get closest point to an entity.
Get closest point to a specified position on an entity
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
near_x | Coordinates of starting point |
near_y | Coordinates of starting point |
near_z | Coordinates of starting point |
on_x | Closest point on entity |
on_y | Closest point on entity |
on_z | Closest point on entity |
*err | Pointer to error type returned from function |
Definition at line 477 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEntClosestPt(), iBase_SUCCESS, MBH_cast(), and RETURN.
{ ErrorCode rval = FBE_cast( instance )->getEntClosestPt( MBH_cast( entity_handle ), near_x, near_y, near_z, on_x, on_y, on_z );CHKERR( rval, "Failed to get closest point" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntClosestPtTrimmed | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | near_x, | ||
double | near_y, | ||
double | near_z, | ||
double * | on_x, | ||
double * | on_y, | ||
double * | on_z, | ||
int * | err | ||
) |
Get closest point for an array of entities and points For surfaces, closest point could be on the void space inside it. Get closest point for an array of entities and points. If either the number of entities or number of coordinate triples is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
entity_handles | Entity(ies) being queried |
entity_handles_size | Number of entities being queried |
storage_order | Storage order of input points |
near_coordinates | Coordinates of starting point(s) |
near_coordinates_size | Number of values in near_coordinates array |
on_coordinates | Coordinates of closest points |
on_coordinates_allocated | Allocated size of closest point array |
on_coordinates_size | Occupied size of closest point array |
*err | Pointer to error type returned from function |
Definition at line 2436 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntities | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | set_handle, | ||
int | entity_type, | ||
iBase_EntityHandle ** | entity_handles, | ||
int * | entity_handles_allococated, | ||
int * | entity_handles_size, | ||
int * | err | ||
) |
Get entities of specific type in set or instance.
Get entities of specific type in set or instance. All entities are requested by specifying iBase_ALL_TYPES. Specified type must be a value in the iBase_EntityType enumeration.
instance | FBiGeom instance handle |
entity_set_handle | Entity set being queried |
entity_type | Type of entities being requested |
entity_topology | Topology of entities being requested |
*entity_handles | Pointer to array of entity handles returned from function |
*entity_handles_allocated | Pointer to allocated size of entity_handles array |
*entity_handles_size | Pointer to occupied size of entity_handles array |
*err | Pointer to error type returned from function |
Definition at line 214 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, CHKERR, COPY_RANGE, ERROR, ErrorCode, FBE_cast(), moab::FBEngine::getEntities(), iBase_INVALID_ENTITY_TYPE, iBase_SUCCESS, RETURN, and moab::Range::size().
{ if( 0 > entity_type || 4 < entity_type ) { ERROR( iBase_INVALID_ENTITY_TYPE, "Bad entity type." ); } else /* 0<= entity_type <= 4) */ { Range gentities; ErrorCode rval = FBE_cast( instance )->getEntities( (EntityHandle)set_handle, entity_type, gentities );CHKERR( rval, "can't get entities " ); *entity_handles_size = gentities.size(); CHECK_SIZE( *entity_handles, *entity_handles_allocated, *entity_handles_size, iBase_EntityHandle, NULL ); COPY_RANGE( gentities, *entity_handles ); } RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntNrmlPlXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | pt_x, | ||
double * | pt_y, | ||
double * | pt_z, | ||
double * | nrml_i, | ||
double * | nrml_j, | ||
double * | nrml_k, | ||
int * | err | ||
) |
Get the normal vector AND closest point on an entity at given position.
Get the normal vector AND closest point on an entity at a given position.
entity_handle | Entity being queried |
instance | FBiGeom instance handle |
x | Starting coordinates |
y | Starting coordinates |
z | Starting coordinates |
pt_x | Closest point |
pt_y | Closest point |
pt_z | Closest point |
nrml_i | Normal at closest point |
nrml_j | Normal at closest point |
nrml_k | Normal at closest point |
*err | Pointer to error type returned from function |
Definition at line 631 of file FBiGeom_MOAB.cpp.
References ERROR, FBiGeom_getEntClosestPt, FBiGeom_getEntNrmlXYZ, FBiGeom_getEntType, FWDERR, iBase_INVALID_ENTITY_TYPE, iBase_SUCCESS, and RETURN.
{ // just do for surface and volume int type; FBiGeom_getEntType( instance, entity_handle, &type, err ); FWDERR(); if( type != 2 && type != 3 ) { ERROR( iBase_INVALID_ENTITY_TYPE, "Entities passed into gentityNormal must be face or volume." ); } // do 2 searches, so it is not fast enough FBiGeom_getEntClosestPt( instance, entity_handle, x, y, z, pt_x, pt_y, pt_z, err ); FWDERR(); FBiGeom_getEntNrmlXYZ( instance, entity_handle, *pt_x, *pt_y, *pt_z, nrml_i, nrml_j, nrml_k, err ); FWDERR(); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntNrmlSense | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | face, | ||
iBase_EntityHandle | region, | ||
int * | sense_out, | ||
int * | err | ||
) |
Get the sense of a face with respect to a region.
Get the sense of a face with respect to a region. Sense returned is -1, 0, or 1, representing "reversed", "both", or "forward". "both" sense indicates that face bounds the region once with each sense.
instance | FBiGeom instance handle |
face | Face being queried |
region | Region being queried |
sense_out | Sense of face with respect to region |
*err | Pointer to error type returned from function |
Definition at line 1038 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEgFcSense(), iBase_SUCCESS, and RETURN.
{ moab::EntityHandle mbregion = (moab::EntityHandle)region; moab::EntityHandle mbface = (moab::EntityHandle)face; moab::ErrorCode rval = FBE_cast( instance )->getEgFcSense( mbface, mbregion, *sense_out );CHKERR( rval, "can't get normal sense " ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntNrmlUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | u, | ||
double | v, | ||
double * | nrml_i, | ||
double * | nrml_j, | ||
double * | nrml_k, | ||
int * | err | ||
) |
Return the normal at a specified parametric position.
Return the normal at a specified parametric position
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u | Parametric position being queried |
v | Parametric position being queried |
nrml_i | Normal at specified position |
nrml_j | Normal at specified position |
nrml_k | Normal at specified position |
*err | Pointer to error type returned from functino |
Definition at line 1403 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntNrmlXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | nrml_i, | ||
double * | nrml_j, | ||
double * | nrml_k, | ||
int * | err | ||
) |
Get the normal vector on an entity at the given position Get the normal vector on an entity at the given position.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
x | Coordinates of starting point |
y | Coordinates of starting point |
z | Coordinates of starting point |
nrml_i | Normal vector at starting point |
nrml_j | Normal vector at starting point |
nrml_k | Normal vector at starting point |
*err | Pointer to error type returned from function |
Definition at line 530 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEntNrmlXYZ(), iBase_SUCCESS, MBH_cast(), and RETURN.
{ ErrorCode rval = FBE_cast( instance )->getEntNrmlXYZ( MBH_cast( entity_handle ), x, y, z, nrml_i, nrml_j, nrml_k );CHKERR( rval, "Failed to get normal" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntSetData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
iBase_TagHandle | tag_handle, | ||
void ** | tag_value, | ||
int * | tag_value_allocated, | ||
int * | tag_value_size, | ||
int * | err | ||
) |
Get the value of a tag of arbitrary type on an entity set.
Get the value of a tag of arbitrary type on an entity set. Tag data is returned back as void*. tag_value_size specifies the size of the memory pointed to by tag_value in terms of bytes. Applications may use this function to get data of any type, not just iBase_BYTES. However because this function supports data of arbitrary type, in all cases the size specified by tag_value_size is always in terms of bytes.
instance | FBiGeom instance handle |
entity_set_handle | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
*tag_value | Pointer to tag data array being queried |
*tag_value_allocated | Pointer to tag data array allocated size |
*tag_value_size | Pointer to occupied size in bytes of tag data array |
*err | Pointer to error type returned from function |
Definition at line 2097 of file FBiGeom_MOAB.cpp.
References iMesh_getEntSetData, and IMESH_INSTANCE.
{ iMesh_getEntSetData( IMESH_INSTANCE( instance ), entity_set_handle, tag_handle, tag_value, tag_value_allocated, tag_value_size, err ); }
void FBiGeom_getEntSetDblData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
double * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of double type on an entity set.
Get the value of a tag of double type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2118 of file FBiGeom_MOAB.cpp.
References iMesh_getEntSetDblData, and IMESH_INSTANCE.
{ iMesh_getEntSetDblData( IMESH_INSTANCE( instance ), entity_set, tag_handle, out_data, err ); }
void FBiGeom_getEntSetEHData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntityHandle * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of entity handle type on an entity set.
Get the value of a tag of entity handle type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2127 of file FBiGeom_MOAB.cpp.
References iMesh_getEntSetEHData, and IMESH_INSTANCE.
{ iMesh_getEntSetEHData( IMESH_INSTANCE( instance ), entity_set, tag_handle, out_data, err ); }
void FBiGeom_getEntSetESHData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntitySetHandle * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of entity set handle type on an entity set.
Get the value of a tag of entity set handle type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2136 of file FBiGeom_MOAB.cpp.
References iMesh_getEntSetESHData, and IMESH_INSTANCE.
{ iMesh_getEntSetESHData( IMESH_INSTANCE( instance ), entity_set, tag_handle, out_data, err ); }
void FBiGeom_getEntSetIntData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
int * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of integer type on an entity set.
Get the value of a tag of integer type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2109 of file FBiGeom_MOAB.cpp.
References iMesh_getEntSetIntData, and IMESH_INSTANCE.
{ iMesh_getEntSetIntData( IMESH_INSTANCE( instance ), entity_set, tag_handle, out_data, err ); }
void FBiGeom_getEntSets | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
int | num_hops, | ||
iBase_EntitySetHandle ** | contained_set_handles, | ||
int * | contained_set_handles_allocated, | ||
int * | contained_set_handles_size, | ||
int * | err | ||
) |
Get the entity sets contained in a set or interface.
Get the entity sets contained in a set or interface. If a set is input which is not the root set, num_hops indicates the maximum number of contained sets from entity_set_handle to one of the contained sets, not inclusive of the contained set.
instance | FBiGeom instance handle |
entity_set_handle | Entity set being queried |
num_hops | Maximum hops from entity_set_handle to contained set, not inclusive of the contained set |
*contained_set_handles | Pointer to array of set handles returned from function |
contained_set_handles_allocated | Pointer to allocated length of contained_set_handles array |
contained_set_handles_size | Pointer to occupied length of contained_set_handles array |
*err | Pointer to error type returned from function |
Definition at line 1824 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, CHKERR, COPY_RANGE, ErrorCode, GEOM_DIMENSION_TAG_NAME, geomTag, moab::GeomTopoTool::geoRanges(), GETGTT, iBase_FAILURE, iBase_SUCCESS, moab::intersect(), MB_SUCCESS, MB_TYPE_INTEGER, MBENTITYSET, MBI, RETURN, and moab::Range::size().
{ // we get only the entity sets that have gents as members // we keep the convention that entity sets of geom dimension 4 are // sets of geo entities; they should contain only gentities as elements (or other sets of gents) Tag geomTag; ErrorCode rval = MBI->tag_get_handle( GEOM_DIMENSION_TAG_NAME, 1, MB_TYPE_INTEGER, geomTag ); if( MB_SUCCESS != rval ) RETURN( iBase_FAILURE ); GeomTopoTool* gtt = GETGTT( instance ); const Range* gRange = gtt->geoRanges(); // get all sets of geom dimension 4 from the entity set EntityHandle moabSet = (EntityHandle)entity_set_handle; const int four = 4; const void* const four_val[] = { &four }; Range tmp; rval = MBI->get_entities_by_type_and_tag( moabSet, MBENTITYSET, &geomTag, four_val, 1, tmp );CHKERR( rval, "can't get sets of geo dim 4 " ); tmp = intersect( tmp, gRange[4] ); *contained_set_handles_size = tmp.size(); CHECK_SIZE( *contained_set_handles, *contained_set_handles_allocated, *contained_set_handles_size, iBase_EntitySetHandle, NULL ); COPY_RANGE( tmp, *contained_set_handles ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntTgntU | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | u, | ||
double * | tgnt_i, | ||
double * | tgnt_j, | ||
double * | tgnt_k, | ||
int * | err | ||
) |
Return the tangent at a specified parametric position.
Return the tangent at a specified parametric position
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u | Parametric position being queried |
tgnt_i | Tangent at specified position |
tgnt_j | Tangent at specified position |
tgnt_k | Tangent at specified position |
*err | Pointer to error type returned from function |
Definition at line 1427 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEntTgntU(), iBase_SUCCESS, and RETURN.
{ ErrorCode rval = FBE_cast( instance )->getEntTgntU( (moab::EntityHandle)entity_handle, u, *tgnt_i, *tgnt_j, *tgnt_k );CHKERR( rval, "Failed to get tangent from u" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntTgntXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | tgnt_i, | ||
double * | tgnt_j, | ||
double * | tgnt_k, | ||
int * | err | ||
) |
Get the tangent vector on an entity at given position.
Get the tangent vector on an entity at a given position.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
x | Starting coordinates |
y | Starting coordinates |
z | Starting coordinates |
tgnt_i | Tangent at closest point |
tgnt_j | Tangent at closest point |
tgnt_k | Tangent at closest point |
*err | Pointer to error type returned from function |
Definition at line 766 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntTolerance | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double * | tolerance, | ||
int * | err | ||
) |
Get the tolerance of the specified entity.
Get the tolerance of the specified entity.
instance | FBiGeom instance handle |
entity_handle | Entity handle being queried |
tolerance | Pointer to tolerance returned from function |
*err | Pointer to error type returned from function |
Definition at line 2633 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntType | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
int * | type, | ||
int * | err | ||
) |
Get the entity type for the specified entity.
Get the entity type for the specified entity. Type returned is a value in the iBase_EntityType enumeration.
instance | FBiGeom instance handle |
entity_handle | entity handle being queried |
*type | Pointer to location at which to store the returned type |
*err | Pointer to error type returned from function |
Definition at line 255 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEntType(), iBase_SUCCESS, and RETURN.
{ ErrorCode rval = FBE_cast( instance )->getEntType( (EntityHandle)entity_handle, type );CHKERR( rval, "can't get entity type " ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntURange | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double * | u_min, | ||
double * | u_max, | ||
int * | err | ||
) |
Get parametric range of entity.
Get parametric range of entity
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u_min | Minimum parametric coordinate for entity |
u_max | Maximum parametric coordinate for entity |
*err | Pointer to error type returned from function |
Definition at line 1309 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEntURange(), iBase_SUCCESS, and RETURN.
{ ErrorCode rval = FBE_cast( instance )->getEntURange( (EntityHandle)entity_handle, *u_min, *u_max );CHKERR( rval, "Failed to get range" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntUtoUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | edge_handle, | ||
iBase_EntityHandle | face_handle, | ||
double | in_u, | ||
double * | u, | ||
double * | v, | ||
int * | err | ||
) |
Return the face parametric coordinates for a parametric position on a bounding edge.
Return the face parametric coordinates for a parametric position on a bounding edge
instance | FBiGeom instance handle |
edge_handle | Edge being queried |
face_handle | Face being queried |
in_u | Parametric position on edge |
u | Corresponding parametric position on face |
v | Corresponding parametric position on face |
*err | Pointer to error type returned from function |
Definition at line 1345 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntUtoXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | u, | ||
double * | x, | ||
double * | y, | ||
double * | z, | ||
int * | err | ||
) |
Return coordinate position at specified parametric position on entity.
Return coordinate position at specified parametric position on entity.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u | Parametric coordinate being queried |
x | Spatial coordinate at parametric position being queried |
y | Spatial coordinate at parametric position being queried |
z | Spatial coordinate at parametric position being queried |
*err | Pointer to error type returned from function |
Definition at line 1200 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), FBiGeom_getEntType, FWDERR, moab::FBEngine::getEntUtoXYZ(), iBase_NOT_SUPPORTED, iBase_SUCCESS, and RETURN.
{ int type; FBiGeom_getEntType( instance, entity_handle, &type, err ); FWDERR(); if( type != 1 ) // not edge RETURN( iBase_NOT_SUPPORTED ); ErrorCode rval = FBE_cast( instance )->getEntUtoXYZ( (EntityHandle)entity_handle, u, *x, *y, *z );CHKERR( rval, "Failed to get position from parameter" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getEntUVRange | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double * | u_min, | ||
double * | v_min, | ||
double * | u_max, | ||
double * | v_max, | ||
int * | err | ||
) |
Get parametric range of entity.
Get parametric range of entity
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u_min | Minimum parametric coordinate for entity |
v_min | Minimum parametric coordinate for entity |
u_max | Maximum parametric coordinate for entity |
v_max | Maximum parametric coordinate for entity |
*err | Pointer to error type returned from function |
Definition at line 1298 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntUVtoXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | u, | ||
double | v, | ||
double * | x, | ||
double * | y, | ||
double * | z, | ||
int * | err | ||
) |
Return coordinate position at specified parametric position on entity.
Return coordinate position at specified parametric position on entity.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
u | Parametric coordinate being queried |
v | Parametric coordinate being queried |
x | Spatial coordinate at parametric position being queried |
y | Spatial coordinate at parametric position being queried |
z | Spatial coordinate at parametric position being queried |
*err | Pointer to error type returned from function |
Definition at line 1175 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntXYZtoU | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | u, | ||
int * | err | ||
) |
Return parametric position at specified spatial position on entity.
Return parametric position at specified spatial position on entity
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
x | Spatial coordinate being queried |
y | Spatial coordinate being queried |
z | Spatial coordinate being queried |
u | Parametric coordinate at spatial position being queried |
*err | Pointer to error type returned from function |
Definition at line 1244 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntXYZtoUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | u, | ||
double * | v, | ||
int * | err | ||
) |
Return parametric position at specified spatial position on entity.
Return parametric position at specified spatial position on entity
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
x | Spatial coordinate being queried |
y | Spatial coordinate being queried |
z | Spatial coordinate being queried |
u | Parametric coordinate at spatial position being queried |
v | Parametric coordinate at spatial position being queried |
*err | Pointer to error type returned from function |
Definition at line 1233 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getEntXYZtoUVHint | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | u, | ||
double * | v, | ||
int * | err | ||
) |
Return parametric position at specified spatial position on entity, based on parametric position hint.
Return parametric position at specified spatial position on entity, based on parametric position hint. For this function, u and v are input with parameters from which to start search. Typically this will reduce the search time for new parametric coordinates.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
x | Spatial coordinate being queried |
y | Spatial coordinate being queried |
z | Spatial coordinate being queried |
u | Parametric coordinate at spatial position being queried |
v | Parametric coordinate at spatial position being queried |
*err | Pointer to error type returned from function |
Definition at line 1274 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getErrorType | ( | FBiGeom_Instance | instance, |
int * | error_type | ||
) |
Get the error type returned from the last FBiGeom function.
Get the error type returned from the last FBiGeom function. Value returned is a member of the iBase_ErrorType enumeration.
instance | FBiGeom instance handle |
*error_type | Error type returned from last FBiGeom function |
Definition at line 69 of file FBiGeom_MOAB.cpp.
References iMesh_getErrorType, and IMESH_INSTANCE.
{ iMesh_getErrorType( IMESH_INSTANCE( instance ), /*out*/ error_type ); }
void FBiGeom_getESHArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntitySetHandle ** | tag_value, | ||
int * | tag_value_allocated, | ||
int * | tag_value_size, | ||
int * | err | ||
) |
Get tag values of entity set handle type for an array of entities.
Get tag values of entity set handle type for an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
*tag_value | Pointer to tag data array being returned from function |
tag_value_allocated | Pointer to allocated size of tag data array |
tag_value_size | Pointer to occupied size of tag data array |
*err | Pointer to error type returned from function |
Definition at line 2216 of file FBiGeom_MOAB.cpp.
References iMesh_getESHArrData, and IMESH_INSTANCE.
{ iMesh_getESHArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_value, tag_value_allocated, tag_value_size, err ); }
void FBiGeom_getESHData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntitySetHandle * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of entity set handle type on an entity.
Get the value of a tag of entity set handle type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2337 of file FBiGeom_MOAB.cpp.
References iMesh_getESHData, and IMESH_INSTANCE.
{ iMesh_getESHData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, out_data, err ); }
void FBiGeom_getFacets | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | , | ||
double | , | ||
double | , | ||
int | , | ||
int | , | ||
int | , | ||
int | , | ||
int | , | ||
int * | err | ||
) |
Definition at line 2619 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getFaceType | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | face_handle, | ||
char * | face_type, | ||
int * | err, | ||
int * | face_type_length | ||
) |
Get the geometric type of a face.
Get the geometric type of a face. Specific types depend on implementation.
instance | FBiGeom instance handle |
face_handle | Face being queried |
face_type | Face type |
face_type_length | Length of face type string |
Definition at line 1141 of file FBiGeom_MOAB.cpp.
References iBase_SUCCESS, and RETURN.
{ std::string type = "nonplanar"; // for swept faces created with rays between surfaces, // we could actually create planar surfaces; maybe we should // recognize them as such face_type = new char[type.length() + 1]; strcpy( face_type, type.c_str() ); *face_type_length = type.length() + 1; RETURN( iBase_SUCCESS ); }
void FBiGeom_getFcArrCvtrUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
int | storage_order, | ||
double const * | uv, | ||
int | uv_size, | ||
double ** | cvtr_1, | ||
int * | cvtr_1_allocated, | ||
int * | cvtr_1_size, | ||
double ** | cvtr_2, | ||
int * | cvtr_2_allocated, | ||
int * | cvtr_2_size, | ||
int * | err | ||
) |
Get the curvature(s) on face(s) at given parametric position(s)
Get the curvature(s) on face(s) at given parametric position(s). If either the number of faces or number of coordinate pairs is unity, then all points or entities are queried for that entity or point, respectively, otherwise each point corresponds to each entity. storage_order should be a value in the iBase_StorageOrder enum.
instance | FBiGeom instance handle |
face_handles | Face(s) being queried |
face_handles_size | Number of entities being queried |
storage_order | Storage order of uv coordinates |
uv | Starting parametric coordinates |
uv_size | Number of values in uv array |
cvtr_1 | First principal curvatures |
cvtr_1_allocated | Allocated size of first curvature array |
cvtr_1_size | Occupied size of first curvature array |
cvtr_2 | Second principal curvatures |
cvtr_2_allocated | Allocated size of second curvature array |
cvtr_2_size | Occupied size of second curvature array |
*err | Pointer to error type returned from function |
Definition at line 1547 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getFcCvtrUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | face_handle, | ||
double | u, | ||
double | v, | ||
double * | cvtr1_i, | ||
double * | cvtr1_j, | ||
double * | cvtr1_k, | ||
double * | cvtr2_i, | ||
double * | cvtr2_j, | ||
double * | cvtr2_k, | ||
int * | err | ||
) |
Get the two principle curvature vectors for a face at a parametric position.
Get the two principle curvature vectors for a face at a parametric position. Magnitudes of vectors are curvature, directions are directions of principal curvatures.
instance | FBiGeom instance handle |
face_handle | Face being queried |
u | Parametric position being queried |
v | Parametric position being queried |
cvtr1_i | Maximum curvature vector |
cvtr1_j | Maximum curvature vector |
cvtr1_k | Maximum curvature vector |
cvtr2_i | Minimum curvature vector |
cvtr2_j | Minimum curvature vector |
cvtr2_k | Minimum curvature vector |
*err | Pointer to error type returned from function |
Definition at line 1533 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getFcCvtrXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | face_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | cvtr1_i, | ||
double * | cvtr1_j, | ||
double * | cvtr1_k, | ||
double * | cvtr2_i, | ||
double * | cvtr2_j, | ||
double * | cvtr2_k, | ||
int * | err | ||
) |
Get the two principle curvature vectors for a face at a point.
Get the two principle curvature vectors for a face at a point. Magnitudes of vectors are curvature, directions are directions of principal curvatures.
instance | FBiGeom instance handle |
face_handle | Face being queried |
x | Position being queried |
y | Position being queried |
z | Position being queried |
cvtr1_i | Maximum curvature vector |
cvtr1_j | Maximum curvature vector |
cvtr1_k | Maximum curvature vector |
cvtr2_i | Minimum curvature vector |
cvtr2_j | Minimum curvature vector |
cvtr2_k | Minimum curvature vector |
*err | Pointer to error type returned from function |
Definition at line 2449 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getFcEvalXYZ | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | face_handle, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double * | on_x, | ||
double * | on_y, | ||
double * | on_z, | ||
double * | nrml_i, | ||
double * | nrml_j, | ||
double * | nrml_k, | ||
double * | cvtr1_i, | ||
double * | cvtr1_j, | ||
double * | cvtr1_k, | ||
double * | cvtr2_i, | ||
double * | cvtr2_j, | ||
double * | cvtr2_k, | ||
int * | err | ||
) |
Get closest point, tangent, and curvature of face.
Get closest point, tangent, and curvature of face. If any of input coordinate pointers are NULL, that value is not returned.
instance | FBiGeom instance handle |
face_handle | Face being queried |
x | Point at which entity is being queried |
y | Point at which entity is being queried |
z | Point at which entity is being queried |
on_x | Closest point at point being queried |
on_y | Closest point at point being queried |
on_z | Closest point at point being queried |
nrml_i | Normal at point being queried |
nrml_j | Normal at point being queried |
nrml_k | Normal at point being queried |
cvtr1_i | First principal curvature at point being queried |
cvtr1_j | First principal curvature at point being queried |
cvtr1_k | First principal curvature at point being queried |
cvtr2_i | Second principal curvature at point being queried |
cvtr2_j | Second principal curvature at point being queried |
cvtr2_k | Second principal curvature at point being queried |
*err | Pointer to error type returned from function |
Definition at line 2517 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getEntClosestPt(), moab::FBEngine::getEntNrmlXYZ(), iBase_SUCCESS, and RETURN.
{ /* moab::ErrorCode rval = _fbEngine->getFcEvalXYZ( (moab::EntityHandle) face, x, y, z, on_x, on_y, on_z, nrml_i, nrml_j, nrml_k, cvtr1_i, cvtr1_j, cvtr1_k, cvtr2_i, cvtr2_j, cvtr2_k );*/ // camal really does not use curvatures // the most it is calling for normals and for closest point // return all curvatures = 0 for the time being, because we // know camal is not requesting them *cvtr1_i = *cvtr1_j = *cvtr1_k = *cvtr2_i = *cvtr2_j = *cvtr2_k = 0.; // first get closest point, then normal, separately ErrorCode rval = FBE_cast( instance )->getEntClosestPt( (moab::EntityHandle)face_handle, x, y, z, on_x, on_y, on_z );CHKERR( rval, "can't get closest point on surface " ); rval = FBE_cast( instance ) ->getEntNrmlXYZ( (moab::EntityHandle)face_handle, x, y, z, nrml_i, nrml_j, nrml_k ); // some inconsistency here, we use pointers, not refs CHKERR( rval, "can't get normal on closest point on surface " ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getIntArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
int ** | tag_values, | ||
int * | tag_values_allocated, | ||
int * | tag_values_size, | ||
int * | err | ||
) |
Get tag values of integer type for an array of entities.
Get tag values of integer type for an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
*tag_values | Pointer to tag data array being returned from function |
tag_values_allocated | Pointer to allocated size of tag data array |
tag_values_size | Pointer to occupied size of tag data array |
*err | Pointer to error type returned from function |
Definition at line 2177 of file FBiGeom_MOAB.cpp.
References iMesh_getIntArrData, and IMESH_INSTANCE.
{ iMesh_getIntArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_allocated, tag_values_size, err ); }
void FBiGeom_getIntData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
int * | out_data, | ||
int * | err | ||
) |
Get the value of a tag of integer type on an entity.
Get the value of a tag of integer type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
*out_data | Pointer to tag value returned from function |
*err | Pointer to error type returned from function |
Definition at line 2310 of file FBiGeom_MOAB.cpp.
References iMesh_getIntData, and IMESH_INSTANCE.
{ iMesh_getIntData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, out_data, err ); }
void FBiGeom_getNextEntArrIter | ( | FBiGeom_Instance | instance, |
iBase_EntityArrIterator | entArr_iterator, | ||
iBase_EntityHandle ** | entity_handles, | ||
int * | entity_handles_allocated, | ||
int * | entity_handles_size, | ||
int * | has_data, | ||
int * | err | ||
) |
Get entities contained in array iterator and increment iterator.
Get the entities contained in an array iterator, and increment the iterator. Also return whether the next value of the iterator has any entities (if non-zero, next iterator value is the end of the iteration).
instance | FBiGeom instance handle |
entArr_iterator | Iterator being queried |
*entity_handles | Pointer to array of entity handles contained in current value of iterator |
*entity_handles_allocated | Pointer to allocated size of entity_handles array |
*entity_handles_size | Pointer to occupied size of entity_handles array |
has_data | Pointer to a flag indicating if the value(s) returned in entity_handles are valid. A non-zero value indicates the value(s) are valid. A zero value indicates the value(s) are NOT valid. |
*err | Pointer to error type returned from function |
Definition at line 1607 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getNextEntIter | ( | FBiGeom_Instance | instance, |
iBase_EntityIterator | entity_iterator, | ||
iBase_EntityHandle * | entity_handle, | ||
int * | has_data, | ||
int * | err | ||
) |
Get entity corresponding to an iterator and increment iterator.
Get the entity corresponding to an array iterator, and increment the iterator. Also return whether the next value of the iterator has an entity (if non-zero, next iterator value is the end of the iteration).
instance | FBiGeom instance handle |
entity_iterator | Iterator being queried |
entity_handle | Pointer to an entity handle corresponding to the current value of iterator |
has_data | Pointer to a flag indicating if the value returned in entity_handle is valid. A non-zero value indicates the value is valid. A zero value indicates the value is NOT valid. |
*err | Pointer to error type returned from function |
Definition at line 1602 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getNumChld | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
int | num_hops, | ||
int * | num_child, | ||
int * | err | ||
) |
Get the number of child sets linked from a specified set.
Get the number of child sets linked from a specified set. If num_hops is not -1, this represents the maximum hops from entity_set to any child in the count.
instance | FBiGeom instance handle |
entity_set | Entity set being queried |
num_hops | Maximum hops from entity_set_handle to child set, not inclusive of the child set |
num_child | Pointer to number of children returned from function |
*err | Pointer to error type returned from function |
Definition at line 1962 of file FBiGeom_MOAB.cpp.
References iMesh_getNumChld, and IMESH_INSTANCE.
{ iMesh_getNumChld( IMESH_INSTANCE( instance ), entity_set, num_hops, num_child, err ); }
void FBiGeom_getNumEntSets | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
int | num_hops, | ||
int * | num_sets, | ||
int * | err | ||
) |
Get the number of entity sets contained in a set or interface.
Get the number of entity sets contained in a set or interface. If a set is input which is not the root set, num_hops indicates the maximum number of contained sets from entity_set_handle to one of the contained sets, not inclusive of the contained set.
instance | FBiGeom instance handle |
entity_set_handle | Entity set being queried |
num_hops | Maximum hops from entity_set_handle to contained set, not inclusive of the contained set |
num_sets | Pointer to the number of sets returned from function |
*err | Pointer to error type returned from function |
Definition at line 1795 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, GEOM_DIMENSION_TAG_NAME, geomTag, moab::GeomTopoTool::geoRanges(), GETGTT, iBase_FAILURE, iBase_SUCCESS, moab::intersect(), MB_SUCCESS, MB_TYPE_INTEGER, MBENTITYSET, MBI, RETURN, and moab::Range::size().
{ // here, we get only the entity sets that have gents as members // we have the convention that entity sets of geom dimension 4 are // sets of geo entities; they should contain only gentities as elements (or other sets of gents) // we should also consider the number of hops // first, get all sets of geo dim 4 from the entity_set_handle; then intersect with // the range from geom topo tool Tag geomTag; ErrorCode rval = MBI->tag_get_handle( GEOM_DIMENSION_TAG_NAME, 1, MB_TYPE_INTEGER, geomTag ); if( MB_SUCCESS != rval ) RETURN( iBase_FAILURE ); GeomTopoTool* gtt = GETGTT( instance ); const Range* gRange = gtt->geoRanges(); // get all sets of geom dimension 4 from the entity set EntityHandle moabSet = (EntityHandle)entity_set_handle; const int four = 4; const void* const four_val[] = { &four }; Range tmp; rval = MBI->get_entities_by_type_and_tag( moabSet, MBENTITYSET, &geomTag, four_val, 1, tmp );CHKERR( rval, "can't get sets of geo dim 4 " ); tmp = intersect( tmp, gRange[4] ); *num_sets = tmp.size(); // ignore, for the time being, number of hops RETURN( iBase_SUCCESS ); }
void FBiGeom_getNumOfType | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | set_handle, | ||
int | entity_type, | ||
int * | num_out, | ||
int * | err | ||
) |
Get the number of entities with the specified type in the instance or set.
Get the number of entities with the specified type in the instance or set. If entity set handle is zero, return information for instance, otherwise for set. Value of entity type must be from the iBase_EntityType enumeration. If iBase_ALL_TYPES is specified, total number of entities (excluding entity sets) is returned.
instance | FBiGeom instance handle |
entity_set_handle | Entity set being queried |
entity_type | Type of entity requested |
num_type | Pointer to number of entities, returned from function |
*err | Pointer to error type returned from function |
Definition at line 240 of file FBiGeom_MOAB.cpp.
References CHKERR, ERROR, ErrorCode, FBE_cast(), moab::FBEngine::getNumOfType(), iBase_INVALID_ENTITY_TYPE, iBase_SUCCESS, and RETURN.
{ if( 0 > entity_type || 4 < entity_type ) { ERROR( iBase_INVALID_ENTITY_TYPE, "Bad entity type." ); } ErrorCode rval = FBE_cast( instance )->getNumOfType( (EntityHandle)set_handle, entity_type, num_out );CHKERR( rval, "can't get number of type " ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getNumPrnt | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
int | num_hops, | ||
int * | num_parent, | ||
int * | err | ||
) |
Get the number of parent sets linked from a specified set.
Get the number of parent sets linked from a specified set. If num_hops is not -1, this represents the maximum hops from entity_set to any parent in the count.
instance | FBiGeom instance handle |
entity_set | Entity set being queried |
num_hops | Maximum hops from entity_set_handle to parent set, not inclusive of the parent set |
num_parent | Pointer to number of parents returned from function |
*err | Pointer to error type returned from function |
Definition at line 1971 of file FBiGeom_MOAB.cpp.
References iMesh_getNumPrnt, and IMESH_INSTANCE.
{ iMesh_getNumPrnt( IMESH_INSTANCE( instance ), entity_set, num_hops, num_parent, err ); }
void FBiGeom_getParametric | ( | FBiGeom_Instance | instance, |
int * | is_parametric, | ||
int * | err | ||
) |
Return whether interface has information about parameterization.
Return whether an interface has information about parameterization (!=0) or not (0)
instance | FBiGeom instance handle |
is_parametric | If non-zero, interface has information about parameterization |
*err | Pointer to error type returned from function |
Definition at line 1155 of file FBiGeom_MOAB.cpp.
References iBase_SUCCESS, and RETURN.
{ *is_parametric = 0; //(false) RETURN( iBase_SUCCESS ); }
void FBiGeom_getPntArrClsf | ( | FBiGeom_Instance | instance, |
int | storage_order, | ||
double const * | coords, | ||
int | coords_size, | ||
iBase_EntityHandle ** | entity_handles, | ||
int * | entity_handles_allocated, | ||
int * | entity_handles_size, | ||
int * | err | ||
) |
Get the entities on which points are located.
Get the entities on which points are located. Storage orders should be members of the iBase_StorageOrder enumeration.
instance | FBiGeom instance handle |
storage_order | Storage order of coordinates in coords |
coords | Points being queried |
coords_size | Number of entries in coords array |
entity_handles | Entities on which points are located |
entity_handles_allocated | Allocated size of entity_handles array |
entity_handles_size | Occupied size of entity_handles array |
*err | Pointer to error type returned from function |
Definition at line 2607 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getPntArrRayIntsct | ( | FBiGeom_Instance | instance, |
int | storage_order, | ||
const double * | coords, | ||
int | coords_size, | ||
const double * | directions, | ||
int | directions_size, | ||
iBase_EntityHandle ** | intersect_entity_handles, | ||
int * | intersect_entity_handles_allocated, | ||
int * | intersect_entity_hangles_size, | ||
int ** | offset, | ||
int * | offset_allocated, | ||
int * | offset_size, | ||
double ** | intersect_coords, | ||
int * | intersect_coords_allocated, | ||
int * | intersect_coords_size, | ||
double ** | param_coords, | ||
int * | param_coords_allocated, | ||
int * | param_coords_size, | ||
int * | err | ||
) |
Intersect an array of rays with the model.
Intersect an array of rays with the model. Storage order passed in is a member of the iBase_StorageOrder enumeration.
instance | FBiGeom instance handle |
storage_order | Storage order of input coordinates |
coords | Points from which rays are fired |
coords_size | Number of points from which rays are fired |
directions | Directions in which rays are fired |
directions_size | Number of coordinates in directions array |
intersect_entity_handles | Entities intersected by ray |
intersect_entity_handles_allocated | Allocated size of intersections array |
intersect_entity_hangles_size | Occupied size of intersections array |
offset | Offset[i] is offset into intersect_entity_handles of ith ray |
offset_allocated | Allocated size of offset array |
offset_size | Occupied size of offset array |
storage_order | Storage order of coordinates passed back |
intersect_coords | Coordinates of intersections |
intersect_coords_allocated | Allocated size of coordinates array |
intersect_coords_size | Occupied size of coordinates array |
param_coords | Distances along ray of intersections |
param_coords_allocated | Allocated size of param_coords array |
param_coords_size | Occupied size of param_coords array |
*err | Pointer to error type returned from function |
Definition at line 1014 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ // not implemented RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getPntClsf | ( | FBiGeom_Instance | instance, |
double | x, | ||
double | y, | ||
double | z, | ||
iBase_EntityHandle * | entity_handle, | ||
int * | err | ||
) |
Get the entity on which a point is located.
Get the entity on which a point is located
instance | FBiGeom instance handle |
x | Point being queried |
y | Point being queried |
z | Point being queried |
entity_handle | Entity on which point is located |
*err | Pointer to error type returned from function |
Definition at line 2602 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getPntRayIntsct | ( | FBiGeom_Instance | instance, |
double | x, | ||
double | y, | ||
double | z, | ||
double | dir_x, | ||
double | dir_y, | ||
double | dir_z, | ||
iBase_EntityHandle ** | intersect_entity_handles, | ||
int * | intersect_entity_handles_allocated, | ||
int * | intersect_entity_hangles_size, | ||
int | storage_order, | ||
double ** | intersect_coords, | ||
int * | intersect_coords_allocated, | ||
int * | intersect_coords_size, | ||
double ** | param_coords, | ||
int * | param_coords_allocated, | ||
int * | param_coords_size, | ||
int * | err | ||
) |
Intersect a ray with the model.
Intersect a ray with the model. Storage orders passed in should be a member of the iBase_StorageOrder enumeration.
instance | FBiGeom instance handle |
x | Point from which ray is fired |
y | Point from which ray is fired |
z | Point from which ray is fired |
dir_x | Direction in which ray is fired |
dir_y | Direction in which ray is fired |
dir_z | Direction in which ray is fired |
intersect_entity_handles | Entities intersected by ray |
intersect_entity_handles_allocated | Allocated size of intersections array |
intersect_entity_hangles_size | Occupied size of intersections array |
storage_order | Storage order of coordinates passed back |
intersect_coords | Coordinates of intersections |
intersect_coords_allocated | Allocated size of coordinates array |
intersect_coords_size | Occupied size of coordinates array |
param_coords | Distances along ray of intersections |
param_coords_allocated | Allocated size of param_coords array |
param_coords_size | Occupied size of param_coords array |
*err | Pointer to error type returned from function |
Definition at line 956 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, CHKERR, COPY_DOUBLEVEC, COPY_RANGE, ErrorCode, FBE_cast(), moab::FBEngine::getPntRayIntsct(), iBase_BLOCKED, iBase_SUCCESS, and RETURN.
{ // this is pretty cool // we will return only surfaces // // storage order is ignored std::vector< EntityHandle > intersect_handles; std::vector< double > coords; std::vector< double > params; ErrorCode rval = FBE_cast( instance )->getPntRayIntsct( x, y, z, dir_x, dir_y, dir_z, intersect_handles, coords, params );CHKERR( rval, "can't get ray intersections " ); *intersect_entity_handles_size = (int)intersect_handles.size(); CHECK_SIZE( *intersect_entity_handles, *intersect_entity_handles_allocated, *intersect_entity_handles_size, iBase_EntityHandle, NULL ); *intersect_coords_size = 3 * (int)intersect_handles.size(); CHECK_SIZE( *intersect_coords, *intersect_coords_allocated, *intersect_coords_size, double, NULL ); *param_coords_size = (int)intersect_handles.size(); CHECK_SIZE( *param_coords, *param_coords_allocated, *param_coords_size, double, NULL ); COPY_RANGE( intersect_handles, *intersect_entity_handles ); COPY_DOUBLEVEC( params, *param_coords ); if( storage_order == iBase_BLOCKED ) { int sz = (int)intersect_handles.size(); for( int i = 0; i < sz; i++ ) { *intersect_coords[i] = coords[3 * i]; *intersect_coords[sz + i] = coords[3 * i + 1]; *intersect_coords[2 * sz + i] = coords[3 * i + 2]; } } else { COPY_DOUBLEVEC( coords, *intersect_coords ); } RETURN( iBase_SUCCESS ); }
void FBiGeom_getPrnts | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | from_entity_set, | ||
int | num_hops, | ||
iBase_EntitySetHandle ** | entity_set_handles, | ||
int * | entity_set_handles_allocated, | ||
int * | entity_set_handles_size, | ||
int * | err | ||
) |
Get the parent sets linked from a specified set.
Get the parent sets linked from a specified set. If num_hops is not -1, this represents the maximum hops from entity_set to any parent.
instance | FBiGeom instance handle |
from_entity_set | Entity set being queried |
num_hops | Maximum hops from entity_set_handle to parent set, not inclusive of the parent set |
*entity_set_handles | Pointer to array of parent sets returned from function |
*entity_set_handles_allocated | Pointer to allocated size of entity_set_handles array |
*entity_set_handles_size | Pointer to occupied size of entity_set_handles array |
*err | Pointer to error type returned from function |
Definition at line 1992 of file FBiGeom_MOAB.cpp.
References iMesh_getPrnts, and IMESH_INSTANCE.
{ iMesh_getPrnts( IMESH_INSTANCE( instance ), from_entity_set, num_hops, entity_set_handles, entity_set_handles_allocated, entity_set_handles_size, err ); }
void FBiGeom_getRootSet | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle * | root_set, | ||
int * | err | ||
) |
Get handle of the root set for this instance.
Get handle of the root set for this instance. All geom in this instance can be accessed from this set.
instance | FBiGeom instance handle |
root_set | Pointer to set handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 201 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getRootSet(), iBase_SUCCESS, and RETURN.
{ EntityHandle modelSet; ErrorCode rval = FBE_cast( instance )->getRootSet( &modelSet );CHKERR( rval, "can't get root set " ); *root_set = (iBase_EntitySetHandle)modelSet; RETURN( iBase_SUCCESS ); }
void FBiGeom_getTagHandle | ( | FBiGeom_Instance | instance, |
const char * | tag_name, | ||
iBase_TagHandle * | tag_handle, | ||
int * | err, | ||
int | tag_name_len | ||
) |
Get a the handle of an existing tag with the specified name.
Get a the handle of an existing tag with the specified name
instance | FBiGeom instance handle |
tag_name | Name of tag being queried |
tag_handle | Pointer to tag handle returned from function |
*err | Pointer to error type returned from function |
tag_name_len | Length of tag name string |
Definition at line 2037 of file FBiGeom_MOAB.cpp.
References iMesh_getTagHandle, and IMESH_INSTANCE.
{ iMesh_getTagHandle( IMESH_INSTANCE( instance ), tag_name, tag_handle, err, tag_name_len ); }
void FBiGeom_getTagName | ( | FBiGeom_Instance | instance, |
iBase_TagHandle | tag_handle, | ||
char * | name, | ||
int * | err, | ||
int | name_len | ||
) |
Get the name for a given tag handle.
Get the name for a given tag handle
instance | FBiGeom instance handle |
tag_handle | Tag handle being queried |
name | Pointer to character string to store name returned from function |
*err | Pointer to error type returned from function |
name_len | Length of character string input to function |
Definition at line 2022 of file FBiGeom_MOAB.cpp.
References iMesh_getTagName, and IMESH_INSTANCE.
{ iMesh_getTagName( IMESH_INSTANCE( instance ), tag_handle, name, err, name_len ); }
void FBiGeom_getTagSizeBytes | ( | FBiGeom_Instance | instance, |
iBase_TagHandle | tag_handle, | ||
int * | tag_size, | ||
int * | err | ||
) |
Get size of a tag in units of bytes.
Get size of a tag in units of bytes
instance | FBiGeom instance handle |
tag_handle | Handle of tag being queried |
tag_size | Pointer to tag size returned from function |
*err | Pointer to error type returned from function |
Definition at line 2032 of file FBiGeom_MOAB.cpp.
References iMesh_getTagSizeBytes, and IMESH_INSTANCE.
{ iMesh_getTagSizeBytes( IMESH_INSTANCE( instance ), tag_handle, tag_size, err ); }
void FBiGeom_getTagSizeValues | ( | FBiGeom_Instance | instance, |
iBase_TagHandle | tag_handle, | ||
int * | tag_size, | ||
int * | err | ||
) |
Get size of a tag in units of numbers of tag data type.
Get size of a tag in units of numbers of tag data type
instance | FBiGeom instance handle |
tag_handle | Handle of tag being queried |
tag_size | Pointer to tag size returned from function |
*err | Pointer to error type returned from function |
Definition at line 2027 of file FBiGeom_MOAB.cpp.
References iMesh_getTagSizeValues, and IMESH_INSTANCE.
{ iMesh_getTagSizeValues( IMESH_INSTANCE( instance ), tag_handle, tag_size, err ); }
void FBiGeom_getTagType | ( | FBiGeom_Instance | instance, |
iBase_TagHandle | tag_handle, | ||
int * | tag_type, | ||
int * | err | ||
) |
Get the data type of the specified tag handle.
Get the data type of the specified tag handle. Tag type is a value in the iBase_TagType enumeration.
instance | FBiGeom instance handle |
tag_handle | Handle for the tag being queried |
tag_type | Pointer to tag type returned from function |
*err | Pointer to error type returned from function |
Definition at line 2046 of file FBiGeom_MOAB.cpp.
References iMesh_getTagType, and IMESH_INSTANCE.
{ iMesh_getTagType( IMESH_INSTANCE( instance ), tag_handle, tag_type, err ); }
void FBiGeom_getTolerance | ( | FBiGeom_Instance | instance, |
int * | type, | ||
double * | tolerance, | ||
int * | err | ||
) |
Get the tolerance of the instance.
Get the tolerance at the modeler level. type is an integer representing the type of the tolerance, where 0 = no tolerance information, 1 = modeler-level tolerance, 2 = entity-level tolerances. If type is 1, tolerance returns the modeler-level tolerance. If type is 2, use FBiGeom_getEntTolerance to query the tolerance on a per-entity basis.
instance | FBiGeom instance handle |
type | Type of tolerance used by the modeler |
tolerance | Modeler-level tolerance, if any |
*err | Pointer to error type returned from function |
Definition at line 2647 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getVtxArrCoords | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int | storage_order, | ||
double ** | coordinates, | ||
int * | coordinates_allocated, | ||
int * | coordinates_size, | ||
int * | err | ||
) |
Get coordinates of specified vertices.
Get coordinates of specified vertices. If storage order is passed in with a value other than iBase_UNDETERMINED, coordinates are returned in the specified storage order, otherwise storage order is that native to the implementation. Storage order of returned coordinates is also returned.
instance | FBiGeom instance handle |
vertex_handles | Array of geom vertex handles whose coordinates are being requested |
vertex_handles_size | Number of vertices in vertex_handles array |
storage_order | Storage order requested for coordinate data |
*coords | Pointer to array of coordinates returned from function |
*coords_allocated | Pointer to allocated size of coords array |
*coords_size | Pointer to occupied size of coords array |
*err | Pointer to error type returned from function |
Definition at line 916 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, FBiGeom_getVtxCoord, iBase_BLOCKED, iBase_SUCCESS, and RETURN.
{ // check or pre-allocate the coordinate arrays CHECK_SIZE( *coordinates, *coordinates_allocated, 3 * entity_handles_size, double, NULL ); double *x, *y, *z; size_t step; if( storage_order == iBase_BLOCKED ) { x = *coordinates; y = x + entity_handles_size; z = y + entity_handles_size; step = 1; } else { x = *coordinates; y = x + 1; z = x + 2; step = 3; } for( int i = 0; i < entity_handles_size; i++ ) { FBiGeom_getVtxCoord( instance, entity_handles[i], x, y, z, err ); x += step; y += step; z += step; } *coordinates_size = 3 * entity_handles_size; RETURN( iBase_SUCCESS ); }
void FBiGeom_getVtxArrToU | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | vertex_handles, | ||
int | vertex_handles_size, | ||
iBase_EntityHandle const * | edge_handles, | ||
int | edge_handles_size, | ||
double ** | u, | ||
int * | u_allocated, | ||
int * | u_size, | ||
int * | err | ||
) |
Return parametric coordinates on edges of vertex positions.
Return parametric coordinates on edges of vertex positions
instance | FBiGeom instance handle |
vertex_handles | Vertices being queried |
vertex_handles_size | Number of vertices being queried |
edge_handles | Edges being queried |
edge_handles_size | Number of edges being queried |
u | Corresponding parametric positions on faces |
u_allocated | Allocated size of positions array |
u_size | Occupied size of positions array |
*err | Pointer to error type returned from function |
Definition at line 1391 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getVtxArrToUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | vertex_handles, | ||
int | vertex_handles_size, | ||
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
int | storage_order, | ||
double ** | uv, | ||
int * | uv_allocated, | ||
int * | uv_size, | ||
int * | err | ||
) |
Return parametric coordinates on faces of vertex positions.
Return parametric coordinates on faces of vertex positions
instance | FBiGeom instance handle |
vertex_handles | Vertices being queried |
vertex_handles_size | Number of vertices being queried |
face_handles | Faces being queried |
face_handles_size | Number of faces being queried |
storage_order | Storage order of coordinates returned |
uv | Corresponding parametric positions on faces |
uv_allocated | Allocated size of positions array |
uv_size | Occupied size of positions array |
*err | Pointer to error type returned from function |
Definition at line 1378 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getVtxCoord | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | vertex_handle, | ||
double * | x, | ||
double * | y, | ||
double * | z, | ||
int * | err | ||
) |
Get coordinates of specified vertex.
Get coordinates of specified vertex.
instance | FBiGeom instance handle |
vertex_handle | Geom vertex being queried |
*x | Pointer to x coordinate returned from function |
*y | Pointer to y coordinate returned from function |
*z | Pointer to z coordinate returned from function |
*err | Pointer to error type returned from function |
Definition at line 905 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::FBEngine::getVtxCoord(), iBase_SUCCESS, MBH_cast(), and RETURN.
{ ErrorCode rval = FBE_cast( instance )->getVtxCoord( MBH_cast( vertex_handle ), x, y, z );CHKERR( rval, "Failed to vertex position" ); RETURN( iBase_SUCCESS ); }
void FBiGeom_getVtxToU | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | vertex_handle, | ||
iBase_EntityHandle | edge_handle, | ||
double * | u, | ||
int * | err | ||
) |
Return parametric coordinates on edge of vertex position.
Return parametric coordinates on edge of vertex position
instance | FBiGeom instance handle |
vertex_handle | Vertex being queried |
edge_handle | Edge being queried |
u | Corresponding parametric position on face |
*err | Pointer to error type returned from function |
Definition at line 1359 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_getVtxToUV | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | vertex_handle, | ||
iBase_EntityHandle | face_handle, | ||
double * | u, | ||
double * | v, | ||
int * | err | ||
) |
Return parametric coordinates on face of vertex position.
Return parametric coordinates on face of vertex position
instance | FBiGeom instance handle |
vertex_handle | Vertex being queried |
face_handle | Face being queried |
u | Corresponding parametric position on face |
v | Corresponding parametric position on face |
*err | Pointer to error type returned from function |
Definition at line 1355 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_imprintEnts | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | geom_entities, | ||
int | geom_entities_size, | ||
int * | err | ||
) |
Imprint entities.
Imprint entities by merging coincident surfaces.
instance | FBiGeom instance handle |
geom_entities | Array of entity handles being imprinted |
geom_entities_size | Number of entities in geom_entities array |
*err | Pointer to error type returned from function |
Definition at line 1768 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_initEntArrIter | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
int | requested_entity_type, | ||
int | requested_array_size, | ||
iBase_EntityArrIterator * | entArr_iterator, | ||
int * | err | ||
) |
Initialize an array iterator over specified entity type and size.
Initialize an array iterator over specified entity type and size for a specified set or instance. Iterator returned can be used as input to functions returning entities for the iterator. If all entities of a specified type are to be iterated, specify iBase_ALL_TYPES. Specified type must be a value in the iBase_EntityType enumerations.
instance | FBiGeom instance handle |
entity_set_handle | Entity set being iterated |
requested_entity_type | Type of entity to iterate |
requested_array_size | Size of chunks of handles returned for each value of the iterator |
entArr_iterator | Pointer to iterator returned from function |
*err | Pointer to error type returned from function |
Definition at line 1592 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_initEntIter | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
int | requested_entity_type, | ||
iBase_EntityIterator * | entity_iterator, | ||
int * | err | ||
) |
Initialize an iterator over specified entity type.
Initialize an iterator over specified entity type for a specified set or instance. Iterator returned can be used as input to functions returning the entity for the iterator. If all entities of a specified type are to be iterated, specify iBase_ALL_TYPES. Specified type must be a value in the iBase_EntityType enumeration.
instance | FBiGeom instance handle |
entity_set_handle | Entity set being iterated |
requested_entity_type | Type of entity to iterate |
entity_iterator | Pointer to iterator returned from function |
*err | Pointer to error type returned from function |
Definition at line 1587 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_intersect | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_1, | ||
iBase_EntitySetHandle | entity_set_2, | ||
iBase_EntitySetHandle * | result_entity_set, | ||
int * | err | ||
) |
Intersect contents of one entity set with another.
Intersect contents of one entity set with another
instance | FBiGeom instance handle |
entity_set_1 | Entity set being intersected with another |
entity_set_2 | Entity set being intersected with another |
result_entity_set | Pointer to entity set returned from function |
*err | Pointer to error type returned from function |
Definition at line 2417 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_intersectEnts | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity2, | ||
iBase_EntityHandle | entity1, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Geometrically intersect a pair of entities.
Geometrically intersect a pair of entities.
instance | FBiGeom instance handle |
entity1 | The entity to intersect |
entity2 | The entity to intersect |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1746 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_isArrAdj | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles_1, | ||
int | entity_handles_1_size, | ||
iBase_EntityHandle const * | entity_handles_2, | ||
int | entity_handles_2_size, | ||
int ** | is_adjacent_info, | ||
int * | is_adjacent_info_allocated, | ||
int * | is_adjacent_info_size, | ||
int * | err | ||
) |
Return whether entity pairs are adjacent.
Return whether entity pairs are adjacent, i.e. if entity_handles_1[i] is adjacent to entity_handles_2[i]. This function requires entity_handles_1_size and entity_handles_2_size to be equal.
instance | FBiGeom instance handle |
entity_handles_1 | First array of entities |
entity_handles_1_size | Number of entities in first array |
entity_handles_2 | Second array of entities |
entity_handles_2_size | Number of entities in second array |
is_adjacent_info | Array of flags returned from function |
is_adjacent_info_allocated | Allocated size of flags array |
is_adjacent_info_size | Occupied size of flags array |
*err | Pointer to error type returned from function |
Definition at line 421 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, FBiGeom_isEntAdj, FWDERR, iBase_INVALID_ENTITY_COUNT, iBase_SUCCESS, and RETURN.
{ int index1 = 0; int index2 = 0; size_t index1_step, index2_step; int count; // If either list contains only 1 entry, compare that entry with // every entry in the other list. if( entity_handles_1_size == entity_handles_2_size ) { index1_step = index2_step = 1; count = entity_handles_1_size; } else if( entity_handles_1_size == 1 ) { index1_step = 0; index2_step = 1; count = entity_handles_2_size; } else if( entity_handles_2_size == 1 ) { index1_step = 1; index2_step = 0; count = entity_handles_1_size; } else { RETURN( iBase_INVALID_ENTITY_COUNT ); } CHECK_SIZE( *is_adjacent_info, *is_adjacent_info_allocated, count, int, NULL ); for( int i = 0; i < count; ++i ) { FBiGeom_isEntAdj( instance, entity_handles_1[index1], entity_handles_2[index2], &( ( *is_adjacent_info )[i] ), err ); FWDERR(); index1 += index1_step; index2 += index2_step; } // it is now safe to set the size *is_adjacent_info_size = count; RETURN( iBase_SUCCESS ); }
void FBiGeom_isArrParametric | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int ** | is_parametric, | ||
int * | is_parametric_allocated, | ||
int * | is_parametric_size, | ||
int * | err | ||
) |
Return whether entities have parameterizations.
Return whether entities have parameterizations (=1) or not (=0)
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
is_parametric | entity_handles[i] has a parameterization (=1) or not (=0) |
is_parametric_allocated | Allocated size of is_parametric array |
is_parametric_size | Occupied size of is_parametric array |
*err | Pointer to error type returned from function |
Definition at line 1170 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ // not implemented RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_isArrPeriodic | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
int ** | in_uv, | ||
int * | in_uv_allocated, | ||
int * | in_uv_size, | ||
int * | err | ||
) |
Return whether entities are periodic.
Return whether entities are periodic (=1) or not (=0) in the u and v directions.
instance | FBiGeom instance handle |
entity_handles | Entities being queried |
entity_handles_size | Number of entities being queried |
in_uv | Array of pairs of integers representing whether entity_handles[i] is periodic (=1) or not (=0) in u and v directions |
in_uv_allocated | Allocated size of in_uv array |
in_uv_size | Occupied size of in_uv array |
*err | Pointer to error type returned from function |
Definition at line 1574 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_isChildOf | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | parent_entity_set, | ||
iBase_EntitySetHandle | child_entity_set, | ||
int * | is_child, | ||
int * | err | ||
) |
Return whether two sets are related by parent/child links.
Return whether two sets are related (*is_child=1) or not (*is_child=0) by parent/child links
instance | FBiGeom instance handle |
parent_entity_set | Pointer to parent set |
child_entity_set | Pointer to child set |
is_child | Pointer to flag returned from function |
*err | Pointer to error type returned from function |
Definition at line 1953 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_isChildOf.
{ iMesh_isChildOf( IMESH_INSTANCE( instance ), parent_entity_set, child_entity_set, is_child, err ); }
void FBiGeom_isEntAdj | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle1, | ||
iBase_EntityHandle | entity_handle2, | ||
int * | are_adjacent, | ||
int * | err | ||
) |
Return whether two entities are adjacent.
Return whether two entities are adjacent.
instance | FBiGeom instance handle |
entity_handle1 | First entity queried |
entity_handle2 | Second entity queried |
are_adjacent | If returned non-zero, entities are adjacent, otherwise they are not |
*err | Pointer to error type returned from function |
Definition at line 406 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), iBase_SUCCESS, moab::FBEngine::isEntAdj(), MBH_cast(), and RETURN.
void FBiGeom_isEntArrContained | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | containing_set, | ||
const iBase_EntityHandle * | entity_handles, | ||
int | num_entity_handles, | ||
int ** | is_contained, | ||
int * | is_contained_allocated, | ||
int * | is_contained_size, | ||
int * | err | ||
) |
Return whether entities are contained in a set.
Return whether each entity is contained in the set.
instance | iMesh instance handle |
containing_entity_set | Entity set being queried |
entity_handles | List of entities for which to check containment. |
is_contained | One value for each input entity, 1 if contained in set, zero otherwise. |
*err | Pointer to error type returned from function |
Definition at line 1914 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_isEntArrContained.
{ iMesh_isEntArrContained( IMESH_INSTANCE( instance ), containing_set, entity_handles, num_entity_handles, is_contained, is_contained_allocated, is_contained_size, err ); }
void FBiGeom_isEntContained | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | containing_entity_set, | ||
iBase_EntityHandle | contained_entity, | ||
int * | is_contained, | ||
int * | err | ||
) |
Return whether an entity is contained in another set.
Return whether an entity is contained (*is_contained=1) or not contained (*is_contained=0) in another set
instance | FBiGeom instance handle |
containing_entity_set | Entity set being queried |
contained_entity | Entity potentially contained in containing_entity_set |
is_contained | Pointer to flag returned from function |
*err | Pointer to error type returned from function |
Definition at line 1905 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_isEntContained.
{ iMesh_isEntContained( IMESH_INSTANCE( instance ), containing_entity_set, contained_entity, is_contained, err ); }
void FBiGeom_isEntParametric | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
int * | parametric, | ||
int * | err | ||
) |
Return whether an entity has a parameterization.
Return whether an entity has a parameterization (=1) or not (=0)
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
is_parametric | Entity has a parameterization (=1) or not (=0) |
*err | Pointer to error type returned from function |
Definition at line 1160 of file FBiGeom_MOAB.cpp.
References FBiGeom_getEntType, iBase_SUCCESS, and RETURN.
{ int type = -1; FBiGeom_getEntType( instance, entity_handle, &type, err ); if( type == 1 ) *parametric = 1; // true else *parametric = 0; // false RETURN( iBase_SUCCESS ); }
void FBiGeom_isEntPeriodic | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
int * | in_u, | ||
int * | in_v, | ||
int * | err | ||
) |
Return whether an entity is periodic.
Return whether an entity is periodic (=1) or not (=0) in the u and v directions.
instance | FBiGeom instance handle |
entity_handle | Entity being queried |
in_u | Entity is periodic in u direction (=1) or not (=0) |
in_v | Entity is periodic in v direction (=1) or not (=0) |
*err | Pointer to error type returned from function |
Definition at line 1563 of file FBiGeom_MOAB.cpp.
{
*in_u = 0;
*in_v = 0;
*err = 0;
return;
}
void FBiGeom_isEntSetContained | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | containing_entity_set, | ||
iBase_EntitySetHandle | contained_entity_set, | ||
int * | is_contained, | ||
int * | err | ||
) |
Return whether an entity set is contained in another set.
Return whether a set is contained (*is_contained=1) or not contained (*is_contained=0) in another set
instance | FBiGeom instance handle |
containing_entity_set | Entity set being queried |
contained_entity_set | Entity set potentially contained in containing_entity_set |
is_contained | Pointer to flag returned from function |
*err | Pointer to error type returned from function |
Definition at line 1927 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_isEntSetContained.
{ iMesh_isEntSetContained( IMESH_INSTANCE( instance ), containing_entity_set, contained_entity_set, is_contained, err ); }
void FBiGeom_isFcArrDegenerate | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | face_handles, | ||
int | face_handles_size, | ||
int ** | degenerate, | ||
int * | degenerate_allocated, | ||
int * | degenerate_size, | ||
int * | err | ||
) |
Return whether faces are degenerate.
Return whether faces are degenerate (=1) or not (=0).
instance | FBiGeom instance handle |
face_handles | Faces being queried |
face_handles_size | Number of faces being queried |
degenerate | face_handles[i] is degenerate (=1) or not (=0) |
degenerate_allocated | Allocated size of degenerate array |
degenerate_size | Occupied size of degenerate array |
*err | Pointer to error type returned from function |
Definition at line 1582 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_isFcDegenerate | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | face_handle, | ||
int * | is_degenerate, | ||
int * | err | ||
) |
Return whether a face is degenerate.
Return whether a face is degenerate (=1) or not (=0).
instance | FBiGeom instance handle |
face_handle | Face being queried |
is_degenerate | Face is degenerate (=1) or not (=0) |
*err | Pointer to error type returned from function |
Definition at line 1578 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_isList | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
int * | is_list, | ||
int * | err | ||
) |
Return whether a specified set is ordered or unordered.
Return whether a specified set is ordered (*is_list=1) or unordered (*is_list=0)
instance | FBiGeom instance handle |
entity_set | Entity set being queried |
is_list | Pointer to flag returned from function |
*err | Pointer to error type returned from function |
Definition at line 1790 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_load | ( | FBiGeom_Instance | instance, |
char const * | name, | ||
char const * | options, | ||
int * | err, | ||
int | name_len, | ||
int | options_len | ||
) |
Load a geom from a file.
Load a geom from a file. If entity set is specified, loaded geom is added to that set; specify zero if that is not desired.
instance | FBiGeom instance handle |
entity_set_handle | Set to which loaded geom will be added, zero if not desired |
name | File name from which geom is to be loaded |
options | Pointer to implementation-specific options string |
*err | Pointer to error type returned from function |
name_len | Length of the file name character string |
options_len | Length of the options character string |
Definition at line 133 of file FBiGeom_MOAB.cpp.
References CHKERR, ErrorCode, FBE_cast(), moab::GeomTopoTool::find_geomsets(), GETGTT, iBase_FAILURE, iBase_SUCCESS, moab::FBEngine::Init(), MBI, RETURN, and moab::FBEngine::set_smooth().
{ // first remove option for smooth facetting const char smth[] = "SMOOTH;"; bool smooth = false; const char* res = NULL; char* reducedOptions = NULL; bool localReduce = false; if( options ) res = strstr( options, smth ); if( res ) { // extract that option, will not be recognized by our moab/imesh reducedOptions = new char[options_len - 6]; localReduce = true; int preLen = (int)( res - options ); strncpy( reducedOptions, options, preLen ); int postLen = options_len - 7 - preLen; char* tmp = reducedOptions + preLen; strncpy( tmp, res + 7, postLen ); reducedOptions[options_len - 7] = 0; std::cout << reducedOptions << std::endl; smooth = true; } else { reducedOptions = const_cast< char* >( options ); } // load mesh-based geometry const EntityHandle* file_set = 0; ErrorCode rval = MBI->load_file( name, file_set, reducedOptions );CHKERR( rval, "can't load mesh file" ); if( localReduce ) delete[] reducedOptions; FBEngine* fbe = FBE_cast( instance ); if( fbe == NULL ) { *err = iBase_FAILURE; return; } GeomTopoTool* gtt = GETGTT( instance ); if( gtt == NULL ) { *err = iBase_FAILURE; return; } // keep mesh-based geometries in Range rval = gtt->find_geomsets();CHKERR( rval, "Failure to find geometry lists." ); if( smooth ) fbe->set_smooth(); // assumes that initialization did not happen yet fbe->Init(); // major computation RETURN( iBase_SUCCESS ); }
void FBiGeom_measure | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | entity_handles, | ||
int | entity_handles_size, | ||
double ** | measures, | ||
int * | measures_allocated, | ||
int * | measures_size, | ||
int * | err | ||
) |
Return the measure (length, area, or volume) of entities.
Return the measure (length, area, or volume) of entities
instance | FBiGeom instance handle |
entity_handles | Array of entities being queried |
entity_handles_size | Number of entities in entity array |
measures | Measures of entities being queried |
measures_allocated | Allocated size of measures array |
measures_size | Occupied size of measures array |
*err | Pointer to error type returned from function |
Definition at line 1126 of file FBiGeom_MOAB.cpp.
References CHECK_SIZE, CHKERR, ErrorCode, FBE_cast(), iBase_SUCCESS, moab::FBEngine::measure(), and RETURN.
{ CHECK_SIZE( *measures, *measures_allocated, entity_handles_size, double, NULL ); ErrorCode rval = FBE_cast( instance )->measure( (EntityHandle*)( entity_handles ), entity_handles_size, *measures );CHKERR( rval, "Failed to get measures" ); *measures_size = entity_handles_size; RETURN( iBase_SUCCESS ); }
void FBiGeom_mergeEnts | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle const * | geom_entities, | ||
int | geom_entities_size, | ||
double | tolerance, | ||
int * | err | ||
) |
Merge ents.
Merge entities of corresponding topology/geometry within the specified tolerance.
instance | FBiGeom instance handle |
geom_entities | Array of entity handles being imprinted |
geom_entities_size | Number of entities in geom_entities array |
tolerance | Tolerance within which entities are considered the same |
*err | Pointer to error type returned from function |
Definition at line 1773 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_moveEnt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | geom_entity, | ||
double | x, | ||
double | y, | ||
double | z, | ||
int * | err | ||
) |
Move an entity by the given vector.
Move an entity by translating it along the given vector.
instance | FBiGeom instance handle |
geom_entity | the entity to move |
x | x coordinate of the vector |
y | y coordinate of the vector |
z | z coordinate of the vector |
*err | Pointer to error type returned from function |
Definition at line 1696 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_newGeom | ( | char const * | options, |
FBiGeom_Instance * | instance_out, | ||
int * | err, | ||
int | options_len | ||
) |
Construct a new FBiGeom instance.
Construct a new FBiGeom instance, using implementation-specific options
options | Pointer to implementation-specific options string |
instance | Pointer to FBiGeom instance handle returned from function |
*err | Pointer to error type returned from function |
options_len | Length of the character string pointed to by options |
Definition at line 74 of file FBiGeom_MOAB.cpp.
References filter_options1(), and iBase_SUCCESS.
{ std::string tmp_options = filter_options1( options, options + options_len ); FileOptions opts( tmp_options.c_str() ); // process some options? MBiGeom** mbigeom = reinterpret_cast< MBiGeom** >( instance_out ); *mbigeom = NULL; *mbigeom = new MBiGeom(); *err = iBase_SUCCESS; }
void FBiGeom_newGeomFromMesh | ( | iMesh_Instance | mesh, |
iBase_EntitySetHandle | set, | ||
const char * | options, | ||
FBiGeom_Instance * | geom, | ||
int * | err, | ||
int | |||
) |
Definition at line 94 of file FBiGeom_MOAB.cpp.
References geom, iBase_SUCCESS, moab::FBEngine::Init(), MBiMesh::mbImpl, and mesh.
Referenced by main().
{ MBiMesh* mbimesh = reinterpret_cast< MBiMesh* >( mesh ); moab::Interface* mbi = mbimesh->mbImpl; moab::EntityHandle rootSet = reinterpret_cast< moab::EntityHandle >( set ); moab::GeomTopoTool* gtt = new moab::GeomTopoTool( mbi, true, rootSet ); bool smooth = false; // decide from options char smth[] = "SMOOTH;"; const char* res = strstr( options, smth ); if( res != NULL ) smooth = true; moab::FBEngine* fbe = new moab::FBEngine( mbi, gtt, smooth ); MBiGeom** mbigeom = reinterpret_cast< MBiGeom** >( geom ); *mbigeom = NULL; *mbigeom = new MBiGeom( mbimesh, fbe ); // will do now the initialization of the engine; // heavy duty computation fbe->Init(); *err = iBase_SUCCESS; }
void FBiGeom_reflectEnt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | geom_entity, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double | plane_normal_x, | ||
double | plane_normal_y, | ||
double | plane_normal_z, | ||
int * | err | ||
) |
Reflect an entity across a plane.
Reflect an entity across the given plane
instance | FBiGeom instance handle |
geom_entity | the entity to reflect, |
point_x | x coordinate of the point that the reflecting plane goes though |
point_y | y coordinate of the point that the reflecting plane goes though |
point_z | z coordinate of the point that the reflecting plane goes though |
plane_normal_x | x coordinate of the plane's normal |
plane_normal_y | y coordinate of the plane's normal |
plane_normal_z | z coordinate of the plane's normal |
*err | Pointer to error type returned from function |
Definition at line 1706 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_resetEntArrIter | ( | FBiGeom_Instance | instance, |
iBase_EntityArrIterator | entArr_iterator, | ||
int * | err | ||
) |
Reset the array iterator.
Reset the array iterator
instance | FBiGeom instance handle |
entArr_iterator | Iterator to reset |
*err | Pointer to error type returned from function |
Definition at line 1623 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_resetEntIter | ( | FBiGeom_Instance | instance, |
iBase_EntityIterator | entity_iterator, | ||
int * | err | ||
) |
Reset the iterator.
Reset the iterator
instance | FBiGeom instance handle |
entity_iterator | Iterator to reset |
*err | Pointer to error type returned from function |
Definition at line 1618 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_rmvArrTag | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
int * | err | ||
) |
Remove a tag value from an array of entities.
Remove a tag value from an array of entities
instance | FBiGeom instance handle |
entity_handles | Entity from which tag is being removed |
entity_handles_size | Number of entities in entity array |
tag_handle | Tag handle of tag being removed |
*err | Pointer to error type returned from function |
Definition at line 2289 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_rmvArrTag.
{ iMesh_rmvArrTag( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, err ); }
void FBiGeom_rmvEntArrFromSet | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_EntitySetHandle | entity_set, | ||
int * | err | ||
) |
Remove an array of entities from a set.
Remove an array of entities from a set
instance | FBiGeom instance handle |
entity_handles | Array of entities being remove |
entity_handles_size | Number of entities in entity_handles array |
entity_set | Pointer to the set being removed from |
*err | Pointer to error type returned from function |
Definition at line 1880 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_rmvEntArrFromSet.
{ iMesh_rmvEntArrFromSet( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, entity_set, err ); }
void FBiGeom_rmvEntFromSet | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_EntitySetHandle | entity_set, | ||
int * | err | ||
) |
Remove an entity from a set.
Remove an entity from a set
instance | FBiGeom instance handle |
entity_handle | The entity being removed |
entity_set | Pointer to the set being removed from |
*err | Pointer to error type returned from function |
Definition at line 1863 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_rmvEntFromSet.
{ iMesh_rmvEntFromSet( IMESH_INSTANCE( instance ), entity_handle, entity_set, err ); }
void FBiGeom_rmvEntSet | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_to_remove, | ||
iBase_EntitySetHandle | entity_set_handle, | ||
int * | err | ||
) |
Remove an entity set from a set.
Remove an entity set from a set
instance | FBiGeom instance handle |
entity_set_to_remove | The entity set being removed |
entity_set_handle | Pointer to the set being removed from |
*err | Pointer to error type returned from function |
Definition at line 1897 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_rmvEntSet.
{ iMesh_rmvEntSet( IMESH_INSTANCE( instance ), entity_set_to_remove, entity_set_handle, err ); }
void FBiGeom_rmvEntSetTag | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
iBase_TagHandle | tag_handle, | ||
int * | err | ||
) |
Remove a tag value from an entity set.
Remove a tag value from an entity set
instance | FBiGeom instance handle |
entity_set_handle | Entity set from which tag is being removed |
tag_handle | Tag handle of tag being removed |
*err | Pointer to error type returned from function |
Definition at line 2156 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_rmvEntSetTag.
{ iMesh_rmvEntSetTag( IMESH_INSTANCE( instance ), entity_set_handle, tag_handle, err ); }
void FBiGeom_rmvPrntChld | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | parent_entity_set, | ||
iBase_EntitySetHandle | child_entity_set, | ||
int * | err | ||
) |
Remove parent/child links between two sets.
Remove parent/child links between two sets.
instance | FBiGeom instance handle |
parent_entity_set | Pointer to parent set |
child_entity_set | Pointer to child set |
*err | Pointer to error type returned from function |
Definition at line 1945 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_rmvPrntChld.
{ iMesh_rmvPrntChld( IMESH_INSTANCE( instance ), parent_entity_set, child_entity_set, err ); }
void FBiGeom_rmvTag | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
int * | err | ||
) |
Remove a tag value from an entity.
Remove a tag value from an entity
instance | FBiGeom instance handle |
entity_handle | Entity from which tag is being removed |
tag_handle | Tag handle of tag being removed |
*err | Pointer to error type returned from function |
Definition at line 2403 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_rmvTag.
{ iMesh_rmvTag( IMESH_INSTANCE( instance ), entity_handle, tag_handle, err ); }
void FBiGeom_rotateEnt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | geom_entity, | ||
double | angle, | ||
double | axis_x, | ||
double | axis_y, | ||
double | axis_z, | ||
int * | err | ||
) |
Rotate an entity about an axis.
Rotate an entity by the given angle about the given axis.
instance | FBiGeom instance handle |
geom_entity | the entity to rotate |
angle | the rotational angle, in degrees |
axis_x | x coordinate of the axis |
axis_y | y coordinate of the axis |
axis_z | z coordinate of the axis |
*err | Pointer to error type returned from function |
Definition at line 1701 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_save | ( | FBiGeom_Instance | instance, |
char const * | name, | ||
char const * | options, | ||
int * | err, | ||
int | name_len, | ||
int | options_len | ||
) |
Save a geom to a file.
Save a geom to a file. If entity set is specified, save only the geom contained in that set.
instance | FBiGeom instance handle |
entity_set_handle | Entity set being saved |
name | File name to which geom is to be saved |
options | Pointer to implementation-specific options string |
*err | Pointer to error type returned from function |
name_len | Length of the file name character string |
options_len | Length of the options character string |
Definition at line 191 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_save.
{ iMesh_save( IMESH_INSTANCE( instance ), NULL, name, options, err, name_len, options_len ); }
void FBiGeom_scaleEnt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | geom_entity, | ||
double | x, | ||
double | y, | ||
double | z, | ||
double | scale_x, | ||
double | scale_y, | ||
double | scale_z, | ||
int * | err | ||
) |
Scale an entity in the x, y, and z directions.
Scale an entity in the x, y, and z directions.
instance | FBiGeom instance handle |
geom_entity | the entity to scale, |
point_x | x coordinate of the scaling center |
point_y | y coordinate of the scaling center |
point_z | z coordinate of the scaling center |
scale_x | factor to scale by in the x direction |
scale_y | factor to scale by in the y direction |
scale_z | factor to scale by in the z direction |
*err | Pointer to error type returned from function |
Definition at line 1719 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_sectionEnt | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | geom_entity, | ||
double | plane_normal_x, | ||
double | plane_normal_y, | ||
double | plane_normal_z, | ||
double | offset, | ||
int | reverse, | ||
iBase_EntityHandle * | geom_entity2, | ||
int * | err | ||
) |
Section (cut) a region with a plane.
Section (cut) a region with a plane, retaining one of the pieces and discarding the other.
instance | FBiGeom instance handle |
geom_entity | The entity to section |
plane_normal_x | x coordinate of the plane's normal |
plane_normal_y | y coordinate of the plane's normal |
plane_normal_z | z coordinate of the plane's normal |
offset | Distance of the plane from the origin |
reverse | Keep the piece on the normal's side (=0) or not (=1) |
geom_entity2 | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1755 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_setArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
const void * | tag_values, | ||
int | tag_values_size, | ||
int * | err | ||
) |
Set tag values of arbitrary type on an array of entities.
Set tag values of arbitrary type on an array of entities. Tag data is passed as void*. tag_values_size specifies the size of the memory pointed to by tag_values in terms of bytes. Applications may use this function to set data of any type, not just iBase_BYTES. However, because this function supports data of arbitrary type, in all cases the size specified by tag_values_size is always in terms of bytes.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
tag_values | Pointer to tag data being set on entity. Note that the implicit INTERLEAVED storage order rule applies (see section ITAPS Storage Orders) |
tag_values_size | Size in bytes of tag data |
*err | Pointer to error type returned from function |
Definition at line 2229 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setArrData.
{ iMesh_setArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_size, err ); }
void FBiGeom_setData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
const void * | tag_value, | ||
int | tag_value_size, | ||
int * | err | ||
) |
Set a tag value of arbitrary type on an entity.
Set a tag value of arbitrary type on an entity. Tag data is passed as void*. tag_value_size specifies the size of the memory pointed to by tag_value in terms of bytes. Applications may use this function to set data of any type, not just iBase_BYTES. However, because this function supports data of arbitrary type, in all cases the size specified by tag_value_size is always in terms of bytes.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
tag_value | Pointer to tag data being set on entity |
tag_value_size | Size in bytes of tag data |
*err | Pointer to error type returned from function |
Definition at line 2346 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setData.
{ iMesh_setData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, tag_value, tag_value_size, err ); }
void FBiGeom_setDblArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
const double * | tag_values, | ||
const int | tag_values_size, | ||
int * | err | ||
) |
Set tag values of double type on an array of entities.
Set tag values of double type on an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
tag_values | Pointer to tag data being set on entities |
tag_values_size | Size in total number of doubles of tag data |
*err | Pointer to error type returned from function |
Definition at line 2253 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setDblArrData.
{ iMesh_setDblArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_size, err ); }
void FBiGeom_setDblData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
double | tag_value, | ||
int * | err | ||
) |
Set a tag value of double type on an entity.
Set a tag value of double type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
tag_value | Tag value being set on entity |
*err | Pointer to error type returned from function |
Definition at line 2365 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setDblData.
{ iMesh_setDblData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, tag_value, err ); }
void FBiGeom_setEHArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
const iBase_EntityHandle * | tag_values, | ||
int | tag_values_size, | ||
int * | err | ||
) |
Set tag values of entity handle type on an array of entities.
Set tag values of entity handle type on an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
tag_values | Pointer to tag data being set on entities |
tag_values_size | Size in total number of entity handles of tag data |
*err | Pointer to error type returned from function |
Definition at line 2265 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setEHArrData.
{ iMesh_setEHArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_size, err ); }
void FBiGeom_setEHData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntityHandle | tag_value, | ||
int * | err | ||
) |
Set a tag value of entity handle type on an entity.
Set a tag value of entity handle type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
tag_value | Tag value being set on entity |
*err | Pointer to error type returned from function |
Definition at line 2374 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setEHData.
{ iMesh_setEHData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, tag_value, err ); }
void FBiGeom_setEntSetData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_handle, | ||
const iBase_TagHandle | tag_handle, | ||
const void * | tag_value, | ||
const int | tag_value_size, | ||
int * | err | ||
) |
Set a tag value of arbitrary type on an entity set.
Set a tag value of arbitrary type on an entity set. The tag data is passed as void*. tag_value_size specifies the size of the memory pointed to by tag_value in terms of bytes. Applications are free to use this function to set data of any type, not just iBase_BYTES. However, in all cases, the size specified by tag_value_size is always in terms of bytes.
instance | FBiGeom instance handle |
entity_set_handle | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
tag_value | Pointer to tag data being set on entity set |
tag_value_size | Size in bytes of tag data |
*err | Pointer to error type returned from function |
Definition at line 2051 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setEntSetData.
{ iMesh_setEntSetData( IMESH_INSTANCE( instance ), entity_set_handle, tag_handle, tag_value, tag_value_size, err ); }
void FBiGeom_setEntSetDblData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
double | tag_value, | ||
int * | err | ||
) |
Set a tag value of double type on an entity set.
Set a tag value of double type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
tag_value | Tag value being set on entity set |
*err | Pointer to error type returned from function |
Definition at line 2070 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setEntSetDblData.
{ iMesh_setEntSetDblData( IMESH_INSTANCE( instance ), entity_set, tag_handle, tag_value, err ); }
void FBiGeom_setEntSetEHData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntityHandle | tag_value, | ||
int * | err | ||
) |
Set a tag value of entity handle type on an entity set.
Set a tag value of entity handle type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
tag_value | Tag value being set on entity set |
*err | Pointer to error type returned from function |
Definition at line 2079 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setEntSetEHData.
{ iMesh_setEntSetEHData( IMESH_INSTANCE( instance ), entity_set, tag_handle, tag_value, err ); }
void FBiGeom_setEntSetESHData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntitySetHandle | tag_value, | ||
int * | err | ||
) |
Set a tag value of entity set handle type on an entity set.
Set a tag value of entity set handle type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
tag_value | Tag value being set on entity set |
*err | Pointer to error type returned from function |
Definition at line 2088 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setEntSetESHData.
{ iMesh_setEntSetESHData( IMESH_INSTANCE( instance ), entity_set, tag_handle, tag_value, err ); }
void FBiGeom_setEntSetIntData | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set, | ||
iBase_TagHandle | tag_handle, | ||
int | tag_value, | ||
int * | err | ||
) |
Set a tag value of integer type on an entity set.
Set a tag value of integer type on an entity set.
instance | FBiGeom instance handle |
entity_set | Entity set on which tag is being set |
tag_handle | Tag being set on an entity set |
tag_value | Tag value being set on entity set |
*err | Pointer to error type returned from function |
Definition at line 2061 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setEntSetIntData.
{ iMesh_setEntSetIntData( IMESH_INSTANCE( instance ), entity_set, tag_handle, tag_value, err ); }
void FBiGeom_setESHArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
const iBase_EntitySetHandle * | tag_values, | ||
int | tag_values_size, | ||
int * | err | ||
) |
Set tag values of entity set handle type on an array of entities.
Set tag values of entity set handle type on an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
tag_values | Pointer to tag data being set on entities |
tag_values_size | Size in total number of entity handles of tag data |
*err | Pointer to error type returned from function |
Definition at line 2277 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setESHArrData.
{ iMesh_setESHArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_size, err ); }
void FBiGeom_setESHData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
iBase_EntitySetHandle | tag_value, | ||
int * | err | ||
) |
Set a tag value of entity set handle type on an entity.
Set a tag value of entity set handle type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
tag_value | Tag value being set on entity |
*err | Pointer to error type returned from function |
Definition at line 2383 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setESHData.
{ iMesh_setESHData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, tag_value, err ); }
void FBiGeom_setIntArrData | ( | FBiGeom_Instance | instance, |
const iBase_EntityHandle * | entity_handles, | ||
int | entity_handles_size, | ||
iBase_TagHandle | tag_handle, | ||
const int * | tag_values, | ||
int | tag_values_size, | ||
int * | err | ||
) |
Set tag values of integer type on an array of entities.
Set tag values of integer type on an array of entities.
instance | FBiGeom instance handle |
entity_handles | Entity array on which tag is being set |
entity_handles_size | Number of entities in array |
tag_handle | Tag being set on an entity |
tag_values | Pointer to tag data being set on entities |
tag_values_size | Size in total number of integers of tag data |
*err | Pointer to error type returned from function |
Definition at line 2241 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setIntArrData.
{ iMesh_setIntArrData( IMESH_INSTANCE( instance ), entity_handles, entity_handles_size, tag_handle, tag_values, tag_values_size, err ); }
void FBiGeom_setIntData | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | entity_handle, | ||
iBase_TagHandle | tag_handle, | ||
int | tag_value, | ||
int * | err | ||
) |
Set a tag value of integer type on an entity.
Set a tag value of integer type on an entity.
instance | FBiGeom instance handle |
entity_handle | Entity on which tag is being set |
tag_handle | Tag being set on an entity |
tag_value | Tag value being set on entity |
*err | Pointer to error type returned from function |
Definition at line 2356 of file FBiGeom_MOAB.cpp.
References IMESH_INSTANCE, and iMesh_setIntData.
{ iMesh_setIntData( IMESH_INSTANCE( instance ), entity_handle, tag_handle, tag_value, err ); }
void FBiGeom_subtract | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_1, | ||
iBase_EntitySetHandle | entity_set_2, | ||
iBase_EntitySetHandle * | result_entity_set, | ||
int * | err | ||
) |
Subtract contents of one entity set from another.
Subtract contents of one entity set from another
instance | FBiGeom instance handle |
entity_set_1 | Entity set from which other set is being subtracted |
entity_set_2 | Entity set being subtracted from other set |
result_entity_set | Pointer to entity set returned from function |
*err | Pointer to error type returned from function |
Definition at line 2408 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_subtractEnts | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | blank, | ||
iBase_EntityHandle | tool, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Geometrically subtract one entity from another.
Geometrically subtract the entity tool from the entity blank.
instance | FBiGeom instance handle |
blank | The entity to subtract from |
tool | The entity to subtract |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1737 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_sweepEntAboutAxis | ( | FBiGeom_Instance | instance, |
iBase_EntityHandle | geom_entity, | ||
double | angle, | ||
double | axis_x, | ||
double | axis_y, | ||
double | axis_z, | ||
iBase_EntityHandle * | geom_entity2, | ||
int * | err | ||
) |
Sweep (extrude) an entity about an axis.
Sweep (extrude) an entity by the given angle about the given axis.
instance | FBiGeom instance handle |
geom_entity | the entity to rotate |
angle | the rotational angle, in degrees |
axis_x | x coordinate of the axis |
axis_y | y coordinate of the axis |
axis_z | z coordinate of the axis |
geom_entity2 | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1643 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_unite | ( | FBiGeom_Instance | instance, |
iBase_EntitySetHandle | entity_set_1, | ||
iBase_EntitySetHandle | entity_set_2, | ||
iBase_EntitySetHandle * | result_entity_set, | ||
int * | err | ||
) |
Unite contents of one entity set with another.
Unite contents of one entity set with another
instance | FBiGeom instance handle |
entity_set_1 | Entity set being united with another |
entity_set_2 | Entity set being united with another |
result_entity_set | Pointer to entity set returned from function |
*err | Pointer to error type returned from function |
Definition at line 2426 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
void FBiGeom_uniteEnts | ( | FBiGeom_Instance | instace, |
iBase_EntityHandle const * | geom_entities, | ||
int | geom_entities_size, | ||
iBase_EntityHandle * | geom_entity, | ||
int * | err | ||
) |
Geometrically unite entities.
Geometrically unite the specified entities.
instance | FBiGeom instance handle |
geom_entities | Array of entity handles being united |
geom_entities_size | Number of entities in geom_entities array |
geom_entity | Pointer to new entity handle returned from function |
*err | Pointer to error type returned from function |
Definition at line 1732 of file FBiGeom_MOAB.cpp.
References iBase_NOT_SUPPORTED, and RETURN.
{ RETURN( iBase_NOT_SUPPORTED ); }
static std::string filter_options1 | ( | const char * | begin, |
const char * | end | ||
) | [static] |
Definition at line 23 of file FBiGeom_MOAB.cpp.
References compare_no_case1(), and moab::GeomUtil::first().
Referenced by FBiGeom_newGeom().
{ const char* opt_begin = begin; const char* opt_end = begin; std::string filtered; bool first = true; while( opt_end != end ) { opt_end = std::find( opt_begin, end, ' ' ); if( opt_end - opt_begin >= 5 && compare_no_case1( opt_begin, "moab:", 5 ) == 0 ) { if( !first ) filtered.push_back( ';' ); first = false; filtered.append( opt_begin + 5, opt_end ); } opt_begin = opt_end + 1; } return filtered; }
bool debug_igeom = false |
Definition at line 47 of file FBiGeom_MOAB.cpp.
bool Debug_surf_eval = false |
Definition at line 48 of file FBiGeom_MOAB.cpp.