The 3D ACIS® Modeler (ACIS) is Spatial’s prominent 3D solid modeling engine. 3D InterOp is a CAD data translation framework (Interoperability)
HowTo:Check a non-tolerant VERTEX or EDGE for tolerance errors?
From DocR19
Use api_tolerize_entity with appropriate options set in the tolerize_entity_opts object. This API finds all the edges and vertices in an entity which have gaps larger than resabs and tolerizes them. The Scheme extension is entity:tolerize. Refer to the technical article Tolerant Modeling.
Contents |
Signature
DECL_KERN outcome api_tolerize_entity(ENTITY* ent, tolerize_entity_opts* opts=NULL, AcisOptions* ao=NULL);
Header Files
#include "kernapi.hxx" #include "tolerize_ent_opts.hxx"
Example
ENTITY *pEntity = something; tolerize_entity_opts opts; opts.set_report_gaps(TRUE); tolerize_entity_opts *my_opts = &opts; AcisOptions* ao = some_acis_opts; ENTITY_LIST affected_entities; ENTITY_LIST new_entities; outcome res = api_tolerize_entity(pEntity, my_opts, ao); if (res.ok()) { my_opts->get_affected_entities(affected_entities); affected_entities.init(); ENTITY *ent = NULL; while ((ent = affected_entities.next()) != NULL) { new_entities.add(my_opts->remap_ptr(ent)); } }
Scheme Commands
(entity:tolerize ent)
Notes
To avoid errors, it is important parts to be tolerized do not have edges which are small relative to the new tolerances.
Related Content
- See also: :Category:FAQs
