I have this asymmetrical container and need to model water in it for rendering. So I need a separate part representing water. It would be a real pain to model it from scratch because of all the fillets and etc.
Also, it would be great if that water-part would follow the shape of my container if it's dimensions/shape changes.
Suggest that maybe the "Combine" command will do what you want.
See tutorial (this is my first attempt at doing a tutorial, so please hold me harmless if it is not perfect.
Also see attachment
AttachmentsContainer with Water.zip, 671 KB
1: Create a model of your "CONTAINER". Save
2: Create a model for the "WATER". This is nothing more than a cylinder that is slightly larger in diameter than the "CONTAINER" is just a little short of the heighte of the "CONTAINER" ( this shortnes will become the water level). Save
3: Use the "INSERT PART" command and insert the "CONTAINER". Save
4: Now use the "COMBINE" Command. You will now get a popup (step 5). Save
5: Select "SUBTRACT" in operation type. Select the "WATER" in main body. Select the "CONTAINER" in Bodies to combine. Click the "GREEN CHECKMARK". You will now get a popup (step 6). Save
6: In bodoes to keep click "SELECTED BODIES". Put a checkmark on "BODY 2". Click "OK". Magic... you now have your "WATER". Save
7: Now... make an assembly of the "CONTAINER" and "WATER". I will leave it up to you to add color or material types whatever suits you. Hope this is what you were looking for, and if so hope it helps you out. Incidently you can do "MASS PROPERTIES" if you want to see exactly how much "WATER" you have in your "CONTAINER".
To make the water look nicer, add some rimples on it. Remove the top surface from your ' WATER' body, and put a free-form surface in its place. Adjust this free-form surface to depict some rimples, then knit the surface to the ' WATER' body while 'Try to make solid'. ;)
This is a good way of doing it ...
But the problem with most methods that the outer surface of the liquid and inner surface of the container exist in the same space virtually thus, creating undesirable artifacts when rendered ...
One thought is to slightly reduce the size of the "liquid". This can be done by changing its size using the "SCALE" function in "MOLD TOOLS".
Yes, that should eliminate the problem ...
I don't have rendering software so not able to see how it would look
Actually, your method adapts to change a lot better than mine, I can't see how your method would fail unless the Scale feature fails, which I doubt since the change in scale would be minimum.
By the way, SolidWorks ships with PhotoView, a good rendering software.
The scale feature worked fine on the sample model, unfortunatly I only have the 'standard' version of SW which will not allow the the PhotoView add-in to 'add-in'
I'm not getting a better idea so try this, offset the inner surfaces of the container with a very small number (rather than using zero for rendering purposes) then use whatever kind of surface to close it from the top then knit to form a solid ...
If you change the dimensions it'll adapt but not if you change the shape ...
Yes, it is better that the two bodies do not touch to remove unwanted visual effects
w.wolf is right. His way of doing it - offsetting inner surfaces works great!
I added a picture to show these undesirable artifacts:
Do you still have this problem if you select Merge Result? This way it is treated as a single piece but you can still select a different appearance using feature selection and photoview should recognize that allowing you to manipulate it separately. Do you have the file?
There is another way.
Make a water part of desired amount of water in your profile of bottle. Then create new part. insert a part of water in new part, make a bottle - you must position a part, make a intersect line with inserted part, and make a body of bottle and add glass material for bottle- then you can weight a bottle and amount of water in it.
Thanks w.wolf, will try this method as soon as possible.
I came up with another method too, First I made new plane, where I needed the water level to be, then using intersection under convert entities, sketched a contoure of my container, then extruded it using Up to body setting. But this should only work when the container doesn't widen at the bottom. Also, when rendering, it produced ugly artifacts, where water and the container meet, as if there were a small gap between my container and liquid.
You're welcome ...
Offsetting with a small number puts a gab between the surfaces and eliminates rendering artifacts ...