Cancel
Showing results for 
Search instead for 
Did you mean: 

Difference in body due to feature application

Builder
Builder

Hi community!

I've got a question:


I have a base body created by using e.g. a revolve command.

Now I am doing a second revolve body, including the "unite" option to the base body.

Consequently, I have one final body. If I am hovering over the two features, for both of them the final body is highlighted.

 

My aim is, to retrieve the isolated body created by the second revolve, so subtracting the final body from the base body. (For further purposes, I want to get each body added to the base body from multiple consecutive features and evaluate their properties)

 

My approaches so far:

  • I've scripted that I am looping through the features, making each feature the current feature, retrieving the body from the feature and compare the mass properties to each other. In this case, I am getting the information required regarding volumes and I can see, that the volumes are changing from feature to feature.
  • However, I have cannot create the "subtract body" easily afterwards, since the body information is only correct if the associated feature is "the current feature". So subtracting the bodies is not possible.
  • My next idea would be to use the "extract body here" command and work with the extracted bodies. However, this solution does not seem like the most performant solution to me. (Moreover, scripting the extract body here command is recorded by the "extract face builder" with the body option. Is this really the way to go?

 

 

 

That is why I am asking you, the community, if somebody has a more smart idea or approach to my problem.

 

Have I made my problem clear so far?

 

Thank you very much.

 

Best regards

benny

 

3 REPLIES

Re: Difference in body due to feature application

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

Don't do the unite as part of the 2nd revolve.

Now you have a separate body you can do what you want with.

If (later) you want to unite it, do that as a separate feature.

 

Ken Akerboom Sr CAx Systems Engr, Moog, Inc.
Production: NX10.0.3.5 MP16/TC11.2
I'd rather be e-steamed than e-diseaseled


Re: Difference in body due to feature application

Pioneer
Pioneer

It sounds like what you want to do is not have the entire revolve as a separate body, but the revolve minus the portion that was already there.  I think you want to do this:

  1. Create the revolve, but use the "None" option for the Boolean
  2. Now you have two bodies, but they overlap
  3. Use the "Intersect" Boolean as a separate feature, and choose to both Keep Target and Keep Tool
  4. Now you have three bodies, but it sounds like you only want two
  5. Use the "Unite" Boolean as a separate feature, pick the original body and the overlap body, and this time uncheck both Keep Target and Keep Tool
  6. Now you should have the two bodies you want

I hope that makes enough sense to at least do it and record a journal to get the syntax for automating it.

Re: Difference in body due to feature application

Builder
Builder

Hi and thanks  @Ken_A and @robin_h_p for your responses!


Both of the answer seem to be logic to me, this would be the approach I would like to take also. However, I do not want to kind of put the requirement of splitting revolve+unite features to the designer.

Therefore, I am/was looking of a more generic work around.

 

Isn't there a simpler method to get information,for example the bounding box, of the exclusive entities generated by the feature (regardless if it includes a boolean operation)?

Example:

Body A is a revolved cylinder. Body B is a revolved cylinder with a center axis perpendicular to the axis of Body A and of much smaller dimensions. Body B has been created using the revolve command and united with Body A in one feature. Now I want to get the bounding box of the exclusive revolved cylinder of body b.

 

Going through all features, extracting the bodies there, subtracting etc. seems like a lot of work and a messy workaround.

 

 

 

EDIT:

I had an idea concerning a potential "cleaner/smarter" workaround. I am checking the faces of each bodyfeature. Based on the feature information, I can get the faces which have been added due to feature application, building the bounding box for the added faces. However, I think I am not able to get any further body properties thereof (e.g. mass/volume)

 

EDIT#2:

I just realized again that if I am selecting the feature in the part navigator, the corresponding body is highlighted.

Isn't there a way to get THIS information straight out of the feature in NX Open?

 

EDIT#3:
I did it now in a "brute force" attempt where I did exactly the approach which i was describing earlier. I took two bodyfeatures, extracted the bodies thereof, build the subtract boolean feature, checked the subtract body, deleted all features afterwards, made the last feature the current feature. This is now comparably clean, however it might not be the most performant solution.