<?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: Surprising results from Face.Intersect(face) method in Revit API Forum</title>
    <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/12486657#M49241</link>
    <description>&lt;P&gt;Hey &lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/413917"&gt;@jeremytammik&lt;/a&gt;&amp;nbsp;, This is actually very critical, I've also been trying to work through a work around to determine what faces intersect for an area calculation Add-in. I basically ended up having to do two separate approaches.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;GeometryElement wallGeo = wall.get_Geometry(options);&lt;BR /&gt;Solid wallSolid = wallGeo?.FirstOrDefault() as Solid;&lt;/P&gt;&lt;P&gt;if (wallSolid != null &amp;amp;&amp;amp; baseSolid != null)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ElementIntersectsSolidFilter solidFilter = new ElementIntersectsSolidFilter(baseSolid);&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; FilteredElementCollector intersectingElements = new FilteredElementCollector(_doc).WherePasses(solidFilter);&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; double highestIntersectionZ = 0; // Changed from double.MinValue&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;bool intersectionFound = false; // Flag to check if intersection was found&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;foreach (Element intersectingElement in intersectingElements)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (intersectingElement.Id == wall.Id)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; GeometryElement geoElement = intersectingElement.get_Geometry(options);&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; foreach (GeometryObject geoObject in geoElement)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Solid solid = geoObject as Solid;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (solid != null)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;foreach (Face face in solid.Faces)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;BoundingBoxUV bbox = face.GetBoundingBox();&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;var vertices = face.Triangulate().Vertices;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;double avgZ = vertices.Average(v =&amp;gt; v.Z);&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (avgZ &amp;gt; highestIntersectionZ)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;highestIntersectionZ = avgZ;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; intersectionFound = true; // Set flag true if intersection was found&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;if (!intersectionFound)&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;//&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;else&lt;BR /&gt;{&lt;BR /&gt;//Utilize Bound boxes to create solid objects and then determined if the solids were near each other using a&lt;BR /&gt;ProximityTolerance. But I am still have accuracy issues.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;}&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Basically I am attempting to determine what height a wall is above a specific floor or roof element to determine parapet area.&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 09 Jan 2024 18:49:02 GMT</pubDate>
    <dc:creator>MiguelVJC82W</dc:creator>
    <dc:date>2024-01-09T18:49:02Z</dc:date>
    <item>
      <title>Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8079881#M49223</link>
      <description>&lt;P&gt;This has been mentioned in &lt;A href="https://forums.autodesk.com/t5/revit-api-forum/get-conection-type-and-geometry-between-two-elements-from-the/m-p/6465671" target="_blank"&gt;this &lt;/A&gt;post from 2016 but maybe it's worth bringing up again as 2018 hasn't resolved the issue yet.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As far as I can tell, the&amp;nbsp;Face.Intersect(face) method always returns&amp;nbsp;&lt;SPAN&gt;FaceIntersectionFaceResult.Intersecting - or I am not implementing it correctly.&amp;nbsp;When I run the code below in a view with a single wall and single floor, each face to face test returns an intersection. Can someone please verify (maybe 2019)?&lt;/SPAN&gt;&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="intersects.PNG" style="width: 657px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/514221i945D4B46BDD98567/image-size/large?v=v2&amp;amp;px=999" role="button" title="intersects.PNG" alt="intersects.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)&lt;BR /&gt;{&lt;/P&gt;&lt;P&gt;var list = new FilteredElementCollector(commandData.Application.ActiveUIDocument.Document, commandData.View.Id).WhereElementIsNotElementType().Where(e =&amp;gt; e is Wall || e is Floor);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;foreach (var f1 in list.First().get_Geometry(new Options()).OfType&amp;lt;Solid&amp;gt;().First().Faces.OfType&amp;lt;Face&amp;gt;())&lt;BR /&gt;{&lt;BR /&gt;foreach (var f2 in list.Last().get_Geometry(new Options()).OfType&amp;lt;Solid&amp;gt;().First().Faces.OfType&amp;lt;Face&amp;gt;())&lt;BR /&gt;{&lt;BR /&gt;if (f1.Intersect(f2) == FaceIntersectionFaceResult.Intersecting)&lt;BR /&gt;{&lt;/P&gt;&lt;P&gt;if (System.Windows.Forms.MessageBox.Show("Intersects", "Continue", System.Windows.Forms.MessageBoxButtons.OKCancel, System.Windows.Forms.MessageBoxIcon.Exclamation) == System.Windows.Forms.DialogResult.Cancel) return Result.Succeeded;&lt;BR /&gt;}&lt;BR /&gt;}&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;return Result.Succeeded;&lt;BR /&gt;}&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jun 2018 11:06:54 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8079881#M49223</guid>
      <dc:creator>ciganek</dc:creator>
      <dc:date>2018-06-20T11:06:54Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8084190#M49224</link>
      <description>&lt;P&gt;Thank you for your report and reproducible case.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I see the same behaviour in Revit 2019 as well.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I added some code to The Building Coder samples to test and report in more depth:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://github.com/jeremytammik/the_building_coder_samples/blob/master/BuildingCoder/BuildingCoder/CmdIntersectJunctionBox.cs#L27-L116" target="_blank"&gt;https://github.com/jeremytammik/the_building_coder_samples/blob/master/BuildingCoder/BuildingCoder/CmdIntersectJunctionBox.cs#L27-L116&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I created the following disjunct floor and wall:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="floor_wall_disjunct.png" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/514857i00B37B1C0892DE07/image-size/medium?v=v2&amp;amp;px=400" role="button" title="floor_wall_disjunct.png" alt="floor_wall_disjunct.png" /&gt;&lt;/span&gt;My sample code reports:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Floor has 7 faces.&lt;/LI&gt;
&lt;LI&gt;Wall has 6 faces.&lt;/LI&gt;
&lt;LI&gt;38 face-face intersections.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So, in fact, not every face-to-face test reports an intersection, because 7*6 equals 42.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Only the vast majority do&amp;nbsp; &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I logged the issue &lt;U&gt;&lt;STRONG&gt;REVIT-133627&lt;/STRONG&gt;&lt;/U&gt; [Face.Intersect returns false positives] with our development team for this on your behalf as it requires further exploration and possibly a modification to our software. Please make a note of this number for future reference.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You are welcome to request an update on the status of this issue or to provide additional information on it at any time quoting this change request number.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This issue is important to me. What can I do to help?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This issue needs to be assessed by our engineering team and prioritised against all other outstanding change requests. Any information that you can provide to influence this assessment will help. Please provide the following where possible:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Impact on your application and/or your development.&lt;/LI&gt;
&lt;LI&gt;The number of users affected.&lt;/LI&gt;
&lt;LI&gt;The potential revenue impact to you.&lt;/LI&gt;
&lt;LI&gt;The potential revenue impact to Autodesk.&lt;/LI&gt;
&lt;LI&gt;Realistic timescale over which a fix would help you.&lt;/LI&gt;
&lt;LI&gt;In the case of a request for a new feature or a feature enhancement, please also provide detailed Use cases for the workflows that this change would address.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This information is extremely important. Our engineering team have limited resources, and so must focus their efforts on the highest impact items. We do understand that this will cause you delays and affect your development planning, and we appreciate your cooperation and patience.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Cheers,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jeremy&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 21 Jun 2018 23:03:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8084190#M49224</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2018-06-21T23:03:45Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8084849#M49225</link>
      <description>&lt;P&gt;Thanks Jeremy,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm using the Face.Intersect(curve) method because it seems to return&amp;nbsp;SetComparisonResult.Overlap as expected, naturally with much more processing as a face needs to be compared to each curve of the other face - and visa versa - to check for all possible intersects.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Peter&lt;/P&gt;</description>
      <pubDate>Fri, 22 Jun 2018 09:40:08 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8084849#M49225</guid>
      <dc:creator>ciganek</dc:creator>
      <dc:date>2018-06-22T09:40:08Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8091014#M49226</link>
      <description>&lt;P&gt;The development team examined the issue that I raised for this and&amp;nbsp;discovered it is a duplicate of an existing older issue, &lt;STRONG&gt;&lt;U&gt;REVIT-58034&lt;/U&gt;&lt;/STRONG&gt; [API Face.Intersect(Face) returns true even if two faces don't intersect with each other]. They therefore closed this issue again. They also add:&amp;nbsp;&lt;SPAN class="s1"&gt;How critical is this, really?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="s1"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Jun 2018 03:48:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8091014#M49226</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2018-06-26T03:48:02Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8091227#M49227</link>
      <description>&lt;P&gt;I'm not surprised that this has been reported before, I am surprised that it hasn't been resolved.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How critical is this, really? I suppose in the grand scheme of things, not all that critical. However, I do expect a product to function as advertised.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;They should just remove the method if they are not interested in fixing the problem.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Jun 2018 06:58:25 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8091227#M49227</guid>
      <dc:creator>ciganek</dc:creator>
      <dc:date>2018-06-26T06:58:25Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8091256#M49228</link>
      <description>&lt;P&gt;I fully agree with what you say and am passing it on to the development team for their consideration.&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;Cheers,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jeremy&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Jun 2018 07:09:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8091256#M49228</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2018-06-26T07:09:57Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8094641#M49229</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/2230826"&gt;@ciganek&lt;/a&gt;&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1103138"&gt;@Revitalizer&lt;/a&gt;&amp;nbsp;the development team replied:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;They are aware of this issue. This function does indeed not do what one expects. At most, it computes intersections between the underlying (unbounded) surfaces, not the (bounded) faces lying in the surfaces. As a first step, the documentation will be updated to reflect this fact. Then, we'll see whether resources can be found to fully implement the face intersection functionality,. or remove the incomplete functionality.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sorry for the confusion!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Cheers,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jeremy&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 27 Jun 2018 11:53:08 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8094641#M49229</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2018-06-27T11:53:08Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8094642#M49230</link>
      <description>&lt;P&gt;Hi Jeremy,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;an additional idea.&lt;/P&gt;&lt;P&gt;Could it be that, instead of the &lt;EM&gt;Face&lt;/EM&gt;, the related &lt;EM&gt;Surface&lt;/EM&gt; is compared, ignoring the borders?&lt;/P&gt;&lt;P&gt;If the method compares Planes instead of PlanarFaces, I would expect that &lt;EM&gt;they intersect all but parallel&lt;/EM&gt; &lt;EM&gt;ones&lt;/EM&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Rudi&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Edit: same idea at the same time &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 27 Jun 2018 12:11:39 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8094642#M49230</guid>
      <dc:creator>Revitalizer</dc:creator>
      <dc:date>2018-06-27T12:11:39Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8098898#M49231</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1103138"&gt;@Revitalizer&lt;/a&gt;I believe you are correct. Have previously plotted the intersections using the ByRef curve overload and found this to be the case.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://forums.autodesk.com/t5/revit-api-forum/face-class-intersect-method-problem/m-p/7460720/highlight/true#M25757" target="_blank"&gt;https://forums.autodesk.com/t5/revit-api-forum/face-class-intersect-method-problem/m-p/7460720/highlight/true#M25757&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In actual fact an API user may prefer to find this form of intersection rather than be told no intersection exists (due to the bounds of the face preventing it). Can always compare points on the original face to those on the curve intersect result to check if there is an actual intersection. However if no results were given then that would not be useful at all. Probably there should be a bound versus unbound option perhaps.&lt;/P&gt;</description>
      <pubDate>Thu, 28 Jun 2018 19:59:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8098898#M49231</guid>
      <dc:creator>RPTHOMAS108</dc:creator>
      <dc:date>2018-06-28T19:59:18Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8099840#M49232</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; how did I miss that post?...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The description in help is indeed misleading - as is the method name + result.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Maybe the appropriate place for dealing with face to face intersections would be a face overload for the&amp;nbsp;&amp;nbsp;BooleanOperationsUtils class?&lt;/P&gt;</description>
      <pubDate>Fri, 29 Jun 2018 07:38:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8099840#M49232</guid>
      <dc:creator>ciganek</dc:creator>
      <dc:date>2018-06-29T07:38:07Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8160245#M49233</link>
      <description>&lt;P&gt;I just want to thank you for the feedback on the problem with this method, if not, I will waste more time in looking out my code.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And I agree with you that if this method is flawed, it should be improved or cancelled. Otherwise, like me, before I saw your post, I always thought it was a problem with my own code.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best wishes&lt;/P&gt;&lt;P&gt;Danni&lt;/P&gt;</description>
      <pubDate>Fri, 27 Jul 2018 12:35:16 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8160245#M49233</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2018-07-27T12:35:16Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8715221#M49234</link>
      <description>Hi Jeremy, 

do we have an update on these intersect functions ? which one works ? 

Kind regards</description>
      <pubDate>Mon, 08 Apr 2019 16:37:52 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8715221#M49234</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-04-08T16:37:52Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8992586#M49235</link>
      <description>&lt;P&gt;I've just been forwarded to this thread as I had posted reporting problems with that function.&lt;BR /&gt;As some users posted above, it is disappointing that the revit documentation is very vague about the accuracy of the function:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;"Remarks&lt;/EM&gt;&lt;/P&gt;&lt;DIV class="section"&gt;&lt;EM&gt;This is not a general-purpose function: it only works properly for simple configurations. For other configurations, it may return an incorrect result."&lt;/EM&gt;&lt;/DIV&gt;&lt;DIV class="section"&gt;I don't think it works properly for simple configurations, it doesn't work properly at all as it returns false intersections in an unpredictable way...&lt;/DIV&gt;</description>
      <pubDate>Wed, 28 Aug 2019 12:28:08 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/8992586#M49235</guid>
      <dc:creator>pmcmm1</dc:creator>
      <dc:date>2019-08-28T12:28:08Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/9585123#M49236</link>
      <description>&lt;P&gt;Hi &lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/413917"&gt;@jeremytammik&lt;/a&gt;&amp;nbsp;, do we have updates on the solution of this bug?&lt;BR /&gt;&lt;BR /&gt;I tried today these functions and it seems to me that&lt;BR /&gt;Face.Intersect(Face) --&amp;gt; always False&lt;BR /&gt;Face.Intersect(Curve) --&amp;gt; always True&lt;BR /&gt;Curve.Intersect(Curve) --&amp;gt; this seems to work, but I need face intersections&lt;BR /&gt;BooleanOperationsUtils.ExecuteBooleanOperation(Solid, Solid, BooleanOperationsType.Intersect).Volume != 0 --&amp;gt; also works&lt;BR /&gt;&lt;BR /&gt;Angelo&lt;/P&gt;</description>
      <pubDate>Wed, 17 Jun 2020 14:11:54 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/9585123#M49236</guid>
      <dc:creator>avpBS7DE</dc:creator>
      <dc:date>2020-06-17T14:11:54Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953118#M49237</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/413917"&gt;@jeremytammik&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;After a week of trying and understanding what i'm doing wrong i find this post.&lt;BR /&gt;I'm making a script whereby i extraced the interior and exterior faces of walls and see if they intersect.&lt;BR /&gt;The goals is to find (seperataly modelled) walls wich would ressemble a compound (layered) wall.&lt;BR /&gt;&lt;BR /&gt;So logicaly i used the Face.Intersect(face) method.&lt;BR /&gt;And i'm getting the wrong results as discriped above.&lt;BR /&gt;&lt;BR /&gt;I therefore assume this issue is still ongoing?&lt;BR /&gt;A bit dissiapointed that more then 3 year have passed without a solution to this.&lt;BR /&gt;Or is there?&lt;BR /&gt;Is there more recent feedback from the developers team on this?&lt;BR /&gt;&lt;BR /&gt;in dynamo i am able to get te correct results by just retrieving the faces and using the geometry.DoesIntesect Node to get the correct intersections from it.&lt;BR /&gt;&lt;BR /&gt;If u want i can deliver my code and project for evaluation.&lt;BR /&gt;Altho it is writing in Cpython for use with pyrevit, it is still based on the same Api.&lt;BR /&gt;&lt;BR /&gt;kind regards,&lt;BR /&gt;Alexander&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 02:00:17 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953118#M49237</guid>
      <dc:creator>AlexanderVandenberghe_BB</dc:creator>
      <dc:date>2023-05-10T02:00:17Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953475#M49238</link>
      <description>&lt;P&gt;Having a quick look in the &lt;A href="https://www.revitapidocs.com/2023/91f650a2-bb95-650b-7c00-d431fa613753.htm" target="_blank" rel="noopener"&gt;documentation&lt;/A&gt;, I still see the ominous line: "&lt;SPAN&gt;This is not a general-purpose function: it only works properly for simple configurations".&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Most likely, they still didn't fix it.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 06:10:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953475#M49238</guid>
      <dc:creator>pmcmm1</dc:creator>
      <dc:date>2023-05-10T06:10:57Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953482#M49239</link>
      <description>&lt;P&gt;i'm working on a 'big' work around right now.&lt;BR /&gt;whereby i generate a uv-grid of the faces and then check via the Face.IsInside(uv) if walls are adjecnt to each other.&lt;BR /&gt;&lt;BR /&gt;Seems to be working out at first but now i get the same funky end results....&lt;BR /&gt;I'll post when i'm done :)... To Be Continued&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AlexanderVandenberghe_BB_0-1683699198481.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1212582i137E4FE30BC8A1C2/image-size/medium?v=v2&amp;amp;px=400" role="button" title="AlexanderVandenberghe_BB_0-1683699198481.png" alt="AlexanderVandenberghe_BB_0-1683699198481.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 06:13:52 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953482#M49239</guid>
      <dc:creator>AlexanderVandenberghe_BB</dc:creator>
      <dc:date>2023-05-10T06:13:52Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953506#M49240</link>
      <description>&lt;P&gt;I'm not sure if that solution will work, there is a high chance that the point grid will just go through the face and not fall on it.&amp;nbsp;What about converting the walls into solids and curves, and then use the &lt;A href="https://www.revitapidocs.com/2023/8e04f956-b262-7f3e-59cb-d2c02c2769d7.htm" target="_blank" rel="noopener"&gt;IntersectWithCurve&amp;nbsp;&lt;/A&gt;to get the result?&lt;/P&gt;&lt;P&gt;When I posted on this thread 4 years ago, I also developed a workaround, using other intersect functions. Unfortunately, I don't remember anymore if SolidIntersection is working correctly... At least there is no weird disclaimer on the docs.&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 06:29:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/11953506#M49240</guid>
      <dc:creator>pmcmm1</dc:creator>
      <dc:date>2023-05-10T06:29:04Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/12486657#M49241</link>
      <description>&lt;P&gt;Hey &lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/413917"&gt;@jeremytammik&lt;/a&gt;&amp;nbsp;, This is actually very critical, I've also been trying to work through a work around to determine what faces intersect for an area calculation Add-in. I basically ended up having to do two separate approaches.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;GeometryElement wallGeo = wall.get_Geometry(options);&lt;BR /&gt;Solid wallSolid = wallGeo?.FirstOrDefault() as Solid;&lt;/P&gt;&lt;P&gt;if (wallSolid != null &amp;amp;&amp;amp; baseSolid != null)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ElementIntersectsSolidFilter solidFilter = new ElementIntersectsSolidFilter(baseSolid);&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; FilteredElementCollector intersectingElements = new FilteredElementCollector(_doc).WherePasses(solidFilter);&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; double highestIntersectionZ = 0; // Changed from double.MinValue&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;bool intersectionFound = false; // Flag to check if intersection was found&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;foreach (Element intersectingElement in intersectingElements)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (intersectingElement.Id == wall.Id)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; GeometryElement geoElement = intersectingElement.get_Geometry(options);&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; foreach (GeometryObject geoObject in geoElement)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Solid solid = geoObject as Solid;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (solid != null)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;foreach (Face face in solid.Faces)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;BoundingBoxUV bbox = face.GetBoundingBox();&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;var vertices = face.Triangulate().Vertices;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;double avgZ = vertices.Average(v =&amp;gt; v.Z);&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (avgZ &amp;gt; highestIntersectionZ)&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;highestIntersectionZ = avgZ;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; intersectionFound = true; // Set flag true if intersection was found&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;if (!intersectionFound)&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;//&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;else&lt;BR /&gt;{&lt;BR /&gt;//Utilize Bound boxes to create solid objects and then determined if the solids were near each other using a&lt;BR /&gt;ProximityTolerance. But I am still have accuracy issues.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;}&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Basically I am attempting to determine what height a wall is above a specific floor or roof element to determine parapet area.&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 09 Jan 2024 18:49:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/12486657#M49241</guid>
      <dc:creator>MiguelVJC82W</dc:creator>
      <dc:date>2024-01-09T18:49:02Z</dc:date>
    </item>
    <item>
      <title>Re: Surprising results from Face.Intersect(face) method</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/12486678#M49242</link>
      <description>&lt;P&gt;If this is critical for you, we certainly want to support you in resolving it.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Your description does not sound problematic at all, through: b&lt;SPAN&gt;asically I am attempting to determine what height a wall is above a specific floor or roof element to determine parapet area.&amp;nbsp;&amp;nbsp;&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;Can you share an image demonstrating your objective?&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;I can think of several different ways to approach this&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;So what problem do you encounter?&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;What does it have to do with the various discussions above?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 09 Jan 2024 18:59:22 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/surprising-results-from-face-intersect-face-method/m-p/12486678#M49242</guid>
      <dc:creator>jeremy_tammik</dc:creator>
      <dc:date>2024-01-09T18:59:22Z</dc:date>
    </item>
  </channel>
</rss>

