Add output to Dimension components?

Happy New Year to everyone.

I just need to bake some dimensions that I have created using the standard dimension components and I realized none of them have option to bake and that there is no way to bake them.

Developers, please improve the dimensions components and add an output node to them so I can use them to bake, like the dimension components from Elefront have this option.

Thank you.

you can bake native dimension component by right clicking on the icon pressing bake command…

Yes, I know, but the problem is that this workflow it is not working with automatic baking multiple objects at once, so I will need somehow a way to bake multiple Dimensions components at once.

to bake multiple components at once, select them then push the spacebar… use the bake icon that pops up… it looks like an egg.

Thank you for the tip but I need to bake using a Boolean Tobble or button who I need to plug somehow to the Dimension component or to another component that can read the output of the Dimension component.

Metahopper has “Bake Object” via boolean toggle…

you cannot expect the devs changing their software just because someone needs a specific feature. You can solve this problem in three ways by yourself:
1.)

  • create a dimension (Rhinocommon provide some classes for it but you can also make your own symbolic dimensions build together from primitive geometry
  • append them to the actual Rhino document objects list (“bake”) with rhinoDoc.Objects.Add()

2.)

  • search for the dimension components on your grasshopper canvas and trigger bake by some reflection mechanism, I don’t know how to do this, but its possible since grasshopper is written in c#. As an alternative you can always use user32.dll to mimic human input

3.)

  • find and use a plugin doing it for you (as Hyungsoo Kim wrote Metahopper does it, probably by using option 2

I think that this can be very useful for a lot of people and will make certain things more easier.

The other alternatives I found searching on internet are not working very well.

1 Like

I found this script:

But it is not working as I have the following error:

“Runtime error (UnboundNameException): name ‘Guid’ is not defined”

And how to select multiple components at once and make the selection permanent?

Holding down “Shift” key+ click components to bake and click “select” icon on the Bake object.

bild

I’ll make dimensions and text tags etc. act more like actual data in Grasshopper2. That way you will be able to transform and bake them like regular geometry. I don’t expect this to change for GH1 though, sorry.

That’s fine for me, Thank You.

I would love to see more components for automatic drawings (Layout) creation and for fabrication process.

There are a lot of things which can be very useful, but in the end of the day a developer need to decide what to focus on. That’s what makes a developer good. I guess by automating baking you already bend possibilities of Grasshopper. In case you want to become better you should start scripting and solve such limitations by yourself.
I cleaned up the script, which is kind of simple but hard to understand since its mixing Python language with C# language constructs. Its because its IronPython, not easy to learn.

Python_AtmBake.gh (8.9 KB)

Thank you for the script, but still not working properly. Seems that the dimension line is shorter than the geometry.

Python_AtmBake_test.gh (9.1 KB)

P.S. It is possible to modify this script to display rounded numbers without decimals?

for me (V5) it works, seems to be a bug with Serengti! note: @DavidRutten

Yes, I checked in v5 and is working, but it puts the dimensions on the “Default” layer. Seems that the layer set attribute don’t work. I created a “Standard” layer and still baking on Default layer.

strange works for me either. You might need to eliminate whitespaces:

Yes, indeed seems that was a new line at the end of the layer name.