<?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: Face Lower Left corner in Revit API Forum</title>
    <link>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10182308#M27226</link>
    <description>&lt;P&gt;Can't easily see what you are doing from that gif but I'm assuming face 0 isn't always the same face direction. Have you compared the normal vectors of each?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV class="saveHistory"&gt;&lt;DIV class="section"&gt;Face.getBoundingBox:&lt;/DIV&gt;&lt;DIV class="section"&gt;&lt;EM&gt;"A BoundingBoxUV with the extents of the parameterization of the face."&lt;/EM&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 24 Mar 2021 12:07:11 GMT</pubDate>
    <dc:creator>RPTHOMAS108</dc:creator>
    <dc:date>2021-03-24T12:07:11Z</dc:date>
    <item>
      <title>Face Lower Left corner</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10181969#M27225</link>
      <description>&lt;P&gt;Hi Guys,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It's me again &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt; wondering why I'm getting different result on getting face bounding box max/min as shown in the video.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Mech Tools-Inconsistent.gif" style="width: 999px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/897534iA1D392F3ED9AB1BF/image-size/large?v=v2&amp;amp;px=999" role="button" title="Mech Tools-Inconsistent.gif" alt="Mech Tools-Inconsistent.gif" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;PlanarFace face = solid.Faces.get_Item(0) as PlanarFace;
BoundingBoxUV bbUV = face.GetBoundingBox();

XYZ p3 = face.Evaluate(bbUV.Max);
FamilyInstance famInst = doc.Create.NewFamilyInstance(p3, fixture, Autodesk.Revit.DB.Structure.StructuralType.NonStructural);&lt;/LI-CODE&gt;&lt;P&gt;Thanks again.&lt;/P&gt;</description>
      <pubDate>Wed, 24 Mar 2021 09:38:50 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10181969#M27225</guid>
      <dc:creator>LandformX</dc:creator>
      <dc:date>2021-03-24T09:38:50Z</dc:date>
    </item>
    <item>
      <title>Re: Face Lower Left corner</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10182308#M27226</link>
      <description>&lt;P&gt;Can't easily see what you are doing from that gif but I'm assuming face 0 isn't always the same face direction. Have you compared the normal vectors of each?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV class="saveHistory"&gt;&lt;DIV class="section"&gt;Face.getBoundingBox:&lt;/DIV&gt;&lt;DIV class="section"&gt;&lt;EM&gt;"A BoundingBoxUV with the extents of the parameterization of the face."&lt;/EM&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 24 Mar 2021 12:07:11 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10182308#M27226</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2021-03-24T12:07:11Z</dc:date>
    </item>
    <item>
      <title>Re: Face Lower Left corner</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10182432#M27227</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1035859"&gt;@RPTHOMAS108&lt;/a&gt;&amp;nbsp; thank you again for your quick response, basically I just want to get lower left corner for each face, so I thought I'll start by getting bb min, I haven't compare their vectors yet (and not sure how) since they are all rectangular i just thought they should be returning at least same corner locations?&lt;/P&gt;</description>
      <pubDate>Wed, 24 Mar 2021 12:39:52 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10182432#M27227</guid>
      <dc:creator>LandformX</dc:creator>
      <dc:date>2021-03-24T12:39:52Z</dc:date>
    </item>
    <item>
      <title>Re: Face Lower Left corner</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10182443#M27228</link>
      <description>PS. I did face normal comparison and they are all the same</description>
      <pubDate>Wed, 24 Mar 2021 12:43:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10182443#M27228</guid>
      <dc:creator>LandformX</dc:creator>
      <dc:date>2021-03-24T12:43:04Z</dc:date>
    </item>
    <item>
      <title>Re: Face Lower Left corner</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10183277#M27229</link>
      <description>&lt;P&gt;Since you are dealing with a PlanarFace it has an X,Y and Z direction.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It will help your understanding to plot these and what that means for BoundingBoxUV coords plotted in that space. You can use Face.Evaluate to get XYZ for a given UV point on a face, whilst Face.ComputeDerivative will give you the direction vectors at a given point (for PlanarFace they don't change).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the below RGB represents X,Y,Z at face origin respectively. Green line drawing from min to max (after transforming into coordinate space of face).&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="210324b.PNG" style="width: 818px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/897768iF210E771D04BE25B/image-size/large?v=v2&amp;amp;px=999" role="button" title="210324b.PNG" alt="210324b.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ordinarily the UV points aren't as useful as say projecting an XYZ of a known location onto a face (Face.Project). If you are tiling the face etc. then UV may be useful but you have to consider direction and form of parameters may not be as you expect.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 24 Mar 2021 16:21:27 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10183277#M27229</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2021-03-24T16:21:27Z</dc:date>
    </item>
    <item>
      <title>Re: Face Lower Left corner</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10185414#M27230</link>
      <description>&lt;P&gt;Thanks&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1035859"&gt;@RPTHOMAS108&lt;/a&gt;&amp;nbsp;, very helpful, I found an answer from&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/824630"&gt;@jeremy_tammik&lt;/a&gt;&amp;nbsp;'s utility samples, again thank you for both of you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;if anyone will need the same i posted jeremy's code below. Cheers!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;// &amp;lt;summary&amp;gt;
    /// Return the bottom four XYZ corners of the given 
    /// bounding box in the XY plane at the given 
    /// Z elevation in the order lower left, lower 
    /// right, upper right, upper left:
    /// &amp;lt;/summary&amp;gt;
    public static XYZ[] GetBottomCorners(
      BoundingBoxXYZ b,
      double z )
    {
      return new XYZ[] {
        new XYZ( b.Min.X, b.Min.Y, z ),
        new XYZ( b.Max.X, b.Min.Y, z ),
        new XYZ( b.Max.X, b.Max.Y, z ),
        new XYZ( b.Min.X, b.Max.Y, z )
      };
    }

    /// &amp;lt;summary&amp;gt;
    /// Return the bottom four XYZ corners of the given 
    /// bounding box in the XY plane at the bb minimum 
    /// Z elevation in the order lower left, lower 
    /// right, upper right, upper left:
    /// &amp;lt;/summary&amp;gt;
    public static XYZ[] GetBottomCorners(
      BoundingBoxXYZ b )
    {
      return GetBottomCorners( b, b.Min.Z );
    }&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 25 Mar 2021 08:24:36 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/face-lower-left-corner/m-p/10185414#M27230</guid>
      <dc:creator>LandformX</dc:creator>
      <dc:date>2021-03-25T08:24:36Z</dc:date>
    </item>
  </channel>
</rss>

