7 Steps To Get Started With Revit API For Beginners [BIM Coordinator Summit 2023]

Поделиться
HTML-код
  • Опубликовано: 28 ноя 2024

Комментарии • 40

  • @ErikFrits
    @ErikFrits  Год назад +4

    👇Sign-Up to Revit API Newsletter:
    temp.learnrevitapi.com/
    Learn Revit API Course is coming soon. Stay Tuned!

  • @kafedziski
    @kafedziski Год назад +4

    Awsome presentation, well done!
    Really holds attention, love the use of Morph in it, clean and simple!
    Well done for all of the work you've put into this, can't wait for the course to come out!
    Thanks ! ;D

    • @ErikFrits
      @ErikFrits  Год назад

      Thank you, appreciate that!
      It was my first presentation since school, it was interesting to try presenting with PowerPoint.
      👀 The course is already very close to be ready for the first lunch,
      💟 but still needs a bit more love.
      Stay Tuned!

  • @smitbangare9526
    @smitbangare9526 Год назад +1

    Your EF-Tools plugin saved me multiple times. Thank you :)

    • @ErikFrits
      @ErikFrits  Год назад +1

      Hey, super glad you found use for my tools in your workflow!
      What tools did help you the most?

  • @Maksim_Ikryanov
    @Maksim_Ikryanov Год назад +1

    Круто!!!

  • @willlywillly
    @willlywillly Год назад +1

    Great video on getting started with Python Revit API!

    • @ErikFrits
      @ErikFrits  Год назад

      Thanks, Appreciate that!

  • @toothbrush4022
    @toothbrush4022 Год назад +1

    Thank you as always!! I was unable to get the pick objects multiple to work as written in the video. But below worked, Revit 2020. It's possible I had a typo, I could not quite see the end of the script, but I'm pretty sure thats right.
    from Autodesk.Revit.DB import *
    from Autodesk.Revit.UI import Selection
    doc = __revit__.ActiveUIDocument.Document
    uidoc = __revit__.ActiveUIDocument
    ref_picked_objects = uidoc.Selection.PickObjects(Selection.ObjectType.Element)
    picked_objects = [doc.GetElement(ref) for ref in ref_picked_objects]

    • @ErikFrits
      @ErikFrits  Год назад +1

      Hi,
      Thanks for providing your code as well!
      In a nutshell it seems to be the same, just skipping a few variables.
      I tested the snippet from my video and it worked for me, so there was no typos. I wanted to make sure it's written right.
      Maybe you had a typo, since my face was covering part of the code.😅
      Sorry for that, glad you got it resolved!

  • @maxxtread533
    @maxxtread533 Год назад +1

    Привет, Эрик!, will there be a small video tutorial on how to create a user interface (a purple window with various filling options), like you have in EF_Tools in the "Graphics Overviews" tool?

    • @ErikFrits
      @ErikFrits  Год назад

      One day in the future I will explain how to make custom WPF, I still need to learn the proper way of reusing it myself. At the moment my workflow is not very reusable, except for Copy-Paste the base code I need 🤣
      Currently no time for that, so can't promise when I get to it.

  • @inouizi
    @inouizi Год назад +1

    Thank you as always Erik! I have an idea for a video if you're interested.. I was thinking someone should dive in to pyRevit forms and explain how they were made.. I think Ehsan started in his channel but stopped.. I think that will allow everyone to be able to create their own custom forma 😊👍🏼

    • @ErikFrits
      @ErikFrits  Год назад +1

      Thanks, appreciate that!
      I had this idea for a long time but I am stuck doing my Course and a few other things. Once I clear up my schedule, I will certainly look into that.
      Meanwhile you can check this Newsletter about pyRevit inputs.
      preview.mailerlite.io/preview/52352/emails/80033985219003968
      I show what kind of forms we can find in pyRevit and rpw to easily use them. I don't explain how to create custom forms from scratch, because that would need a lot of explanation.

    • @inouizi
      @inouizi Год назад +1

      Perfect.. thank you Erik!

  • @PANDURANG99
    @PANDURANG99 10 месяцев назад +1

    how to share our application in 500 computers in organization?

    • @ErikFrits
      @ErikFrits  10 месяцев назад

      I've never managed pyRevit installation on so many machines, however there is a guide in pyRevit Notion (pyRevit For Teams)
      Here is the link:
      pyrevitlabs.notion.site/pyRevit-For-Teams-ddc6c312d6f6488691eed2ec7704fd97
      It will require you to get comfortable with pyRevit CLI to a certain extend, but when you work with so many machines, that is certainly worth it!
      I hope this helps!

  • @manhalsousli9793
    @manhalsousli9793 10 месяцев назад +1

    I love your videos, they are really insightful, however, could you please recommend me on which one you think is more efficient to learn, Grasshopper or API Revit, please note that I am a BIM Coordinator and a Revit Expert and have a basic of Grasshopper of Rhino, could you please give me your opinion ?

    • @ErikFrits
      @ErikFrits  10 месяцев назад

      Thanks!
      I think that depends where you spend more time.
      If you spend 90% of time in Revit, then Revit API sounds like a no brainer. If you spend majority in Rhino, grasshopper sounds good.
      There are workflows with RhinoInsideRevit where you could combine grasshopper together with Revit API, but that probably shouldn't be your main goal.
      Just think where you will get more value if you learn Grasshopper vs Revit APi.

  • @ummarkhan561
    @ummarkhan561 11 месяцев назад +1

    Hello Erik,
    I have some Doubts Regarding Revit API, After Completing Dynamo Course, I am Looking to Upgrade my skill to Next level,
    But I am Confused Between Iron Python & PyRevit.
    Both are Same Having same Logic or Different? Please Clarify.
    After learning Dynamo We need to do Python Scripting with RevitAPI then we further move to C# to Create Addins, but in Between i Came to know About pyRevit.
    thanks,

    • @ErikFrits
      @ErikFrits  11 месяцев назад

      IronPython and Python are pretty much the same thing. The main difference is that IronPython is written to be able to access .NET Libraries using clr module (like clr.AddReference('RevitAPI')
      It's necessary because Revit is written using .NET framework and we need IronPython to access and use Revit API modules.
      pyRevit is a plugin that has a python engine integrated to be able to run python script. It has many benefits:
      - Free + Open-Source
      - Plenty of Tools you can have a look at source code
      - Very quick Development
      - Lots of Built-In functionality
      - Easiest way to create a Revit Toolbar
      - Awesome Community of Revit Developers
      and lots more!
      Python vs C# decision is a personal preference. I am huge python fan, so I am not planning on migrating to C#. However, if you are planning to ship and sell your plugins, C# might be a better option since it can be compiled into an installable file.
      However, I would still recommend to use pyRevit for development as it will be much quicker to create draft scripts and test them in Revit.
      Hope that helps,
      Happy Coding!

    • @ummarkhan561
      @ummarkhan561 11 месяцев назад +1

      @@ErikFrits I appreciate your response.
      And one more thing: according to your videos, participation in your PyRevit course requires knowledge of basic Python. Does this imply that enrollment is still possible even if one is not familiar with Dynamo?

    • @ErikFrits
      @ErikFrits  11 месяцев назад

      ​@@ummarkhan561 Dynamo is not necessary.
      I use mainly pyRevit in my course and focus on Revit API with python. However, these skills are easily transferable to Dynamo since it has python node to execute the same code.
      I had a few students join without prior knowledge of python, but they were following CS50 course by Harvard to pick up python basics. (It's a free course on edx.org)

    • @ummarkhan561
      @ummarkhan561 11 месяцев назад +1

      @@ErikFrits How to register this course? It is showing waiting list.

    • @ErikFrits
      @ErikFrits  11 месяцев назад

      I am still working on a course, so far I had Early-Bird launch for first students in October with ~5hrs of video content + lots of written content.
      I will probably make the next launch around February.
      I need to prepare a lot of things for that ;)
      You can sing-up to my newsletter to hear more about it when the time comes!

  • @iaconst4.0
    @iaconst4.0 Год назад +1

    create elements part 3 and part 4 please!

    • @ErikFrits
      @ErikFrits  Год назад

      Currently I have all my efforts in the course platform, it's very close to finishing. I might revisit the topic in the future on RUclips as well.
      Creating what elements do you struggle with the most?

  • @joseluisquirozcasas7074
    @joseluisquirozcasas7074 9 месяцев назад +1

    hi. pyrevit en revit 2023 no working

    • @ErikFrits
      @ErikFrits  9 месяцев назад

      Hmm, Can you share a bit more details? Do you get any error messages?
      Usually it works well, but sometimes people had issues due to IT security protocols. Is it possible that something is blocking access to the internet during installation?

    • @joseluisquirozcasas7074
      @joseluisquirozcasas7074 9 месяцев назад

      Hello, this message when starting Revit:
      ironPython Traceback: Traceback(most recent call last):
      file "C:\Program Files\pyRevit-Master\bin\engines\pyRevitLoader.py", line 30, in
      Exception: Error dynamically compiling pyRevit runtime
      @@ErikFrits

    • @ErikFrits
      @ErikFrits  9 месяцев назад

      @@joseluisquirozcasas7074 That's strange. Maybe a bug from a newer version of pyRevit.
      I've found that it was solved on this forum:
      discourse.pyrevitlabs.io/t/new-release-error-dynamically-compiling-pyrevit-runtime/2621
      Jean-Marc has written 6 step plan to fix it, and someone had success.
      I would suggest you to try it out first, and if error persist I would uninstall pyRevit and install a bit older version of it, but don't go too far back 😉
      I hope it will work.
      Here is his plan:
      1. Uninstall
      2. Remove %appdata%/pyrevit and %appdata%/pyrevit-master folder if any
      3. Move Revit addins to temp location
      4. install latest pyrevit
      5. start Revit once - close it
      6. bring revit addins to their original location
      But I would recomment to check the link ;)

    • @joseluisquirozcasas7074
      @joseluisquirozcasas7074 9 месяцев назад

      ok thanks
      @@ErikFrits

  • @iloveminecraftyeah
    @iloveminecraftyeah Год назад

    How about Revit to Omniverse API?

    • @ErikFrits
      @ErikFrits  Год назад

      I haven't used Omniverse. I heard that we can create material library to use in all softwares.
      What kind of workflow do you have in mind for Revit + Omniverse?

    • @iloveminecraftyeah
      @iloveminecraftyeah Год назад

      I was interested in using it with Reality Server, perhaps also Unity, and Unreal Engine via Omniverse. It seems quite useful as revit is often used in architecture and I think the combination of these elements would be super convenient@@ErikFrits

  • @thumDerr
    @thumDerr Год назад

    I just love how all explanation fails to get the type of parameters right, because even the concept is so messy. I couldn't find a way either to describe it ever in a way that makes sense, but still valid. It is more like a matrix, because both family and project parameters can be shared parameters and built-in parameters. So the closest I got is there are built in parameters, and user created parameters. User created parameters can be attached to elements (on a project level or on a family level, can be non-shared or shared, different behaviour forr each combination), or globally to the project itself: global parameters, which is kinda the same as a family parameter where the family itself is the project. Scary.
    Anyway, nice overview of the whole Revit API world, wish I had something similar when I started.

    • @ErikFrits
      @ErikFrits  Год назад

      Thanks appreciate that.
      Yeah, I didn't have enough time to go deep on parameters, wanted to cover everything a little in the time slot I had. I could go full hour just on parameters 😅
      Overall I think they are not as confusing once you get used to them.