Can you make the “Volume” function display like a dimension?

I can choose a solid and dimension it in length, width, and height. If I scale the solid, the dimensions update.

I can also go to Analyze/Mass Properties/Volume and get a volume calculation of that solid.

So, it would seem like combining these two features to give me an on-screen Volume dimension that updates as I scale the solid would not be outside the realm of possibility.

I am currently designing a ballast keel for a sailboat and it is a real PITA to have keep re-running the Volume function every time I change the shape. I would like to be able to watch the volume change live as I grab a scaling toggle.

That would be so 21st century.-Mark🙂

Click Leader, then click Fx in the box that comes up. Click Volume, and then click on the Select Object button.

You can also use my plugin (peterstools, available in package manager), which lets you create text blocks that show object volume. In both cases, the numbers won’t update until you complete a command (meaning, if you scale the object, you won’t see the numbers change until the scaling is complete.) My plugin also has a scale-to-target-mass tool, in case that helps.

2 Likes

Along these same lines, suppose you’re designing an irregularly shaped fluid tank and would like to determine the volume of fluid between a level surface representing the fluid height and the part of the tank below that level? The most convenient way of representing the level seems to me to be a clipping plane and it would be very convenient if the volume display would update as the clipping plane is moved up and down. Does anything like this exist?

Hydrostatics command returns the volume (Volume Displacement) of a surface or polysurface below a z height (WaterLineElevation). Hydrostatics | Rhino 3-D modeling
To change the height of the fluid the command needs to be re-run.

1 Like

Hi @Ukktor
You can do this now, one quick way…
Open grasshopper
Go to surface analysis component.
Connect a panel to the v output
Select your geometry under set one or multiple geometry
Now when you scale in anyway, but lets say use the gumball tool you can see it’s value update in the panels. Though it doesn’t update as you move the gumball scale once you let go it reports instantly.
You can also hook up area etc. at least this way you don’t ever have to hit the volume command.

I don’t have time now but this can easily be made into a GHplayer script that can be used in rhino without opening Gh.
Hopefully the Gh experts might chime in.

RM

Thanks! And thanks for reminding me of the existence of the hydrostatics command.

I actually ended up just using a spreadsheet to finish my project calculations, but I saw such good suggestions here, I decided to spend some time learning a bit.

I will look into Peter’s suggestions as well, but 3dSynergy gave me the hints I needed via Grasshopper. I just barely remember teaching myself the basics years ago, but I don’t use it that often. I did not think to use it for this task, but it worked out better than I imagined. I don’t just get the volume live, I get the finished weight of the sailboat keel, which is what I actually needed to compute.

The top function selects the two parts of the ballast, displays the volume of each, then the total volume, converts from mm3 to m3, multiplies by the density of lead, rounds to 3 decimals (install Pufferfish plugin), and spits out the weight of the ballast in kilos of lead.

The lower function does the same, but allows you to manually enter in a volume in mm3. For this project, it is mostly to display my maximum allowed weight.

Thanks folks!

1 Like

Peter, I managed to get Peter Tools installed. This is nice option as well, in that you do not need to open a separate software package. I like that it does the unit conversions too.

  1. Edit Material List - Moved the Lead material into the “active” list
  2. AssignRealMaterial - Assigned Lead material to my solid
  3. DotWithData - created a dot with Mass (also did one with Volume) (updated this after reading response from Peter- using the AddMassText instead of DotWithData will change live)
  4. Poof! There is a “dimension” on the object.

This is a pretty decent and easy to implement solution (once you have watched the short YouTube instructional video) As for basic volume and mass “onscreen dimension” functionality, it preferable to the Grasshopper setup. Of course, you may need to get fancier results (such as single AND total mass and volume of multiple objects) and the step over to GH is not that bad.

However, my issue in PetersTools is that the Dot data is not changing after a scale. I may be missing a detail somewhere. I am on a 2020 M1 Mac mini.

Also, some “Back” buttons would be nice instead of having to exit and relaunch the Pt command.

And I managed to get the onboard Rhino Volume dimension working!

There were two points causing confusion, some Googling set me straight.

First, that Volume is not directly referenced in the Dimension menu bar or Toolbar. You have to look under “Text”. Secondly, Peter wrote to click “Leader” I am sure he meant “Text” :grinning:

  1. Use Text command. Do not use the “Text” command under Solid menu, it is actually “TextObject” and will not display the Fx button.
  2. Click “fx”
  3. Select Volume as your function. Select your object.
  4. Place the dimension.

This does update live. It is a shame this is so well hidden and apparently is new for Rhino7feature.

The only text that peterstools creates that updates when you resize the object is when you use AddMassText.

Yeah, that’s the simple solution!

I did mean leader, actually, but the technique is the same for all dimension tools (well, most). And it is not very apparent to users imho. Most of the options under fx are obscure and should just remain under the fx button, but volume, at least, is something that I think should have its own icon & menu item (right under ‘area dimension’)

I do see fx under Leader now, I must have glazed over it before in my rush.

Also, I changed DotWithText to AddMassText and yep, it updates live now! I did an update on my previous instruction post above.

Thanks Peter!

@dan I wanted to tag two issues in this thread as possible support topics.

  1. I was wondering about adding the 3D “Volume Dimension” in adjacent locations where 2D “Area Dimension” is already located, such as the Dimension Toolbar dropdown and Dimension Menu bar dropdown. As seen in other postings in this thread, that this feature may be a bit too deeply hidden in the Text Field feature and could be more “naturally” located directly with the other commonly used Dimension Tools, particularly paired with the existing 2D tool.

  2. I had issue with noticing the Text properties field “fx” in the dialog box for Leader/Text. As posted, my first thought was just overlooking it, but I realized later, it is also partially a Mac Dark Mode issue. Black text on dark gray, plus a bit of age on.my eyes, made it difficult to see. I know there are some dark mode issues, but what would have helped the most would be to see the “fx” and “1/2” look like buttons instead of plain text. This would make them display just fine in dark mode, Every other item in the text dialog box, is legibly displayed in “boxed/buttoned” mode except these two. That change would help them pop off the background and match the rest of the interface.

Thanks Dan!

Sorry, it took me a bit of time to catch up with this one. It sounds to me like you are happy with the result of following @phcreates 's instructions (using a Leader with a volume formula), but you feel that it’s not discoverable (requiring far too many clicks). Am I parsing this correctly?

This is just a bug, plain and simple. Logged in:

RH-66548 Dark Mode: Text dialog: fx button is not legible

Thanks for reporting this.

Not the Leader and Text commands themselves, but that the Volume Dimension function is hidden within them.

My example is that Area Dimension function is readily available in Menu bar and Toolbar dropdowns. No burrowing involved.

Volume seems the logical counterpart to Area. So in my mind, the Volume Dimension would expected to be found located next to the Area Dimension.

As from my first post in this thread, I looked all over for Volume dimensions and came here to find out what was up. I would have found it in seconds if it had been logically located next to the Area Dimension in the dropdowns.

As from the 2nd post in this thread, someone else did not know about it either. I did not even realize it was new for R7. Heck, I have never needed a Volume dimension in years of using Rhino until this past week. Same with the fx feature.

Since Area made the jump to the drop downs, I am making sure the new Volume feature is given equal billing. Since it is a new feature, these adjacent locations may not have been considered, but it seems sensible to put the 3D tool right next to the 2D tool.

Menu bar Dimension drop down- Volume Dimension should be available below Area Dimension

Toolbar Dimension dropdown- Volume Dimension should be available below Area Dimension

Thanks @dan for logging the fx Dark Mode issue as well.

I’m trying to understand what you would like as the result of running your hypothetical command.

If you were to navigate to the spot in the menus that you are referring to (which just runs a command anyway), would you be happy if the result were to produce a Leader that points to an object and displays the volume of that object? (Or should it be a Text? Or a Dim? It sound like you want a Dim here and I’m trying to understand why).

Technically speaking, the fx (formula) is a feature of the Text (annotation) system, which gets used in Dim, Leader, etc.

DimVolume request logged here:

RH-66551 DimVolume command

1 Like

Clicking Volume Dimension would behave the same as clicking Area Dimension does, asking to generate a first leader point or select the object.

I visited the link in your follow up post linking to the bug report and I think you nailed it. I also think I understand where you are coming from better from your post as well.

_DimArea is a command. _DimVolume does not exist.

So yes, I am asking for a _DimVolume that behaves like _DimArea and can be found in similar locations.

I just did not know how to ask for it correctly until now.

To paraphrase: “Stick a Volume Dimension next to Area Dimension so even the idiots can find it.” :grinning:

1 Like

Great!

Oddly enough, I feel like this :point_up: is a smarter way of saying this :point_down:

2 Likes