Home

af_api.hxx File Reference

#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.

Detailed Description


Function Documentation

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.

Parameters:
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.


Variable Documentation

This option header provides a global switch to turn multithreaded faceting on/off.