Modeling Challenge: What is the fastest way to calculate the volume of water in a bottle?

Article by Alin Vargatu, CSWE updated September 30, 2010


A very interesting question received from a customer:

Alin, I have this bottle model and I would like to know how much water it can carry. I know how to use the “Mass Properties” tool for getting the volume of the bottle itself, but how do I calculate the volume of the water inside?

Since he needed a solution fast, I came up with a workflow that gave him the answer. I am not sure if this is the fastest way to achieve that, so I would like to challenge you, our readers, to propose alternate solutions to this problem.

My workflow takes advantage of SolidWorks multibody part functionality.

As you can see, the bottle is not capped, so it does not have yet an enclosed volume. Let’s cap it:

I have just used the top edge of the bottle for a simple extrude-boss operation:

Now the bottle is capped so the water volume is defined:

Unfortunately, SolidWorks cannot calculate the volume enclosed in a solid body, so we will have to create that as a solid body itself. And, only because we can, we will make it out of water.

Let’s start by extruding another solid body whose volume will completely include the bottle body.

Now we have a multibody model:

Let’s subtract the bottle body from the box body and choose to keep only the inner volume:

Make sure you select the inner body to keep:

Since the bottle body gets consumed in the combine-subtract operation, whatever is left, is the water body. Let’s assign Water as a material and see what the Mass Properties tool reports:

Now, can you think of a different way to achieve the same result? Not necessarily faster, but different. As you know, we enjoy not only reading your comments to our articles, but we also welcome your own articles for posting on our blog.

Related Links

Certified SOLIDWORKS Services available from Javelin

Javelin can help you to:

Find Related Content by TAG:

Alin Vargatu, CSWE

Alin is a SOLIDWORKS Elite Applications Engineer and an avid contributor to the SOLIDWORKS Community. Alin has presented multiple times at SOLIDWORKS World, Technical Summits, and User Group Meetings, while being very active on the SOLIDWORKS Forum.