We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

More parameters for custom components

s_p_b
Booster

Having the option to use custom components such as door panels, knobs, curtain wall panels, window sashes, etc is quite useful and a great way to customize a library part. This feature would be even more useful if the GS library objects were designed to pass more parameters to the custom components.

 

If you look through the code of say Base Cabinet Block 27, you can trace the long chain of macro calls that eventually arrive at a custom panel:

Base Cabinet Block 27 > KitchenGeneralMacro > KitchenCabinetMacro > KitchenPanelTypeMacro > FurniturePanelMacro > Object_Panel_Collection

in particular, this is how FurniturePanelMacro calls a custom panel collection item:

! ==============================================================================
"CustomPanel":
! ------------------------------------------------------------------------------
    call "Object_Panel_Collection" parameters A = _panelWidth, B = _panelHeight, ZZYZX = _panelThickness, gs_ptype = _doorCustomPanelName
return

as you see, the only parameters that "Object_Panel_Collection" receives are A, B, ZZYZX, and the panel's name. And Object_Panel_Collection, in turn, only passes A, B, and ZZYZX to the custom panel.

If the libraries were designed to send, in addition, a few more of the parameters which FurniturePanelMacro itself recieves, the custom components could be much more flexible. One wouldn't be stuck with the surfaces used when defining a custom panel or door knob, for example - you could assign one using the normal UI for a cabinet and see it on your custom panel just by adding the line "MATERIAL gs_pmaterial" to your panel's 3D script. Here's what it could look like:

s_p_b_0-1727057260108.png

 

Since macros can return parameters, there's probably a mechanism where they could inform the caller which parameters are being used, and hide the ones which aren't implemented.

 

You could, of course, make a custom version of these macros, but the architecture of the GS library objects commits you to replacing the entire stack of macros, all the way to the top level. It's a pyramid of hard dependencies. And, any customization work is possibly made obsolete at the next version of the AC library. If Graphisoft can parameterize the custom components as much as possible, it offers at least a more practical 'shortcut' around the mass of code that these libraries are calling.

 

Status
Open

with 7/200 Votes 28.571428571429%

Wish details