Home
Reply
Contributor
xhjhust
Posts: 17

How to check a entitiy which is a solid body or a sheet

Dear all,

 

   In our project, we need to modify the body such as removing face from solid body or covering loop to be a face. So, the solid body can be changed to a shell when removing a face, or the shell including some faces can be changed to be a solid body when cover a face using a loop. 

 

   We would like to ask how we can judge a entity which is a solid body or a sheet?  Are there some functions to do this in ACIS kernel?

 

 Thank you for your attention!

Contributor
Sarvnaz
Posts: 25

Re: How to check a entitiy which is a solid body or a sheet

Hello,

 Every entity in ACIS has an is function associated with it. You can find the type of an entity by calling this function. Here is the documentation that explains this more in detail.

http://doc.spatial.com/index.php/HowTo:Determine_the_type_of_an_ENTITY%3F

 

Also, if you are interested in covering loops to make faces or removing faces etc. ACIS has APIs to do both of these. For Covering, you can find the information here:

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

For removing faces, please refer to our documentation below:

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

Spatial Moderator
Brendan
Posts: 89

Re: How to check a entitiy which is a solid body or a sheet

It is important to define precisely what we mean by a "sheet".  In ACIS, a "sheet body" must be a body consisting of double-sided faces with "both-outside" containment, whereas a solid body which has a face removed is actually considered an "open solid body".  The documentation provides more details on this important distinction (http://doc.spatial.com/index.php/Body and http://doc.spatial.com/index.php/Face).

 

To check if a body is a sheet, you would need to check that the faces are double-sided.  If the containment of these faces is both-outside, then the body is a sheet, otherwise, the body is a sheet-shaped void in an infinite solid.

 

But I suspect you really just want to know if the body is open or closed.  The public function is_closed_solid_body (defined in acistype.hxx) will answer this question.  (Actually, this function does not distinguish between sheet and solid bodies, but this may be what you want anyway.)

Contributor
xhjhust
Posts: 17

Re: How to check a entitiy which is a solid body or a sheet

Thank you very much for your answer!