<?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: Finding nearest level in Revit API Forum</title>
    <link>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/8688882#M61231</link>
    <description>&lt;P&gt;Thank you...so simple it is miraculous.&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 28 Mar 2019 00:51:19 GMT</pubDate>
    <dc:creator>joshua.lumley</dc:creator>
    <dc:date>2019-03-28T00:51:19Z</dc:date>
    <item>
      <title>Finding nearest level</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/6774732#M61228</link>
      <description>&lt;P&gt;Hello everybody!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am trying to find the nearest lower (and upper) level from a point.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have been able to fint the nearest element (eg. a floor) using the next code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;ReferenceIntersector refIntersector = new ReferenceIntersector(view3D);
ReferenceWithContext referenceWithContext = refIntersector.FindNearest(elemPoint, new XYZ(0,0,-1));
Reference reference = referenceWithContext.GetReference();
XYZ lowerLevel = reference.GlobalPoint;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It finds the nearest element, but, unortunately, id does not find the nearest level.&lt;/P&gt;&lt;P&gt;I have tried using also it:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;ElementClassFilter filter = new ElementClassFilter(typeof(Level));
ReferenceIntersector refIntersector = new ReferenceIntersector(filter, FindReferenceTarget.All,view3D);&lt;/PRE&gt;&lt;P&gt;but it does not work....&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;Any idea??&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks in advance!&lt;/P&gt;&lt;P&gt;Chema&lt;/P&gt;</description>
      <pubDate>Thu, 29 Dec 2016 18:05:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/6774732#M61228</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-29T18:05:02Z</dc:date>
    </item>
    <item>
      <title>Re: Finding nearest level</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/6775507#M61229</link>
      <description>&lt;P&gt;Dear Chema,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Try this one.&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;&lt;PRE&gt;      private Level getNearestBelowLevel(double _Zvaue)
        {
            return new FilteredElementCollector(doc).OfClass(typeof(Level)).Cast&amp;lt;Level&amp;gt;().Where(x =&amp;gt; x.Elevation &amp;lt; _Zvaue).OrderByDescending(x =&amp;gt; x.Elevation).FirstOrDefault();
        }
        private Level getNearestUpperLevel(double _Zvaue)
        {
            return new FilteredElementCollector(doc).OfClass(typeof(Level)).Cast&amp;lt;Level&amp;gt;().Where(x =&amp;gt; x.Elevation &amp;gt; _Zvaue).OrderBy(x =&amp;gt; x.Elevation).FirstOrDefault();
        }&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Note: In case of Shared co-ordinate Some time also use x.ProjectElevation instead of x.Elevation.&lt;/P&gt;</description>
      <pubDate>Fri, 30 Dec 2016 02:22:08 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/6775507#M61229</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-30T02:22:08Z</dc:date>
    </item>
    <item>
      <title>Re: Finding nearest level</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/6776328#M61230</link>
      <description>&lt;P&gt;Totally effective and much simpler!!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks So much!!!&lt;/P&gt;&lt;P&gt;Chema&lt;/P&gt;</description>
      <pubDate>Fri, 30 Dec 2016 18:13:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/6776328#M61230</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-30T18:13:18Z</dc:date>
    </item>
    <item>
      <title>Re: Finding nearest level</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/8688882#M61231</link>
      <description>&lt;P&gt;Thank you...so simple it is miraculous.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 28 Mar 2019 00:51:19 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/8688882#M61231</guid>
      <dc:creator>joshua.lumley</dc:creator>
      <dc:date>2019-03-28T00:51:19Z</dc:date>
    </item>
    <item>
      <title>Re: Finding nearest level</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/10415876#M61232</link>
      <description>&lt;P&gt;Is there an equivalent function to do this in python, where the input is the z-coordinate and the output is the nearest above level?&lt;/P&gt;</description>
      <pubDate>Wed, 23 Jun 2021 21:36:12 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/finding-nearest-level/m-p/10415876#M61232</guid>
      <dc:creator>yoniblum</dc:creator>
      <dc:date>2021-06-23T21:36:12Z</dc:date>
    </item>
  </channel>
</rss>

