Exporting PCF Files from Revit 2018


By Martin Schmid

Revit 2018.0 has the ability to generate Piping Component Files (PCF) files from fabrication level of detail piping models using a simple macro.   PCF files are used in the piping industry to automate a variety of process, such as stress analysis, generation of documentation (such as isometrics), and even to automate shop equipment.

The PCF creation engine in Revit 2018 is the same as what was historically in Autodesk Fabrication CADmep, and used by some users to generate isometrics.  As long as you are using Fabrication (ITM) based piping components in Revit, you can use a relatively simple macro to output the PCF file, which will include the pipe, fittings, valves, and hangers.  There are some limitations in our current output, for example, we’re not presently outputting fluid information or pipe wall thickness.

Here’s the scoop on how to create a PCF file from Revit.

Macro Creation

To create the macro, follow these steps:

  1. On the Manage tab > Macro panel > click Macro Manager.
  2. In the Macro Manager window:
    • Select the Application tab.
    • On the right side, under Module, click Create.
  3. In the Create a New Module window:
    • Enter the name MyPipingUtilities
    • Leave the Language as C#.
    • Click OK.
  4. In the Macro Manager window:
    • On the right side, under Module, click Macro
  5. In the Create a New Macro window:
    1. Enter the name ExportSelectionToPCF
    2. Click OK.
  6. The SharpDevelop macro editing environment will open.

You are now ready to write the associated code.

Writing the Code

There will be a pre-populated function block created as shown below.

  1. Between the curly braces, copy and paste the following code:

Your end result should look like the following:

That’s it! One line of code (well, four lines to improve readability).

  1. In the SharpDevelop menu.
    • Click Build > Build Solution
    • Click File > Exit
  2. Click Yes if prompted to save your changes.

The code will export the selected Pipe Fabrication Part elements to the filename indicated.  Feel free to refine this code to change the path or further modify to suit your workflow needs.

Testing the Functionality

Now, you can try it out!

  1. In a model with some Pipe Fabrication Parts.
    • Select the elements you want to output.
    • On the Manage tab > Macros panel > click Macro Manager
    • Select the Application tab
    • Expand (if necessary) the tree so you can select ExportSelectionToPCF under MyPipingUtilities.
    • Click Run.
  2. Verify that the file was created in the indicated location.

Sample Result

Once you have the PCF file generated, you can try it out in your targeted workflow.

I used the Plant 3D PCF to ISO feature to generate a single line isometric.

Here’s the original model in Revit.

Here’s the resulting isometric.

We would love to hear your feedback on this functionality, it will help us prioritize the refinement to achieve the workflows important to you.

See Part 2: Exporting PCF Files from Revit 2018 – Part 2 (Assemblies) to learn how to create a PCF file from Revit.

Related Articles

Add comment


  1. Avatar

    Hi Martin, This is great info. I have some questions. Looking at this site, https://knowledge.autodesk.com/support/revit-products/troubleshooting/caas/sfdcarticles/sfdcarticles/How-to-export-valves-to-the-pcf-from-Revit.html There are steps decribed as below. 1. Before creating pcf file for valves, prepare mapping which allow transfer Revit MEP Families into MEP Fabrication Parts (valves, pipe/duct accessory) within Revit. 2. Exporting PCF Files from Revit 2018 3. Exporting PCF Files from Revit 2018 – Part 2 (Assemblies) Question 1. Do I have to do mapping for every family in CADMep? Question 2. I have to create spool drawings from Revit Piping Models. Can PCF files be used to create spool drawings in Plant 3D Iso (+spool option)? Question 3. For spool drawings, there are more fabrication and installation information to be added. Then, I have to use PCF to Pipe command to create 3D model and add those additional information (properties). Do you think it is possible?

  2. joshua.torrez

    Hello, I'm currently receiving the following error when I click "Build Solution" in SharpDevelop: Error CS1061: 'MyPipingUtilities.ThisDocument' does not contain a definition for 'ActiveUIDocument' and no extension method 'ActiveUIDocument' accepting a first argument of type 'MyPipingUtilities.ThisDocument' could be found (are you missing a using directive or an assembly reference?) Build failed. (00:00:00.4797229) What does this mean?

    1. Sylvia Knauer
      Sylvia Knauer

      Please make sure you have selected the Application tab as indicated in step 2.

  3. btaute

    Do you know if this macro still works with Revit 2019? It looks to run but no .pcf file is ever made.

    1. Sylvia Knauer
      Sylvia Knauer

      Yes, this macro should work just fine in 2019 using the MEP Fabrication Pipework category elements.

  4. Avatar
    Ricardo Cardial

    Congrats for this material. Excellent to attend workflows that still need isometric drawings

Thanks for visiting the Revit blog. Subscribe to keep current on product updates, the Revit public roadmap, and a wide variety of topics in BIM.

Subscribe to keep up with Revit