- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic to the Top
- Bookmark
- Subscribe
- Printer Friendly Page
Edges created in a boolean operation
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
06-25-2010 05:22 AM
Hello,
I'm very new to ACIS and I'm not able to find the way to find the edges created after a boolean union operation.
I have two solid bodies, I unite them and at the end I got a body with many edges and I would like to know what
are the edges created by the union (but not the edges modified by the union, for examples some edges
have now shorter than before the union).
I checked the online documentation but I had no time to do a deep reading of the whole documentation.
Thanks.
Regards,
Marco
Re: Edges created in a boolean operation
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
06-28-2010 02:16 PM
Dear Sir,
As you are new to ACIS please review http://doc.spatial.com/index.php/Tutorial:ACIS_Tutorials before you start. You can get hold of the create entities by scanning the bulletin_board of the outcome object.
Regards,
Yogesh
// Routine to scan the current bulletin board
void bb_scan(outcome result)
{
printf("Entered bb_scan\n");
if( ! result.ok() ) {
printf( "Unable to scan bb\n" );
return;
}
if ( result.bb() == NULL ){
printf("NULL bulletin\n");
return;
}
int icount = 0;
int ichang = 0;
int icreat = 0;
int idelet = 0;
BULLETIN *b_ptr = result.bb()->start_bulletin();
while ( b_ptr != NULL )
{
icount++;
if ( !b_ptr->old_entity_ptr() && b_ptr->new_entity_ptr() )
icreat++; // this will give you the access to created edges
if ( b_ptr->old_entity_ptr() && b_ptr->new_entity_ptr() )
ichang++;
if ( b_ptr->old_entity_ptr() && !b_ptr->new_entity_ptr() )
idelet++;
b_ptr = b_ptr->next();
}
printf("There are %d bulletins on the board\n",icount);
printf("\t%d \tCreated\n\t%d \tChanged\n\t%d \tDeleted\n",
icreat,ichang,idelet);
printf("Exit bb_scan\n");
}

