Wednesday, December 21, 2011

Making a model of negative space in ProE/Creo


Need a model of the negative space inside an assembly model that you're developing? Here's a way. Note that only parts in contact with the inner surface are included in the negative; detached parts will not show up in the negative space. Also on occasion you will need to click the green check mark to finish out a command.
__________________________
Update: I have not used this in quite some time, and am now using Creo 3. Was trying to use this today, and ran into a couple of snags. I can no longer locate the "Insert" command mentioned below, and the "secret ProE magic" that I once used now seems to be gone. I ended up doing this:

- Create a new part model. Click "Shrinkwrap" command, and select the assembly file that you're wanting the negative space from.
     - Placement = default
     - Select "Autocollect all solid surfaces", and "No" to the "exclude internal components" prompt.
     - Pick "Options/Solidify resulting geometry".
     - Save model; this is the shrinkwrap model.
- Create a new assembly. Call it the black hole?
     - "Place" the shrinkwrap part in default location.
     - Create/assemble a new part at default location. This will be the negative-space model.
     - Right-click/Activate the negative model.
     - Click once on the shrinkwrap, then click again, rejecting the selection as needed to highlight a desired internal surface, then pick it.
     - Holt Ctrl and pick the rest of the surfaces you want. Ctrl-C, Ctrl-P to copy surfaces into the negative model. This can be done in several selections or just one, your choice.
     - Click the surface copy objects, and "merge" if it's more than one. Then pick "solidify". If it won't solidify, use the surface tools to close any holes/gaps/cracks, then try again.
     - If the model is modified and updated, the solidify might fail. You may need to select more surfaces and redo the solidify. Adding a chamfer, for example, will create a crack in the model until the chamfer surfaces are copy-pasted into the negative model.
_____________________________   
Original content below:
- Make a new part model, and make an associative shrink wrap in it: Click Insert > Shared Data > Shrinkwrap and then select or open model from which geometry will be copied. Define placement and then select Auto collect all solid surfaces in list next to Subset. Click the Options panel and check "solidify geometry". Options I did not use: Click Subset to select contributing geometry and click OK. Click the Options panel to fill contours.

- Make a new, stand-alone assembly. This one will only be used for creating the negative space. Insert the shrinkwrap model with "default" placement. Create and insert a new part model, I will call it "negative", with "default" placement.
- From inside the new assembly, right-click and "activate" the "negative" model.
- Now to select the internal surfaces with a little secret ProE magic:

  • Click the shrinkwrap model once, then hover over it again. You will now be in "surface select" mode.
  • Reject (right-click) the surface until an internal surface is highlighted, then click it. 
  • Hold down shift, and select another internal surface, then let go of the shift key. Now all of the internal surfaces should be highlighted.

- Copy (ctrl-c) and paste (ctrl-v). This should paste the surfaces into the "negative" model, since it was active.
- Hide the shrinkwrap model (click it, hold down right-mouse, and select "hide")
- Inspect the "negative" model for missing surfaces. I found that one surface was left out. If so, remember which one is missing, unhide the shrinkwrap, then select, copy, and paste the missing surface.
- Now open the "negative" model, select the surface objects, and in the top menu, click Edit>Merge.
- Select the "merge" object, and click Edit>Solidify.

And there you have it, a negative space model. If you modify the original assembly that it is created from, you will need to open the shrinkwrap model, select and right-click the shrinkwrap object, and select "update shrinkwrap". Next time the "negative" model regenerates, the mods should appear in it.

Now you can insert the "negative" model into your original model with default placement if you like, but word of caution: suppress the "negative" part before updating the shrinkwrap. If you do not, the "negative" will fail, because it is caught in an impossible self-referential loop of doom.

Enjoy!

No comments: