Home
Reply
Contributor
Simu2011
Posts: 11

This may sound silly

Assume that there two arbitrarily oriented bodies A and B. If I need to subtract B from A, is there an api that I can use directly without transforming and orienting them back and forth to prepare them for the api?

 

To me, it is logic that just dumping A and B into the api that should take care of necessary munipulations and complete the requested A-B. However, someone told me that I need to first shift them to the origin of global coordinates, re-orienting them to be parallel to the coordinate system surfaces, and then use the api to do A-B. Is that true? What if neither is in parallel with the coordinates? What if it is a complex structure instead of a simple box? What if....

 

I don't believe ACIS would not incorporate those standard procedures (if they are truly needed for every A-B operation, it should be standard) into the system. But that person is an expert of ACIS. Am I silly not to listen to an expert, or ACIS is silly not to make an api able to do A-B without those standard pre-requesites? There must be someone silly :)

Spatial Employee
asdf
Posts: 93

Re: This may sound silly

I think you may have been misinformed.  api_boolean can subtract one body from another without any need to reorient either of them.  If you are trying something particular that doesn't work as expected please ask again, or consult with customer support.  best regards

 

Eric Zenk

Contributor
Simu2011
Posts: 11

Re: This may sound silly

Eric,

 

Thanks for the reply. My gut feeling was that ACIS couldn't be that silly and that expert made things unnecessarily complex. I just need someone who is more knowledgeable to confirm it and convince the person of taking the right approach.

 

You are abosultely right to have sensed that we were trying something different. Actually we were working on splitting a body. The split itself worked fine, undoing it has no problem either. However, redoing the undo did not work, and we could not find the causes of the problem quickly. As a temporary patch, we used Boolean subtraction to perform the desired Split.

 

Any suggestions on the Redo of Split? By the way, Undo/Redo works fine for all other operations.

 

Thank you again and look forward to hearing from you.

 

Jian

Spatial Employee
asdf
Posts: 93

Re: This may sound silly

Hi Jian

 

For undo/redo, using api_note_delta_state and api_change_to_state is something you might want to try.  A delta state is a snapshot of where the model is.  Once you have noted a delta state you can change to it later using api_change_to_state.  c.f. http://doc.spatial.com/index.php/Delta_State

 

hope this helps

 

Eric

Contributor
Simu2011
Posts: 11

Re: This may sound silly

Thanks, Eric. I will try it.

Contributor
wangpai7776
Posts: 9

Re: This may sound silly

Hi,Eric

 

    I also want to split an object with a plane (to delete parts of an object), is there any API or method can implement it? 

Spatial Moderator
rbagley
Posts: 120

Re: This may sound silly

The Boolean documentation can be helpful:

http://doc.spatial.com/index.php/Booleans

 

You may want to use Chop, or non-regularized Intersect.

Contributor
wangpai7776
Posts: 9

Re: This may sound silly

Thank you very much.