<?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: How to calculate the column finish area of room in Revit API Forum</title>
    <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9579465#M33664</link>
    <description>&lt;P&gt;We are following same way to get the columns but from the edges we are not able to get the exact overlapping edges with room for the column inside the room.&lt;/P&gt;</description>
    <pubDate>Mon, 15 Jun 2020 05:39:44 GMT</pubDate>
    <dc:creator>Pravin_Lande</dc:creator>
    <dc:date>2020-06-15T05:39:44Z</dc:date>
    <item>
      <title>How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9576200#M33661</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We want to calculate the column finish area of columns of room if column is present half inside the room and half outside, we have to ignore the outside finish area and only want the area which comes inside the room bounding's. in Revit API.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Attaching the screenshot as well to see column case visually.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Pravin&lt;/P&gt;</description>
      <pubDate>Fri, 12 Jun 2020 11:02:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9576200#M33661</guid>
      <dc:creator>Pravin_Lande</dc:creator>
      <dc:date>2020-06-12T11:02:04Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9576226#M33662</link>
      <description>&lt;P&gt;1) Get column base curve.&lt;/P&gt;&lt;P&gt;2) Get the room bounding segments and their curves.&lt;/P&gt;&lt;P&gt;3) Get the intersections between column curves and the room curves.&lt;/P&gt;&lt;P&gt;4) Calculate circumference of the column curve lying in the room boundary.&lt;/P&gt;&lt;P&gt;5) Using room height calculate the area.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 12 Jun 2020 11:13:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9576226#M33662</guid>
      <dc:creator>lukaskohout</dc:creator>
      <dc:date>2020-06-12T11:13:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9578704#M33663</link>
      <description>&lt;P&gt;Might be slightly more straightforward in that the BoundarySegment class has an ElementID property that identifies the Element that generated the boundary segment.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If you review these in RevitLookup you get the segment length measured to the centre of the wall. This length however likely depends on how the GetBoundarySegments is called i.e.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Use 'SpatialElementBoundaryOptions.SpatialElementBoundaryLocation = Finish' instead of center, then you may get the curve length for each face which you can multiply with room height.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've not really experimented though all I can tell is the curve lengths go to the centre of the wall in the lookup tool (which is probably using default options).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 14 Jun 2020 10:38:51 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9578704#M33663</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2020-06-14T10:38:51Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9579465#M33664</link>
      <description>&lt;P&gt;We are following same way to get the columns but from the edges we are not able to get the exact overlapping edges with room for the column inside the room.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Jun 2020 05:39:44 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9579465#M33664</guid>
      <dc:creator>Pravin_Lande</dc:creator>
      <dc:date>2020-06-15T05:39:44Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9579490#M33665</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1035859"&gt;@RPTHOMAS108&lt;/a&gt;&amp;nbsp;solution looks much cleaner and simplier, you should give it a try. If you get the lines only to the centre of the wall, you can get the wall thickness and subtract one half of it from the line length.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Jun 2020 06:12:36 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9579490#M33665</guid>
      <dc:creator>lukaskohout</dc:creator>
      <dc:date>2020-06-15T06:12:36Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9587711#M33666</link>
      <description>&lt;P&gt;Hi..&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In our case we don't know exactly how much portion of the column is inside and how much portion is outside. also room is present in active document and column is present in linked document. kindly suggest how can we het the edges of column which comes inside the room.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thank you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Pravin&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jun 2020 15:34:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9587711#M33666</guid>
      <dc:creator>Pravin_Lande</dc:creator>
      <dc:date>2020-06-18T15:34:07Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9588617#M33667</link>
      <description>&lt;P&gt;Slightly more challenging but same principles as noted previously apply:&lt;/P&gt;&lt;P&gt;Summary of below:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Get solid from room (Room.ClosedShell)&lt;/LI&gt;&lt;LI&gt;Transform solid to coord space of link with columns (SolidUtils.CreateTransformed)&lt;/LI&gt;&lt;LI&gt;Find columns intersecting with transformed solid (ElementIntersectsSolidFilter)&lt;/LI&gt;&lt;LI&gt;Copy each matching column back to main doc, measure boundaries and rollback transaction ElementTransformUtils.CopyElements&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt; Private Function TObj75(ByVal commandData As Autodesk.Revit.UI.ExternalCommandData,
ByRef message As String, ByVal elements As Autodesk.Revit.DB.ElementSet) As Result

        If commandData.Application.ActiveUIDocument Is Nothing Then Return Result.Cancelled Else
        Dim UIDoc As UIDocument = commandData.Application.ActiveUIDocument
        Dim Doc As Document = UIDoc.Document

        Dim R As Reference = Nothing
        Try
            R = UIDoc.Selection.PickObject(Selection.ObjectType.Element, "Pick a room any room.")
        Catch ex As Exception
        End Try
        If R Is Nothing Then Return Result.Cancelled Else

        Dim Room As Room = TryCast(Doc.GetElement(R), Room)
        If Room Is Nothing Then Return Result.Cancelled Else

        Dim GeomEl As GeometryElement = Room.ClosedShell
        Dim S As Solid = GeomEl(0) 'Assume single solid for brevity

        Dim FEClnk As New FilteredElementCollector(Doc)
        Dim ECFlnk As New ElementClassFilter(GetType(RevitLinkInstance))
        Dim Lnk As List(Of RevitLinkInstance) = FEClnk.WherePasses(ECFlnk).ToElements.Cast(Of RevitLinkInstance).ToList
        Dim LinkDoc As Document = Lnk(0).GetLinkDocument() 'Assume single link containing columns for brevity

        Dim SolTransformed As Solid = SolidUtils.CreateTransformed(S, Lnk(0).GetTransform.Inverse)
        'The solid in the coord system of the link
        Dim ElintS As New ElementIntersectsSolidFilter(SolTransformed)
        Dim ECF As New ElementCategoryFilter(BuiltInCategory.OST_StructuralColumns)
        Dim LandF As New LogicalAndFilter(ElintS, ECF)
        Dim FEC As New FilteredElementCollector(LinkDoc)
        Dim Els As List(Of ElementId) = FEC.WherePasses(LandF).ToElementIds

        Using tx As New Transaction(Doc, "Copy")
            If tx.Start = TransactionStatus.Started Then

                Dim NewIDs As List(Of ElementId) = ElementTransformUtils.CopyElements(LinkDoc, Els, Doc, Lnk(0).GetTransform, Nothing)
                Dim Ops As New SpatialElementBoundaryOptions() With {.SpatialElementBoundaryLocation = SpatialElementBoundaryLocation.Finish}

                Dim BoundSegs As IList(Of IList(Of BoundarySegment)) = Room.GetBoundarySegments(Ops)
                For i = 0 To BoundSegs.Count - 1
                    Dim SegLst As IList(Of BoundarySegment) = BoundSegs(i)
                    Debug.WriteLine("List: " &amp;amp; CStr(i + 1)) 'List 0' just doesn't sound right

                    For ix = 0 To SegLst.Count - 1
                        Dim Seg As BoundarySegment = SegLst(ix)
                        If NewIDs.Contains(Seg.ElementId) = False Then Continue For Else

                        Debug.WriteLine(CStr(Seg.ElementId.IntegerValue) &amp;amp; ", " &amp;amp; (Seg.GetCurve.Length * 304.8).ToString("F1"))

                        'Tried below to see what .LinkedElementId represented (not apparent)
                        'Debug.WriteLine(CStr(Seg.LinkElementId.IntegerValue) &amp;amp; "," &amp;amp; Seg.GetCurve.Length &amp;amp; "FromLink")
                    Next
                Next

                tx.RollBack()
            End If
        End Using

    End Function&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Proof of concept:&lt;/P&gt;&lt;P&gt;List: 1&lt;BR /&gt;427532, 400.0&lt;BR /&gt;427532, 750.0&lt;BR /&gt;427532, 400.0&lt;BR /&gt;427536, 275.0&lt;BR /&gt;427536, 200.0&lt;BR /&gt;427534, 200.0&lt;BR /&gt;427534, 750.0&lt;BR /&gt;427534, 200.0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="200619a.png" style="width: 464px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/785445i24E699ECC8AE07DA/image-size/large?v=v2&amp;amp;px=999" role="button" title="200619a.png" alt="200619a.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jun 2020 23:51:21 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9588617#M33667</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2020-06-18T23:51:21Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9588854#M33668</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Dear Pravin,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Thank you for your query, and much greater thanks to Richard RPTHOMAS108 Thomas for this beautiful and robust solution.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Happily, it simultaneously answers a number of other recent issues discussed here in the forum which also involve intersections and room boundaries in linked documents, including your previous thread on how to find the rooms geometry adjacent to walls, where an analogous approach can be applied:&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;A href="https://forums.autodesk.com/t5/revit-api-forum/how-to-find-the-rooms-geometry-adjacent-to-walls-in-revit-api/m-p/9576146" target="_blank" rel="noopener"&gt;https://forums.autodesk.com/t5/revit-api-forum/how-to-find-the-rooms-geometry-adjacent-to-walls-in-revit-api/m-p/9576146&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I wish I could award ever so many more than just one like to you, Richard!&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Jeremy&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 19 Jun 2020 05:02:25 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9588854#M33668</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2020-06-19T05:02:25Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9589244#M33669</link>
      <description>&lt;P&gt;Jeremy thanks I appreciate your kind comments.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As users of Revit we had long applied this technique in the UI i.e. tab into a linked element, copy it to the clipboard and paste it to the same place within the host document. The ElementTransformUtils is definitely a powerful feature of the API which sometimes gets overlooked in terms of how it can be applied to solve problems.&lt;/P&gt;</description>
      <pubDate>Fri, 19 Jun 2020 10:05:56 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9589244#M33669</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2020-06-19T10:05:56Z</dc:date>
    </item>
    <item>
      <title>Re: How to calculate the column finish area of room</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9625789#M33670</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Dear Pravin and Richard,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I am so thrilled by this solution that I edited and shared it for posterity in The Building Coder:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;A href="https://thebuildingcoder.typepad.com/blog/2020/06/set-crop-to-section-box-linked-boundaries-and-intersections.html#3" target="_blank"&gt;https://thebuildingcoder.typepad.com/blog/2020/06/set-crop-to-section-box-linked-boundaries-and-intersections.html#3&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Pravin, w&lt;/SPAN&gt;&lt;SPAN style="font-family: inherit;"&gt;ould you like to let us know how this suggestion worked out for you?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Would you like to express any appreciation to Richard for this brilliant suggestion and all the in-depth experience&amp;nbsp; that he shared, both developing this solution manually in the end user interface and then translating that tricky approach into such a succinct API solution?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;I am not aware of anyone else who would have been capable and willing to document and share such an effective solution.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Jeremy&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 09 Jul 2020 09:25:11 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/how-to-calculate-the-column-finish-area-of-room/m-p/9625789#M33670</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2020-07-09T09:25:11Z</dc:date>
    </item>
  </channel>
</rss>

