<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Extracting Building Material Properties with a GDL in GDL</title>
    <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/367354#M602</link>
    <description>&lt;P&gt;Hi Guys,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is it possible to extract Properties from Building Materials?&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Jeroen_0-1673603286762.png" style="width: 721px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/33338iBA5890D203EF4D53/image-dimensions/721x507?v=v2" width="721" height="507" role="button" title="Jeroen_0-1673603286762.png" alt="Jeroen_0-1673603286762.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I want to use this in a Label and process the data further as part of my Temperature Label:&lt;BR /&gt;&lt;A href="https://www.linkedin.com/posts/debruinbimproductspecialist_archicad-activity-7016077546198818816-0KzY" target="_blank" rel="noopener"&gt;https://www.linkedin.com/posts/debruinbimproductspecialist_archicad-activity-7016077546198818816-0KzY&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;With kind regards,&lt;BR /&gt;Jeroen de Bruin&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 16 Apr 2024 16:17:10 GMT</pubDate>
    <dc:creator>Jeroen</dc:creator>
    <dc:date>2024-04-16T16:17:10Z</dc:date>
    <item>
      <title>Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/367354#M602</link>
      <description>&lt;P&gt;Hi Guys,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is it possible to extract Properties from Building Materials?&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Jeroen_0-1673603286762.png" style="width: 721px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/33338iBA5890D203EF4D53/image-dimensions/721x507?v=v2" width="721" height="507" role="button" title="Jeroen_0-1673603286762.png" alt="Jeroen_0-1673603286762.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I want to use this in a Label and process the data further as part of my Temperature Label:&lt;BR /&gt;&lt;A href="https://www.linkedin.com/posts/debruinbimproductspecialist_archicad-activity-7016077546198818816-0KzY" target="_blank" rel="noopener"&gt;https://www.linkedin.com/posts/debruinbimproductspecialist_archicad-activity-7016077546198818816-0KzY&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;With kind regards,&lt;BR /&gt;Jeroen de Bruin&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 16 Apr 2024 16:17:10 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/367354#M602</guid>
      <dc:creator>Jeroen</dc:creator>
      <dc:date>2024-04-16T16:17:10Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/367613#M603</link>
      <description>&lt;P&gt;&lt;A href="https://gdl.Graphisoft.com/reference-guide/request-options" target="_self"&gt;try BUILDING_MATERIAL_INFO&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Jan 2023 08:52:22 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/367613#M603</guid>
      <dc:creator>A_ Smith</dc:creator>
      <dc:date>2023-01-16T08:52:22Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/367615#M604</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BUILDING_MATERIAL_INFO is only for (old) physical properties.&lt;/P&gt;
&lt;P&gt;Other properties can be read with &lt;A href="https://gdl.Graphisoft.com/reference-guide/request-options#COMPONENT_PROPERTY_VALUES_OF_PARENT_request" target="_blank" rel="noopener"&gt;COMPONENT_PROPERTY_VALUES_OF_PARENT&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;The code needs to know the IDs of the requested properties, currently the only way is that the user must select them on the UI. You can show a list on the UI using&amp;nbsp; &lt;A href="https://gdl.Graphisoft.com/reference-guide/request-options#COMPONENT_PROPERTY_TREE_OF_PARENT_request" target="_blank" rel="noopener"&gt;COMPONENT_PROPERTY_TREE_OF_PARENT&lt;/A&gt;. You also need to get the list of building materials in the labelled object with &lt;A href="https://gdl.Graphisoft.com/reference-guide/request-options#COMPONENT_IDS_OF_PARENT_request" target="_blank" rel="noopener"&gt;COMPONENT_IDS_OF_PARENT&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;For an example see Archicad Library's &lt;EM&gt;Component Classification and Properties Label.&lt;/EM&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Jan 2023 09:24:58 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/367615#M604</guid>
      <dc:creator>Peter Baksa</dc:creator>
      <dc:date>2023-01-16T09:24:58Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/368531#M605</link>
      <description>&lt;P&gt;Hi Peter,&amp;nbsp;&lt;BR /&gt;Thanks. I looked into this Component Classification and Properties Label, but that is next level GDL-stuff. Could you help me out a bit?&lt;BR /&gt;For Instance, I would like to get the number out of the Building Material Property 'Vapour Pressure'. How would you build that?&lt;BR /&gt;&lt;BR /&gt;thanks in advance!&lt;BR /&gt;Jeroen&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 23 Jan 2023 10:39:23 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/368531#M605</guid>
      <dc:creator>Jeroen</dc:creator>
      <dc:date>2023-01-23T10:39:23Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/369108#M606</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;GDL doesn't know properties by name, so the user has to select it from all of the available properties. The user selection can then be stored in a string parameter, the value will be a technical GUID.
&lt;OL&gt;
&lt;LI&gt;Get the list with "Component_Property_Tree_Of_Parent"&lt;/LI&gt;
&lt;LI&gt;Get the name of the property GUID stored in the parameter using &lt;SPAN&gt;"Property_Name"&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;Show it on the UI using UI_CUSTOM_POPUP_INFIELD&lt;/LI&gt;
&lt;/OL&gt;
&lt;/LI&gt;
&lt;LI&gt;Get the value of the selected property for each component. AC knows which building material is used for which component. Note: components include all parts of the profile for profiled walls, I don't see any possibility to get the information only for cut parts.
&lt;OL&gt;
&lt;LI&gt;Get the list of components with "Component_IDs_Of_Parent"&lt;/LI&gt;
&lt;LI&gt;Get the property values for each component in a loop using &lt;SPAN&gt;"Component_Property_Values_Of_Parent"&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;Check the returned &lt;/SPAN&gt;propertyValues[].value_status&lt;SPAN&gt; and &lt;/SPAN&gt;propertyValues[].type&lt;SPAN&gt; to decide how to handle &lt;/SPAN&gt;propertyValues[].value[]&lt;/LI&gt;
&lt;/OL&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&lt;SPAN&gt;With a parameter called "prop":&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;UI:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;DICT propFilter, propTree
propFilter.propertyType = "ACPROPERTY"
n = REQUEST ("Component_Property_Tree_Of_Parent", propFilter, propTree)

if n &amp;gt; 0 then 
	_propertyName = ""
	n = REQUEST ("Property_Name", prop, _, _, _propertyName)
	ui_custom_popup_infield "prop", 0, 0, 300, 19,
		1, propTree.treeDepth, 1, _propertyName,
		propTree.propertyTree									
endif

ui_outfield prop, 0, 20, 300, 20
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2D:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;dict collectComponents
	collectComponents.collectMode = 1
dict outputCompIds
n = REQUEST ("Component_IDs_Of_Parent", collectComponents, outputCompIds)
if n &amp;gt; 0 then
	for i = 1 to vardim1(outputCompIds.componentIds)
		dict compPropInput, compPropVals
		compPropInput.componentId.id = outputCompIds.componentIds[i].id
		compPropInput.propertyIds[1].id = prop
		n = REQUEST ( "Component_Property_Values_Of_Parent", compPropInput, compPropVals)
		if n &amp;gt; 0 &amp;amp; compPropVals.propertyValues[1].value_status = 1 then
			text2 0, i, compPropVals.propertyValues[1].value[1]
		else
			text2 0, i, "no value"
		endif
	next i
endif&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 30 Jan 2023 09:49:49 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/369108#M606</guid>
      <dc:creator>Peter Baksa</dc:creator>
      <dc:date>2023-01-30T09:49:49Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/380506#M607</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;I have a question about the Temperature Label: is the position of the object automatic or do you have to place it by hand?&lt;/P&gt;
&lt;P&gt;I was wondering about the ability of a GDL label to find the geometry of a wall and position itself in relation to it.&lt;/P&gt;</description>
      <pubDate>Tue, 16 May 2023 07:33:48 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/380506#M607</guid>
      <dc:creator>Mathias Jonathan</dc:creator>
      <dc:date>2023-05-16T07:33:48Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/381114#M608</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;the wall reference line is available as &lt;A href="https://gdl.graphisoft.com/reference-guide/label-parameters" target="_blank" rel="noopener"&gt;&lt;SPAN&gt;LABEL_ASSOC_ELEM_GEOMETRY&lt;/SPAN&gt;&lt;/A&gt; .&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;A label can draw at given coordinates if the pointer is turned off, otherwise the drawing will be moved to the end of the pointer.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Use this code to transform from label coordinate system to project coordinate system:&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;! ------------------------------------------------------------------------------
! Transform from label local coordinate system to plan orientation and origin
! ------------------------------------------------------------------------------
rotBy = -LABEL_ROTANGLE
_unused = REQUEST ("View_Rotangle", "", angleViewRot)		

corr = 0
if AC_bLabelAlwaysReadable &amp;amp; (AC_LabelOrientation = 1 | AC_LabelOrientation = 2 | AC_LabelOrientation = 5) then
	summarot = (LABEL_ROTANGLE + angleViewRot) % 360
	if summarot &amp;gt; 90 &amp;amp; summarot &amp;lt;= 270 then corr = 180
endif

rot2 rotBy + corr
add2 -LABEL_POSITION [1][1], -LABEL_POSITION [1][2]&lt;/LI-CODE&gt;</description>
      <pubDate>Mon, 22 May 2023 12:29:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/381114#M608</guid>
      <dc:creator>Peter Baksa</dc:creator>
      <dc:date>2023-05-22T12:29:00Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/598909#M6507</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&amp;nbsp;&lt;a href="https://community.graphisoft.com/t5/user/viewprofilepage/user-id/14532"&gt;@Peter Baksa&lt;/a&gt;. Your script&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;dict collectComponents
	collectComponents.collectMode = 1
dict outputCompIds
n = REQUEST ("Component_IDs_Of_Parent", collectComponents, outputCompIds)
if n &amp;gt; 0 then
	for i = 1 to vardim1(outputCompIds.componentIds)
		dict compPropInput, compPropVals
		compPropInput.componentId.id = outputCompIds.componentIds[i].id ! THIS ARRAY ORDER IS DIFFERENT FROM Profile_component_info REQUEST RESULT.
		compPropInput.propertyIds[1].id = prop
		n = REQUEST ( "Component_Property_Values_Of_Parent", compPropInput, compPropVals)
		if n &amp;gt; 0 &amp;amp; compPropVals.propertyValues[1].value_status = 1 then
			text2 0, i, compPropVals.propertyValues[1].value[1]
		else
			text2 0, i, "no value"
		endif
	next i
endif&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;How to make UI where user can choose&amp;nbsp; component&amp;nbsp; of which some properties will be displllayed.&lt;/P&gt;&lt;P&gt;for complex structure it works with&amp;nbsp;WALL_SKINS_BMAT_NAMES[i][1]&lt;/P&gt;&lt;P&gt;I mean order of collected bmats in&amp;nbsp;compPropInput.propertyIds is the same like in&amp;nbsp;WALL_SKINS_BMAT_NAMES[i][1]&lt;/P&gt;&lt;P&gt;but for Complex profile when request (Profile_component_info)&amp;nbsp; order of collected bmats is based on bmat index number so its different.&lt;/P&gt;&lt;P&gt;Hence its impossible to use it in ie ui_radiobutton or option value list.&lt;BR /&gt;Is that clear?&amp;nbsp; I attached Label object based on Your code. Hope You can help me. I got stuck with a job &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 11 Apr 2024 18:54:15 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/598909#M6507</guid>
      <dc:creator>greg_lupo</dc:creator>
      <dc:date>2024-04-11T18:54:15Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting Building Material Properties with a GDL</title>
      <link>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/681195#M8074</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am creating a GDL object in Archicad 28, and its parts consist of several building materials.&lt;BR /&gt;Is it possible to retrieve the properties of those building materials and use them as parameters in GDL?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For example:&lt;BR /&gt;My object consists of three parts, each made of a different building material.&lt;BR /&gt;In the Parameters, I have &lt;FONT face="courier new,courier"&gt;building_material_1&lt;/FONT&gt;, &lt;FONT face="courier new,courier"&gt;building_material_2&lt;/FONT&gt;, and &lt;FONT face="courier new,courier"&gt;building_material_3&lt;/FONT&gt;.&lt;BR /&gt;In GDL, I would like to calculate the total weight of my object — let’s call the parameter &lt;FONT face="courier new,courier"&gt;total_weight&lt;/FONT&gt;.&lt;/P&gt;&lt;P&gt;I have created additional parameters: &lt;FONT face="courier new,courier"&gt;density_material_1&lt;/FONT&gt;, &lt;FONT face="courier new,courier"&gt;density_material_2&lt;/FONT&gt;, and &lt;FONT face="courier new,courier"&gt;density_material_3&lt;/FONT&gt;.&lt;BR /&gt;In the end, I will calculate:&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;total_weight = (volume_1 * density_material_1) + (volume_2 * density_material_2) + ...&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;In the Building Material attributes, I can set the density of each material.&lt;BR /&gt;Is it possible to retrieve the density automatically from the building material properties, so that I don’t have to fill them in manually in the parameters?&lt;/P&gt;&lt;P&gt;I am not familiar with the “REQUEST” options at all. Is this something that could be used for this purpose, or is there any other way to get this information from the building materials — or is it simply not possible?&lt;BR /&gt;(Honestly, I find the GDL Reference Guide rather confusing. I need to see specific examples to really understand how things work.)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you!&lt;/P&gt;</description>
      <pubDate>Wed, 22 Oct 2025 22:19:56 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/Extracting-Building-Material-Properties-with-a-GDL/m-p/681195#M8074</guid>
      <dc:creator>Martin Maliska</dc:creator>
      <dc:date>2025-10-22T22:19:56Z</dc:date>
    </item>
  </channel>
</rss>

