Home
Reply
Regular Contributor
castillor
Posts: 74

Finding change in tangency within an edge without point sampling

Hi. In the function "api_facet_edge" you can specify an input max angle which is the maximum angle between the tangent of the two end points of any facet. I tested this, specifiying only the maximum angle, and checked the angle between the facets. The result was that most of the time the angles between the facets are much lower that the specified max angle. Is there another method of doing something like this but trying to conform to the input angles as much as possible? I am aware that this can be done by sampling points within the edge but this method takes too much processing time. Thank you very much.

 

Regards,

Raymond

Spatial Employee
asdf
Posts: 93

Re: Finding change in tangency within an edge without point sampling

Hi Raymond

 

As you said, the angle tolerance specified in api_facet_entity is a desired maximum between curve tangents.  There is some seeding done by api_facet_edge to make sure it doesn't miss any edge features (i.e., bumps).  There is an option header called "facet_edge_features" which toggles the seeding on and off.  You might want to try

 

#include "option.hxx"

 

option_header* facet_edge_features_opt = find_option("facet_edge_features");

if( facet_edge_features_opt)

{

facet_edge_features_opt->Push( FALSE);

}

 

to see if it would give you fewer edge facets.  We don't recommend this, though, because without seeding the edge faceting it is possible to miss features.

 

Perhaps a better approach would  be to start with our edge facets, then do some sort of decimation on the edge facets.  Currently, ACIS doesn't have any built in features to do this.

 

I hope this helps somewhat.  If you mentioned a bit more of what you are trying to do with the edge facets, it might be possible to come up with some more useful information for you.

 

cheers

 

Eric Zenk

Regular Contributor
castillor
Posts: 74

Re: Finding change in tangency within an edge without point sampling

Hi Eric,

 

Thank you for the reply. As you said it might not be safe to use the "facet_edge_features" option. I think I will just use the edge facet with a small maximum tolerance setting, then just interpolate based on the parameter length and angular difference in between the facets until it reaches a certain tolerance. I think this method will still be much faster that what we currently have.

 

I have a question about the "seeding" that you've mentioned. Does this approach guarantee that no edge features will be missed?

 

Regards,

Raymond