#include <math.h>#include <stdio.h>#include "dcl_fct.h"#include "api.hxx"#include "logical.h"#include "entity.hxx"#include "lists.hxx"#include "attrib.hxx"#include "box.hxx"#include "af_enum.hxx"#include "refine.hxx"#include "mesh.hxx"#include "meshmg.hxx"#include "atteye3d.hxx"#include "nodedata.hxx"#include "vtplate.hxx"#include "rvattr.hxx"#include "meshat.hxx"#include "fctdattr.hxx"#include "ppm.hxx"#include "ppmeshmg.hxx"#include "ppmface.hxx"#include "idx_mm.hxx"#include "idx_mesh.hxx"Functions | |
| outcome | api_create_refinement (REFINEMENT *&ref, AcisOptions *ao=NULL) |
| Creates a refinement. | |
| outcome | api_create_vertex_template (int n_tokens, int tokens[], VERTEX_TEMPLATE *&tplate, AcisOptions *ao=NULL) |
| This API creates a vertex template. | |
| outcome | api_delete_all_AF_POINTs (AF_POINT *first_point, AcisOptions *ao=NULL) |
| Delete the linked list of AF_POINTs. | |
| outcome | api_delete_entity_facets (ENTITY *ent, logical apply_to_descendents=FALSE, AcisOptions *ao=NULL) |
| Deletes facets. | |
| outcome | api_facet_area (ENTITY *entity, double &area, AcisOptions *ao=NULL) |
| Returns the area of the facets of entity. | |
| outcome | api_facet_bodies (ENTITY_LIST const &bodies, facet_options *fo=NULL, AcisOptions *ao=NULL) |
| Facets a list of bodies. | |
| outcome | api_facet_curve (const curve &in_curve, const double in_start_param, const double in_end_param, const double in_max_tol, const double in_max_length, const double in_max_angle, int &out_count, AF_POINT *&out_points, AcisOptions *ao=NULL) |
| Returns facets that approximate a curve. | |
| outcome | api_facet_curve (const curve &in_curve, const double in_start_param, const double in_end_param, const double in_max_tol, const double in_max_length, const double in_max_angle, const int in_max_count, int &out_count, SPAposition **io_points, double **io_params, AcisOptions *ao=NULL) |
| Returns facets that approximate a curve. | |
| outcome | api_facet_edge (const EDGE *in_EDGE, const double in_max_tol, const double in_max_length, const double in_max_angle, int &out_count, AF_POINT *&out_points, AcisOptions *ao=NULL) |
| Returns facets that approximate an edge. | |
| outcome | api_facet_edge (const EDGE *in_EDGE, const double in_max_tol, const double in_max_length, const double in_max_angle, const int in_max_count, int &out_count, SPAposition **io_points, double **io_params, AcisOptions *ao=NULL) |
| Returns facets that approximate an edge. | |
| outcome | api_facet_entities (ENTITY *owner, ENTITY_LIST *entity_list, facet_options *fo=NULL, AcisOptions *ao=NULL) |
| Creates facets for a list of entities. | |
| outcome | api_facet_entity (ENTITY *entity, facet_options *fo=NULL, AcisOptions *ao=NULL) |
| Creates facets for an entity. | |
| outcome | api_facet_unfaceted_entities (ENTITY *owner, ENTITY_LIST *entity_list, facet_options *fo=NULL, AcisOptions *ao=NULL) |
| Facets unfaceted (unmarked) faces given a list of entities. | |
| outcome | api_facet_unfaceted_entity (ENTITY *entity, facet_options *fo=NULL, AcisOptions *ao=NULL) |
| Facets unfaceted (unmarked) face(s) of an entity. | |
| outcome | api_faceted_face (FACE *face, logical &faceted, AcisOptions *ao=NULL) |
| Determines if a face has been faceted or not. | |
| outcome | api_fast_find_face (SPAposition const &ray_pos, SPAunit_vector const &ray_dir, BODY *in_body, int &in_count, ENTITY **&in_faces=*(ENTITY ***) NULL_REF, SPAposition *&in_hits=*(SPAposition **) NULL_REF, double *&in_params=*(double **) NULL_REF, AcisOptions *ao=NULL) |
| Fires a ray through a body and returns the hits. | |
| outcome | api_get_default_refinement (REFINEMENT *&ref, AF_SURF_MODE surftype=AF_SURF_ALL, AcisOptions *ao=NULL) |
Gets the default REFINEMENT associated with a type of surface. | |
| outcome | api_get_default_vertex_template (VERTEX_TEMPLATE *&tplate, AcisOptions *ao=NULL) |
| Gets the default vertex template. | |
| outcome | api_get_entity_refinement (ENTITY *entity, REFINEMENT *&ref, AF_SURF_MODE surftype=AF_SURF_ALL, AcisOptions *ao=NULL) |
| Gets the refinement of the given surface type attached to the given entity. | |
| outcome | api_get_entity_vertex_template (ENTITY *ent, VERTEX_TEMPLATE *&vt, AcisOptions *ao=NULL) |
| Gets the vertex template attached to the entity. | |
| outcome | api_get_facet_edge_points (EDGE *edge, SPAposition *&polyline, int &num_pts, AcisOptions *ao=NULL) |
| Gets facet points of the given edge generated by the faceter. | |
| outcome | api_get_indexed_mesh (ENTITY *entity, INDEXED_MESH *&mesh, AcisOptions *ao=NULL) |
| Gets the indexed mesh attached to the entity. | |
| outcome | api_get_mesh_manager (MESH_MANAGER *&mm, AcisOptions *ao=NULL) |
| Gets the current mesh manager of faceter. | |
| outcome | api_get_shell_facets (SHELL *shell, POLYGON_POINT_MESH *&pmesh, logical share_edge_vertices=TRUE, AcisOptions *ao=NULL) |
| Obsolete: used only in pre-1-7 Faceting. | |
| outcome | api_initialize_faceter () |
| Initializes the faceter library. | |
| outcome | api_mark_faceted_faces (logical mark, AcisOptions *ao=NULL) |
| Marks faceted faces so that an application may skip re-faceting them later. | |
| outcome | api_modify_vertex_template (int n_tokens, int tokens[], VERTEX_TEMPLATE *tplate, AcisOptions *ao=NULL) |
| Modifies a vertex template. | |
| outcome | api_set_default_refinement (REFINEMENT *ref, AcisOptions *ao=NULL) |
Sets the default REFINEMENT in the faceter. | |
| outcome | api_set_default_vertex_template (VERTEX_TEMPLATE *tplate, AcisOptions *ao=NULL) |
| Sets the default vertex template in the faceter. | |
| outcome | api_set_entity_refinement (ENTITY *ent, REFINEMENT *ref=(REFINEMENT *) NULL, logical apply_to_descendents=FALSE, AcisOptions *ao=NULL) |
Attaches a REFINEMENT to an entity (BODY, LUMP, SHELL, FACE), and optionally its lower topology. | |
| outcome | api_set_entity_vertex_template (ENTITY *ent, VERTEX_TEMPLATE *vt, logical apply_to_descendents, AcisOptions *ao=NULL) |
| Sets the vertex template on an entity, and optionally its lower topology. | |
| outcome | api_set_mesh_manager (MESH_MANAGER *mm, AcisOptions *ao=NULL) |
| Sets the current mesh manager of faceter. | |
| outcome | api_set_mesh_manager_to_default () |
| Sets the mesh manager to the ACIS default mesh manager which puts an INDEXED_MESH on each face. | |
| outcome | api_terminate_faceter () |
| Terminates the faceter library. | |
Variables | |
| option_header | faceter_allow_multithreading |
| This option header provides a global switch to turn multithreaded faceting on/off. | |
| outcome api_facet_bodies | ( | ENTITY_LIST const & | bodies, | |
| facet_options * | fo = NULL, |
|||
| AcisOptions * | ao = NULL | |||
| ) |
Facets a list of bodies.
If the option_header faceter_allow_multithreading is true, it uses multiple threads to speed the operation when possible.
| bodies. | Each body in this list is required to be a top level entity: i.e., it is required to be its own owner. | |
| fo. | facet_options object controlling faceting | |
| ao. | AcisOptions object controlling journalling etc. |
include <af_api.hxx>
| outcome api_set_mesh_manager_to_default | ( | ) |
Sets the mesh manager to the ACIS default mesh manager which puts an INDEXED_MESH on each face.
This option header provides a global switch to turn multithreaded faceting on/off.