Intersecting and splitting 3D objects efficiently
-
@cotty said:
The intersection should work, maybe your geometry is to small, try to scale up your model before the intersection.
Thanks for the response. The ultimately, the units should be in mm. However, to avoid the precision problems, all the dimensions are scaled by 1000. However, the actual largest dimension is 34.5mm or 34,500mm in the model. Then, I planned to scale the model down by 1000 and then export the model in STL. Is this reasonable?
-
Yes, that should work.
-
@jim said:
@renaissance man said:
Using intersect faces constructs geometry where face intersection occurs. But it does not actually split faces or edges so that the intersection geometry is now split so that a single object now become multiple objects
From the image it appears the tubes are not in the same context as th eexternal face. Did you explode the tubes before trying to Intersect them?
Great, thanks for the reply. I'll try explthat exploding the objects. It seems to me that this approach may have some drawbacks to it. If I explode the groups and components in order to affect changes to the geometry, how do I restore the groups and components which I just exploded to their former condition? If I have to go back and select the geometry manually, I am willing to do that since it is significantly easier than trying to split geometry by hand.
-
Don't explode the groups or components! As I wrote before, there is no need to do that.
-
@dave r said:
@unknownuser said:
Using intersect faces constructs geometry where face intersection occurs. But it does not actually split faces or edges so that the intersection geometry is now split so that a single object now become multiple objects. Are there any extensions that will do this? If not, any ideas on how to do this efficiently? Any suggestions?
You don't need an extension or plugin to do this. You just need to use the tools you've got correctly. As Jim indicated, from your image it appears you aren't creating the intersection in the same context as the geometry of the tubes. You don't need to explode them to do that, though. All you need to do is open them for editing and select the geometry inside before running Intersect faces. The intersection edges will be created to split the faces inside the group or component and you can quickly delete the bits you don't need.
As Tim mentioned, make sure you aren't working at such a small size that you wind up with gaps due to short edges.
If you want a surface at the end of the tube where the intersection occurs, you need a surface in the same context at the time you make the intersection. You can copy the intersecting surface, open the tube group/component for editing and use Edit>Paste in place. Then select the geometry and run Intersect Faces>with Selection and delete what you don't need.
Make the tubes plenty long so you can easily select the bit you want to delete with a selection box, the hit the Delete key.
If you need it to be more automated than using Intersect Faces, buy the pro version of SketchUp and get the Solid Tools.
Hey Dave, this is really helpful.
OK, I understand now about the state of the geometry with respect to the component/group and it merely needs to be open and the geometry needs to be selected. I tried it and it works great. So what you are left with is an intersection line, and geometry which has had the edges and faces modified where the intersection occurs.
I think I almost have figured out except for a couple things. First you mentioned "needing a surface in the same context" when intersecting if I want a surface at the end of the tube. Does this mean that if you want a finished end on the tube, then it must be present before intersection is performed - Intersecting objects modifies the geometry it is provided?
This is a huge step forward. So I can essentially intersect and select geometry
I am confused about the the differences of the three different modes in which Intersect Faces can be invoked. Model,Selection and context. I thought it specified the range of geometry processed during an invocation for efficiency purposes, especially where very large models are concerned. Is this correct? There are a number of different opinions as to how these modes work and how they should be used. Could you shed some light on this?
-
Renaissance Man
I think there needs to be a better definition of what you mean by "efficiently" and you also discussed removing external geometry. IMHO intersecting does not imply simplification of the model in terms of number of edges, vertices etc. Without having the model and better definition of what the end goal it is difficult to give a closed from solution. If your goal is to reduce vertices, edges etc. ( aka what I think of as model decimation) then consider this: Su has the capability of replacing one component with another using the component browser ( no new extension needed). You would have to make another simpler component cylinder and then just replace the one or ones you have with that. When you do the intersection the number of edges and vertices will reduced. Without having the model I have on idea what you really want?
If your model size is to large ( bit wise)to post on this forum then you will need to upload it to a file sharing site and tell us here what its path is. -
@renaissance man said:
I think I almost have figured out except for a couple things. First you mentioned "needing a surface in the same context" when intersecting if I want a surface at the end of the tube. Does this mean that if you want a finished end on the tube, then it must be present before intersection is performed - Intersecting objects modifies the geometry it is provided?
If you want a surface on the end of the tube where you've made the intersection, it would be easiest if the surface was in the same context before the intersection. Essentially, you wind up intersection both surfaces and when you delete the unwanted parts, you leave behind part of the surface that passes through the tube.
Here's a quick example.
A. The original tube and surface. Each one is a component. There's no edge where thy cross because there's been no intersection created.
B. I opened the tube component for editing, selected the inner and outer surfaces of it, right clicked and chose Intersect Faces>With Model. In the back you can see the result after erasing the unwanted part of the tube.
C. I opened the surface component for editing, selected the surface and hit Edit>Copy. Then I opened the tube component for editing and hit Edit>Paste in place. (I have a keyboard shortcut for that because I use it frequently.) Then while the surface was still selected, I select the inner and outer surfaces of the tube, right clicked and used Intersect Faces>With selection. In the back you can see the results after deleting the unwanted end of the tube.
The various intersect options do provide you with a way to control what is involved in the intersection. It depends upon what you select and what's available to intersect.
With model creates edges anywhere the selected entity passes through faces. And as you've found, the edges are created in the current context. Rarely in my work do I ever want to use Intersect with model because it often creates more edges than I want and then I wind up with a bunch of clean up work.
With selection does just what it says. This is my favorite method because I can control specifically where intersections get made by what I select. This is also useful when you have a lot of complex geometry. If you just selected all of it, SketchUp has to iterate through all of them to see if there are intersections. In my tube example, above, I said I selected the inner and outer faces of the tube to intersect with the other surface. There's no need to select the faces at the ends since I know they won't be involved in the intersection. The time saving in that example isn't noticeable but in more complex models, it would be.
In your model, if you want to create the surface on the end of the tube, select only the faces you need in the intersecting geometry to copy into the tube group/component. It gives you less stuff to clean up after the intersection, too.
With all that said, if the tube will ultimately be part of the surface it's on. I'm thinking of something like a boss on the surface of a plastic or metal thing, The process should be a little different. The tube needs to be in the same context as the surface.
In that case you would explode the tube component/group and white the tube geometry is selected hit Edit>Cut. Open the surface component for editing and choose Edit>Paste in place. Select the geometry involved in the intersection, run Intersect Faces>With Selection and delete what you don't want to keep.
-
FWIW, I used the process I outlined on this door sample. To cope the ends of the rails, I copied the edge profile and groove from the door stiles and pasted them in turn into the rail components and used Intersect Faces>With Selection.
And again to create the turned portion of this octagonal table pedestal.
And yet again for the stopped chamfers on the stretchers of this hayrake table.
-
nice dave.
-
-
Dave,
The clouds have lifted! The old saying that a picture is worth a thousand words was certainly true here. The models did the trick. A sincere thank you.
-
Mac1:
What I meant to imply by the term "efficiently" was the relative amount of manual effort required to accomplished a task within SketchUp. Manual effort can loosely be define as any task which requires a user to work on low-level geometry (faces, edges, vertices) when it is reasonable to expect SketchUp to take care of the task for you. This is important to me for several reasons. First, I have found that it is really easy ruin a SketchUp model by messing with geometry. My preference is to deal with atomic objects and to let SketchUp deal with geometry. Hopefully, that gives a clearer definition of what I meant by the "efficiently". Thanks for your comments.
Advertisement