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

Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

Adding Hard-Coded Properties to Custom Library Parts

tband
Contributor

Hello,

 

I would like to 'hardcode' custom property values within library objects (generated using the LPM), such that when an object is replaced with another, the property values are also replaced (currently they are retained). We are using the LPM to generate multiple housing types for use across a masterplan, and would like to schedule these types based on information such as type, size, bedrooms, tenure etc.  

 

I have been able to generate listing properties which appear in the objects' description area, but it does not look like these can be scehduled.

 

Has anyone found a solution to this issue?

 

Operating system used: Mac Apple Silicon 12.4 Monteray

10 REPLIES 10
Barry Kelly
Moderator

You are using LPM for an entire house, so the house is an object?

Have you considered Design Options?

 

Objects can not have properties until they are placed and you set a classification with its associated properties.

 

Listing is a very old system that does sort of still work, but you may have problems.

It has its own scheduling system (listing) and doesn't work with interactive schedules as you have found.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Lingwisyer
Guru

If you are using Objects as a way to reduce file size, have you tried using Modules to see how they compare? Will not be as small, but if you use modules, you would still be able to schedule your zones and such to pull the info you are wanting.

 

 

Ling.

AC22-23 AUS 7000Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win10 | R5 2600 | 16GB | GTX1660
tband
Contributor

Thanks both - a bit more information below.

 

We are using the LPM to generate 2D and 3D representations of various house types, for deployment throughout a large-scale masterplan (1000+ homes). Properties are then assigned to each object for interactive scheduling (e.g. size, tenure, height, parking). Using objects enables us to rapidly switch between house-types, but the previous classification and properties are retained. 

 

We are looking for a way to 'bake' these properties into the objects so they can be placed and scheduled.

 

Screenshot 2024-06-06 at 09.25.28.png

As I mentioned, objects can't have properties until you have placed them.

You could place exactly the same object and by changing its classification, you could have a completely different set of properties available.

The properties are linked to the classification and the classification you decide upon as you are placing the object.

And as you have discovered, swapping the object does not alter the associated properties (or classification).

 

I am pretty sure LPM does not allow you to create your own object parameters.

Otherwise you could use those.

You can only create your own parameters by scripting the GDL objects.

Maybe you might be able to edit the LPM objects after you create them and add your own parameters?

I am not sure as I don't use LPM.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

I concur with Lingwisyer's recommendation of using modules.  We use modules extensively for single family house types, townhomes and apartment units. We even utilize nested modules for repetitive components, such as kitchens and bathrooms.  You can even create multi-story modules if needed.

 

One coordination item to be aware of is dealing with sloping sites and story levels.  One workaround we sometimes use it to convert the module(s) into one mega-morph. While the classification properties would need to be "reassigned" to the morph, it will behave as a singular, intelligent object.

 

Just a few thoughts...

 

Joe A.

ArchiCAD since 8.0

Lingwisyer
Guru

Given the use is for masterplanning I suspect the Object pathway is the correct one as a few hundred housing modules is already pretty heavy, let alone over 1000... Given materials carry over to objects, could you cheese it and have a unique material found somewhere in each different housing type? You could then use that material to automatically assign other details via expression based properties? Not sure if this is actually possible since I have not really played around with these...

 

 

Ling.

AC22-23 AUS 7000Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win10 | R5 2600 | 16GB | GTX1660

This was our understanding - using Objects results in a much lighter model given the simplicity of the representation, whilst giving us finer control over MVO Detail Levels in plan and 3D. 

 

Good idea on assigning properties by embedding Building Materials within the Object. Unfortunately it does not look these can be read by the Expression Editor - perhaps due to the fact multiple materials are assigned? I tested the Expression on a regular slab and it worked great...

 

tband_2-1717947650262.png

 

 

 

Lingwisyer
Guru

Objects store information in a different way to your standard modelling elements which is probably why your current expression does not pick them up. Can you target an objects parameter in an expression?

AC22-23 AUS 7000Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win10 | R5 2600 | 16GB | GTX1660

@Lingwisyer wrote:

 Can you target an objects parameter in an expression?


No, expressions can not access object parameters.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

Setup info provided by author