<?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: Simple Code to Insert Revit Pipe/Duct Fittings and Accessory's at the End of Pipes in Revit API Forum</title>
    <link>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11400000#M17016</link>
    <description>&lt;P&gt;Thanks Jeremy ,&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was going to start off with the newFamilyInstance, but I think the PostCommands will be easier to get started with and may prove to be a simpler solution, but won't it just place any pipe fitting instead of the default elbow/union/tee in my routing preferences for the pipe type I am attaching to?&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sun, 04 Sep 2022 11:53:43 GMT</pubDate>
    <dc:creator>Chris-VC_Studio</dc:creator>
    <dc:date>2022-09-04T11:53:43Z</dc:date>
    <item>
      <title>Simple Code to Insert Revit Pipe/Duct Fittings and Accessory's at the End of Pipes</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11399367#M17014</link>
      <description>&lt;P&gt;Hello API community, I am a total noob and still learning to code, and I have some big ideas for Plugins but want to start simple.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;My first C# plugin was how to place a vertical piece of pipe, something I've been wanting to do for ten years now and just accomplished it. &lt;U&gt;Next, I'd like to have a button on my tool panel that will just place a simple union as specified from my routing preference at the end of a pipe or fitting to act as a mechanical coupling.&lt;/U&gt; After that, I would like to have another button for adding elbows and pipe accessories (like Valves and such) which should be very similar to the union thing, then ramp up to hangers and my Flow Arrows. So if someone can help get me started in this community and steer me in the right direction or post some simple code for adding a pipe fitting to the end of a pipe and not reducing the pipe length, it would be greatly appreciated. And please, for the love of God, don't steer to Jermey's rolling offset, there is a lot of information within it, but I would like to keep things super simple for now.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you in advance for your support,&lt;BR /&gt;And like I learned in the Army, "Slow is smooth, and smooth is fast."&lt;/P&gt;</description>
      <pubDate>Sat, 03 Sep 2022 16:52:09 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11399367#M17014</guid>
      <dc:creator>Chris-VC_Studio</dc:creator>
      <dc:date>2022-09-03T16:52:09Z</dc:date>
    </item>
    <item>
      <title>Re: Simple Code to Insert Revit Pipe/Duct Fittings and Accessory's at the End of Pipes</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11399853#M17015</link>
      <description>&lt;P&gt;Welcome to the Revit API and congratulations on successfully completing your first add-in. That sounds great, and I love your approach and philosophy! Absolutely perfect, I think. I also like your army proverb. My favourite is &lt;A href="https://en.wikipedia.org/wiki/KISS_principle" target="_blank"&gt;KISS&lt;/A&gt;, which also originated there.&amp;nbsp;Afaik, there are two possible approaches to take: either make use of a Revit built-in command functionality by using the &lt;U&gt;PostCommand&lt;/U&gt; API to launch an appropriate built-in command, or place the fitting programmatically yourself using an appropriate overload of &lt;U&gt;NewFamilyInstance&lt;/U&gt;. PostCommand may be the simpler way to go if the existing Revit functionality happens to do exactly what you need right out of the box:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://thebuildingcoder.typepad.com/blog/about-the-author.html#5.3" target="_blank"&gt;https://thebuildingcoder.typepad.com/blog/about-the-author.html#5.3&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 04 Sep 2022 07:25:55 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11399853#M17015</guid>
      <dc:creator>jeremy_tammik</dc:creator>
      <dc:date>2022-09-04T07:25:55Z</dc:date>
    </item>
    <item>
      <title>Re: Simple Code to Insert Revit Pipe/Duct Fittings and Accessory's at the End of Pipes</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11400000#M17016</link>
      <description>&lt;P&gt;Thanks Jeremy ,&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was going to start off with the newFamilyInstance, but I think the PostCommands will be easier to get started with and may prove to be a simpler solution, but won't it just place any pipe fitting instead of the default elbow/union/tee in my routing preferences for the pipe type I am attaching to?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 04 Sep 2022 11:53:43 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11400000#M17016</guid>
      <dc:creator>Chris-VC_Studio</dc:creator>
      <dc:date>2022-09-04T11:53:43Z</dc:date>
    </item>
    <item>
      <title>Re: Simple Code to Insert Revit Pipe/Duct Fittings and Accessory's at the End of Pipes</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11400055#M17017</link>
      <description>&lt;P&gt;It will behave exactly the same as whatever built-in Revit command you would launch manually through the end user interface. So, you can test it upfront. What command would you use? Does it adapt to your routing preferences in the desired manner? If not, can you set up your routing preferences to achieve what you need? If not, PostCommand will not work. If it does work, you can analyse the journal file to find the internal id of the command you used.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 04 Sep 2022 12:57:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11400055#M17017</guid>
      <dc:creator>jeremy_tammik</dc:creator>
      <dc:date>2022-09-04T12:57:57Z</dc:date>
    </item>
    <item>
      <title>Re: Simple Code to Insert Revit Pipe/Duct Fittings and Accessory's at the End of Pipes</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11405857#M17018</link>
      <description>&lt;P&gt;Thanks again, Jeremy; I tried the PostCommand but discovered it was no different than just hitting the pipe fitting button on the Ribbon and having to sort thru ever pipe fitting in the Project. Not sure I want to continue down this path, so I am shifting back to the newFamilyInstance. So far, I have successfully made a specified Pipe Fitting (union) appear in the middle of the screen at XYZ 0,0,0. Next, I am looking into pipe or pipe fitting selection and acquiring the closest connection point. Then, I plan to try to find a way select the default fitting type by having it selected thru the routing preferences be it an Elbow, Union, or Tee button on my ribbon panel.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Below is the code I have so far, I think I am about half way there, so if anyone from the community wants to follow my progress and/or contribute to it would be greatly appreciated. &lt;STRONG&gt;I find there is a lack of easy MEP code examples to follow for baby steps out there when compared to the how create walls and architectural objects out there.&lt;/STRONG&gt; I know principles are roughly the same but MEP objects seem to require additional parameters on the due to them being part of a connect system and all. I will try to post regular updates and try keep this tread alive long as I can.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; Autodesk.Revit.ApplicationServices;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; Autodesk.Revit.Attributes;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; Autodesk.Revit.DB;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; Autodesk.Revit.DB.Plumbing;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; Autodesk.Revit.UI;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; Autodesk.Revit.UI.Selection;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; System;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; System.Collections.Generic;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; System.Linq;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;namespace&lt;/SPAN&gt; PipeTools&lt;/P&gt;&lt;P class=""&gt;{&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;[TransactionAttribute(TransactionMode.Manual)]&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;class&lt;/SPAN&gt; &lt;SPAN class=""&gt;PlaceUnion&lt;/SPAN&gt; : IExternalCommand&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;{&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;Result IExternalCommand.Execute(ExternalCommandData revit, &lt;SPAN class=""&gt;ref&lt;/SPAN&gt; &lt;SPAN class=""&gt;string&lt;/SPAN&gt; message, ElementSet elements)&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;{&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;UIApplication uiapp = commandData.Application;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;UIDocument uidoc = uiapp.ActiveUIDocument;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;Document doc = uidoc.Document;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;/&lt;STRONG&gt;/ Need to add code to select the pipe, pipe fitting, or mech equipment closest pipe connection point&lt;SPAN class=""&gt;&amp;nbsp;for our pipe fitting to attach to&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;STRONG&gt;//Need to change the get family Symbol code below to select union by routing preference default union?&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;FamilySymbol symbol = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; FilteredElementCollector(doc)&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;.OfClass(&lt;SPAN class=""&gt;typeof&lt;/SPAN&gt;(FamilySymbol))&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;.OfCategory(BuiltInCategory.OST_PipeFitting)&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;.Cast&amp;lt;FamilySymbol&amp;gt;()&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;.Where&amp;lt;FamilySymbol&amp;gt;(e =&amp;gt; e.Family.Name.Contains(&lt;SPAN class=""&gt;"Coupling - Generic"&lt;/SPAN&gt;))&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;.FirstOrDefault&amp;lt;FamilySymbol&amp;gt;();&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class=""&gt;try&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;{&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class=""&gt;using&lt;/SPAN&gt; (Transaction trans = &lt;SPAN class=""&gt;new&lt;/SPAN&gt; Transaction(doc, &lt;SPAN class=""&gt;"Place Family"&lt;/SPAN&gt;))&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;{&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;trans.Start();&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class=""&gt;if&lt;/SPAN&gt; (!symbol.IsActive)&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;{&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&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; &lt;/SPAN&gt;symbol.Activate();&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;//Somehow I know I need to change the "XYZ to closetest connection point?&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;doc.Create.NewFamilyInstance(&lt;SPAN class=""&gt;new&lt;/SPAN&gt; XYZ(0, 0, 0), symbol, Autodesk.Revit.DB.Structure.StructuralType.NonStructural);&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;trans.Commit();&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class=""&gt;return&lt;/SPAN&gt; Result.Succeeded;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class=""&gt;catch&lt;/SPAN&gt; (Exception e)&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;{&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;message = e.Message;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class=""&gt;return&lt;/SPAN&gt; Result.Failed;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P class=""&gt;}&lt;/P&gt;</description>
      <pubDate>Wed, 07 Sep 2022 12:04:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11405857#M17018</guid>
      <dc:creator>Chris-VC_Studio</dc:creator>
      <dc:date>2022-09-07T12:04:07Z</dc:date>
    </item>
    <item>
      <title>Re: Simple Code to Insert Revit Pipe/Duct Fittings and Accessory's at the End of Pipes</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11408664#M17019</link>
      <description>&lt;P&gt;That sounds and looks great so far! Congratulations on making good progress and identifying a good path forward.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I know you specifically asked not to be pointed to the rolling offset samples, but I'm afraid I still feel compelled to point out that some pipe selection and endpoint identification functionality that you might be able to use or adapt is presented there:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://thebuildingcoder.typepad.com/blog/2014/01/calculating-a-rolling-offset-between-two-pipes.html" target="_blank"&gt;https://thebuildingcoder.typepad.com/blog/2014/01/calculating-a-rolling-offset-between-two-pipes.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Check out the&amp;nbsp;PipeElementSelectionFilter and how it is used...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 08 Sep 2022 13:03:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/simple-code-to-insert-revit-pipe-duct-fittings-and-accessory-s/m-p/11408664#M17019</guid>
      <dc:creator>jeremy_tammik</dc:creator>
      <dc:date>2022-09-08T13:03:02Z</dc:date>
    </item>
  </channel>
</rss>

