<?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 Re: GetInstanceGeometry vs GetSymbolGeometry in Revit API Forum</title>
    <link>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10819922#M21911</link>
    <description>&lt;P&gt;&lt;I&gt;I'm grateful to&lt;/I&gt;&amp;nbsp;you!&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Your explanations help a lot. It became much clearer now &lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Mon, 13 Dec 2021 16:16:26 GMT</pubDate>
    <dc:creator>pavelkosykh88</dc:creator>
    <dc:date>2021-12-13T16:16:26Z</dc:date>
    <item>
      <title>GetInstanceGeometry vs GetSymbolGeometry</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10816887#M21907</link>
      <description>&lt;P&gt;Hi, there!&lt;/P&gt;&lt;P&gt;I've got a question about the methods&amp;nbsp;GeometryInstance.GetInstanceGeometry() and&amp;nbsp;GeometryInstance.GetSymbolGeometry().&lt;/P&gt;&lt;P&gt;In my file I've got only one imported dwg with only one line inside it.&amp;nbsp;&lt;/P&gt;&lt;P&gt;There is a code below that i use to test:&lt;/P&gt;&lt;LI-CODE lang="general"&gt;var reference = _selection.PickObject(ObjectType.PointOnElement);
var element = _doc.GetElement(reference);
var options = new Options();
options.ComputeReferences = true;
options.View = _doc.ActiveView;
            
var geometryElement = element.get_Geometry(options);
var geometryInstance = geometryElement
                .FirstOrDefault(x =&amp;gt; x is GeometryInstance) as 
                 GeometryInstance;

var instanceGeometry = geometryInstance?.GetInstanceGeometry();
var instanceCurve=instanceGeometry?.FirstOrDefault(x =&amp;gt; x is Curve) as Curve;
var instanceReference = instanceCurve?.Reference;
var instanceRepresentation = instanceReference?.ConvertToStableRepresentation(_doc);
            
var symbolGeometry = geometryInstance?.GetSymbolGeometry();
var symbolCurve=symbolGeometry?.FirstOrDefault(x =&amp;gt; x is Curve) as Curve;
var symbolReference = symbolCurve?.Reference;
var symbolRepresentation = symbolReference?.ConvertToStableRepresentation(_doc);&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;After the execution I've received that:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;instanceRepresentation=&lt;/SPAN&gt;e558d96b&lt;SPAN&gt;-&lt;/SPAN&gt;a4b0&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;449d&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;a84e&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00d8&lt;/SPAN&gt;c2768a5c&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00000&lt;/SPAN&gt;&lt;SPAN&gt;a38&lt;/SPAN&gt;:&lt;SPAN&gt;2&lt;/SPAN&gt;:&lt;SPAN&gt;1&lt;/SPAN&gt;:LINEAR &lt;BR /&gt;&lt;SPAN&gt;symbolRepresentation&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;e558d96b&lt;SPAN&gt;-&lt;/SPAN&gt;a4b0&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;449d&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;a84e&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00d8&lt;/SPAN&gt;c2768a5c&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00000&lt;/SPAN&gt;&lt;SPAN&gt;c0f&lt;/SPAN&gt;:&lt;SPAN&gt;0&lt;/SPAN&gt;:&lt;SPAN&gt;INSTANCE&lt;/SPAN&gt;:e558d96b&lt;SPAN&gt;-&lt;/SPAN&gt;a4b0&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;449d&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;a84e&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00d8&lt;/SPAN&gt;c2768a5c&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00000&lt;/SPAN&gt;&lt;SPAN&gt;a38&lt;/SPAN&gt;:&lt;SPAN&gt;2&lt;/SPAN&gt;:&lt;SPAN&gt;1&lt;/SPAN&gt;:LINEAR&lt;/PRE&gt;&lt;P&gt;where&amp;nbsp;e558d96b&lt;SPAN&gt;-&lt;/SPAN&gt;a4b0&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;449d&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;a84e&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00d8&lt;/SPAN&gt;c2768a5c&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;00000&lt;/SPAN&gt;&lt;SPAN&gt;a38 - is uniqueId for CADLinkType&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;and&amp;nbsp;e558d96b-a4b0-449d-a84e-00d8c2768a5c-00000c0f -&amp;nbsp;is uniqueId for ImportInstance.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;For me, it seems like these two results were mixed up. Looks like "instanceRepresentation" refers to symbol geometry, while "symbolRepresentation" refers to instance geometry.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I will be&amp;nbsp;grateful for any help.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 11 Dec 2021 23:00:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10816887#M21907</guid>
      <dc:creator>pavelkosykh88</dc:creator>
      <dc:date>2021-12-11T23:00:18Z</dc:date>
    </item>
    <item>
      <title>Re: GetInstanceGeometry vs GetSymbolGeometry</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10818989#M21908</link>
      <description>&lt;P&gt;I could ask the development team for you, but I know from prior experience that they would ask 'what are you trying to achieve' before even thinking about answering. So,&amp;nbsp;what are you trying to achieve?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 13 Dec 2021 10:12:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10818989#M21908</guid>
      <dc:creator>jeremy_tammik</dc:creator>
      <dc:date>2021-12-13T10:12:07Z</dc:date>
    </item>
    <item>
      <title>Re: GetInstanceGeometry vs GetSymbolGeometry</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10819201#M21909</link>
      <description>&lt;P&gt;Seems logical in a way no? When you use symbol it give the full lineage of symbol and instance of that symbol. When you use the copy (with method noted below) it just gives the symbol it was copied from. There is no actual instance for it because that function just creates a copy at the time for you (is a helper method for specific purposes).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Beyond CADLinks you'll find that there are multiple versions of symbol geometries for a type i.e. there is often a symbol to represent each structural framing length (with such lengths being driven by instance variations not type variations). So equating symbol geometry to family symbols probably is confusing to start with. That is to say they all have different ids and at time of extraction the form of symbol geometry you get is going to be partly decided by the instance variations not just the type variations.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Extract RevitAPI.chm: GeometryInstance.GetInstanceGeometry&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="georgia,palatino" color="#800080"&gt;&lt;EM&gt;"...This method returns a copy of the Revit geometry. It is suitable for use in a tool which extracts geometry to another format or carries out a geometric analysis; however, because it returns a copy the references found in the geometry objects contained in this element are not suitable for creating new Revit elements referencing the original element (for example, dimensioning). Only the geometry returned by GetSymbolGeometry() with no transform can be used for that purpose."&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 13 Dec 2021 12:54:25 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10819201#M21909</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2021-12-13T12:54:25Z</dc:date>
    </item>
    <item>
      <title>Re: GetInstanceGeometry vs GetSymbolGeometry</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10819334#M21910</link>
      <description>&lt;P&gt;Here is a simple example demonstrated:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Two beams of same family type" style="width: 367px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1000722iB14212981522CFAD/image-size/large?v=v2&amp;amp;px=999" role="button" title="211213a.PNG" alt="Two beams of same family type" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Two beams of same family type&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="The short beam as id 427840" style="width: 802px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1000723iE7D5882DDD8B12B6/image-size/large?v=v2&amp;amp;px=999" role="button" title="211213b.PNG" alt="The short beam as id 427840" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;The short beam as id 427840&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="The long beam as id 427855" style="width: 802px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1000726iC870E1F46847F1A0/image-size/large?v=v2&amp;amp;px=999" role="button" title="211213c.PNG" alt="The long beam as id 427855" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;The long beam as id 427855&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="The FamilySymbol id 95037" style="width: 802px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1000727i08AEFAE0284A1E44/image-size/large?v=v2&amp;amp;px=999" role="button" title="211213d.PNG" alt="The FamilySymbol id 95037" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;The FamilySymbol id 95037&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;If you check the bounding boxes extents for the two geometry symbols you'll see they match the beam lengths.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This gets further complicated with cuts but it demonstrates that Revit is storing geometrical symbol variations differently to how we think of the type instance relationships based on type and instance parameters.&lt;/P&gt;</description>
      <pubDate>Mon, 13 Dec 2021 12:47:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10819334#M21910</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2021-12-13T12:47:45Z</dc:date>
    </item>
    <item>
      <title>Re: GetInstanceGeometry vs GetSymbolGeometry</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10819922#M21911</link>
      <description>&lt;P&gt;&lt;I&gt;I'm grateful to&lt;/I&gt;&amp;nbsp;you!&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Your explanations help a lot. It became much clearer now &lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 13 Dec 2021 16:16:26 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10819922#M21911</guid>
      <dc:creator>pavelkosykh88</dc:creator>
      <dc:date>2021-12-13T16:16:26Z</dc:date>
    </item>
    <item>
      <title>Re: GetInstanceGeometry vs GetSymbolGeometry</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10830537#M21912</link>
      <description>&lt;P&gt;Thank you very much for yet another very nice and helpful explanation! Preserved for posterity and future reference:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://thebuildingcoder.typepad.com/blog/2021/12/symbol-instance-material-data-journal-break.html#2" target="_blank"&gt;https://thebuildingcoder.typepad.com/blog/2021/12/symbol-instance-material-data-journal-break.html#2&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 18 Dec 2021 06:05:05 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/getinstancegeometry-vs-getsymbolgeometry/m-p/10830537#M21912</guid>
      <dc:creator>jeremy_tammik</dc:creator>
      <dc:date>2021-12-18T06:05:05Z</dc:date>
    </item>
  </channel>
</rss>

