Modify Block : Why do I need to bake it?

Can’t I modify a block definition without baking it ?
I just want to control the definition of the block, not create a useless instance that I then have to delete…
Here, I simply change an attribute of the single geometry in the block :


Banana to cucumber.3dm (71.9 KB) Banana to Cucumber.gh (13.0 KB)

What’s more, when I bake the block, it freezes the GH canvas, except the zoom.

I would do it like this:

Using a Bake Name you do not need to manually delete a copy.

Hi Martin,

I see. This means that all my blocks need to be given an Elefront BakeName Key/value pair beforehand.
I want to be able to modify any block, not only those which have been generated through Elefront.
Moreover, this does not work for sub-blocks : suppose “Block 01” has been nested in another Block ; then an unwanted instance of “Block 01” will be baked despite the BakeName hack.
Also, it is useless to redefine the attributes of a sub-block instance as this will not be passed to all the nested instances.
The “trick” I found to work is to assign attributes to some geometry contained inside the sub-block, as shown in my definition.

The Human equivalent component (“Define Block”) doesn’t require to be baked, and also has an “Overwrite” boolean input, but the Human attributes classes are not compatible with those of Elefront.

Any thoughts on the Elefront Bake freezing the GH interface ?

Sub-Blocks have been discussed elsewhere.

Same for the button that freezes the canvas. One reason why there is no button in my definition.
Instead, I’m using a keyboard shortcut. It also keeps me from having to move my mouse.
More about that in the topic below:

Elefront Bake All issue - Plug Ins / Elefront - McNeel Forum

I know. I was part of that discussion.

I get that the “BakeName” trick can be interesting on pure parametric workflows, but everyone isn’t Frontinc.
We tend to have hybrid workflows where some blocks are generated by hand, and others through GH, but in the end, we need to manage properties for all of them.

This proves extremely challenging, having to use two mostly incompatible plugins.

1 Like

I’ve added another alternative solution in this discussion.