I am too busy! Ouch! Here are just a few of today's topics
– BIM360 Question? Join Accelerator!
– What language to choose for a Revit Add-In?
– The Building Coder samples 2021 migration...
Read more →
Unfortunately, the new unit type name functionality can cause a problem loading a family with a type catalogue
– Unit type update affects family type catalogue loading
– New FreeCodeCamp courses
– Padlocking The Building Coder...
Read more →
The Revit 2021 API includes exciting enhancements for add-in developers, including numerous developer wishes and requests that have now been explicitly addressed
– Information sources
– What's new in previous versions
– Detailed TOC of major changes and renovations
– API Changes
– API Additions...
Read more →
I hope you are happy and healthy and enjoyed your Easter eggs!
During the holiday, I updated RevitLookup for Revit 2021, and Harry Mattison added his multi-release building enhancements into the main solution as well
– Revit 2021 add-ins require .NET 4.8
– RevitLookup flat migration to Revit 2021
– Support for multi-release building...
Read more →
A nice big egg has been laid just in time for Easter, with the beautiful springtime in full bloom
– Revit 2021
– BIM 360 Docs folder permission API
– Revit 2021 multi-region cloud model API
– Cloud model API changes
– How to open a cloud model
– How to save a local file to a non-workshared cloud model
– SaveAsCloudModel information in web browser and via the Forge DM API...
Read more →
I hope you and your friends and family are all safe, sound and managing well.
Our main solution today reveals a new trick handling multistory stairs
– Point element references in multistory stairs
– BIM 360 GET project users API
– Zoom tips
– Jobs at Autodesk...
Read more →
I hope you are doing well and remaining healthy!
Topics for today
– Transforming symbol geometry to instance placement
– Importing and displaying satellite images
– Free time? Learn! Free code camp...
Read more →
Today we pick up two recent MEP related discussions, on creating a new pipe connector for a hydraulic fitting family and on automatic pipe system routing, and a couple of other odd items
– The names they are a-changin
– Getting a ReferencePlane for CreatePipeConnector
– Auto-routing a pipe system between plumbing fixtures
– Handling dialogue and failure messages
– Retrieving a geometry reference...
Read more →
Today, let's pick up two recent discussions on the UV coordinate space on a face and the replacement of add-in command bindings
– Understanding the Face BoundingBoxUV
– Handling add-in command binding conflicts...
Read more →
We recently shared a brief note on using the BreakCurve API for splitting a pipe.
Matt Taylor now pointed out a much more comprehensive discussion asking, is there any API available to split a duct programmatically?
That is not just an example, but an entire tutorial, so I think it is very useful to share here as well for all to enjoy..
Read more →
An amazing solution to move existing rooms between levels while retaining all their information, some thoughts on managing slots in panel schedules, and a couple of useful JavaScript debugging console hints
– Moving rooms to other levels
– Slots in panel schedules
– JavaScript debugging console commands...
Read more →
Here are two important utilities, one eagerly awaited, the other a nice surprise: the updated REX and Structural analysis SDKs and a powerful async and await wrapper for the Revit API external event
– REX SDK and Structural Analysis SDK 2020
– Revit.Async
– Background
– Standard approach
– Revit.Async approach...
Read more →
Another inspiring guide to getting started with the Revit API, creating interior elevations and revisiting the Revit command line switches
– Learning to code with interior elevations
– Revit command line switches updated
– World-wide connectivity...
Read more →
An exciting discussion on applying minimal adjustments to the model, and yet another research result on the effectivity of visual presentation
– Adjusting versus recreating wall location curve
– Multimedia communication versus bullet points...
Read more →
Let's start the week with some ribbon button item and encoding topics
– How to create 24x24 stacked ribbon items
– Update on moving a ribbon button between panels
– Revit journal file character encoding...
Read more →
Kennan Chen perfected his family instance placement monitor by elegantly combining the Revit API with additional .NET timer and multi-threading functionality in a novel fashion seldom seen in a Revit add-in...
Read more →
Today, we discuss duplicating legend components in Python, my own non-API Python work and some undocumented utility methods
– Duplicate legend component in Python
– Convert latitude and longitude to metres in Python
– UIFrameworkService utility methods
– Exceptions should be exceptional...
Read more →
More Revit API tutorial material and tools, plus a couple of hints from the Revit API discussion forum and the Forge blog
– Torsion Tools two
– Retrieve path to Revit.ini
– Updated NeXLT localization URL
– Volume and area of triangulated solid...
Read more →
Getting started material and questions galore.
Please search before asking, and work through the available material before trying to shoot yourself in your feet, knees, and elsewhere
– Marko's plugin development playlist
– Overview
– Table of contents
– Getting started with an API script
– Getting started with a macro
– OBJ mesh import with materials
– 2D Booleans in the Revit API...
Read more →
async and await external event wrapper!
Communicating from outside with Revit is often better replaced by the Forge Design Automation API for Revit.
However, it is also possible to make use of Revit as a server in a limited way via an external event
– Communicating with another process
– Autodesk open positions...
Read more →
The long-standing topic of WinForms versus WPF for Revit add-in user interface seems to be nearing a conclusion
– WinForms or WPF?
– Revit WPF template
– Readme
– Build
– Customize
– Documentation...
Read more →
I share a contribution from fellow blogger Eric Boehlke and the announcement of the upcoming yearly DevDays Online presentations
– Add-in migration – Update API references
– Join us for our DevDays Online webinars...
Read more →
As always, interesting topics keep pouring in from the Revit API discussion forum and elsewhere
– Torsion Tools GitHub launch and solution overview
– Detect command launch
– SelectableInViewFilter
– Access project location in Forge
– Distinguish structural elements and access volume information in Forge...
Read more →
I very much enjoyed my quick visit to Swissbau Basel yesterday and meeting so many wonderful people there.
Here are some recent getting started tips on various areas: programming in general, C#, the Revit API and Insight
– The C# Yellow Book
– Chinese Revit API tutorial
– Insight into Insight...
Read more →
Here is a last-minute announcement that I will be attending the Swissbau Basel on Wednesday, a quick hint to answer a support case that just came in today, a forum thread issue, and a pointer to a drum solo
– Attending Swissbau Basel on Wednesday
– Comparing families using part atoms
– Maximum area rectangle in polygon
– Neil Peart drum solo...
Read more →
I just helped address a wish in the Revit Idea Station.
I also started taking a course on AI, designed for absolutely everybody
– Single-click imperial and metric project unit toggle
– Solution
– Elements of AI – crash course for everyone
– Zhonghu solo music...
Read more →
Happy New Year to the Revit add-in developer community!
My main holiday project was the implementation of an external command to determine the 2D plan view outer boundary of a room in the XY plane, including all its bounding elements' geometry
– How to generate a 2D polygon representing the birds-eye view of an element
– CmdExtrusionAnalyzer element outline using ExtrusionAnalyzer
– Cmd2dBoolean element outline using 2D Booleans
– CmdRoomOuterOutline outer room outline using 2D Booleans...
Read more →
So many interesting things going on in the Revit API discussion forum.
Also, the newest DA4R recording is now available online
– Forge Design Automation API for Revit recording
– Design Automation for Revit supports IFC
– What does the FindInsertsincludeShadows flag do?
– Easiest solution to deploy add-in
– Always show the same button in SplitButton...
Read more →
An inconclusive struggle to use CurveLoop.CreateViaOffset leads us once again to thank the powers that be for the integer-based 2D Boolean Clipper library, and some thoughts on project dashboards
– Extracting data for project dashboard
– Specifying a list of offsets to CreateViaOffset
– Alternatives to determine room outline including surrounding walls...
Read more →
I successfully made it from Switzerland to Paris and the Forge accelerator in spite of the French strikes.
My only worry is how to get back again tomorrow.
Again, the train I have booked has been cancelled.
Meanwhile, let's take a look at
– DA4R room support and new samples
– Effective filtered element collection...
Read more →
Family symbols, aka family types, should normally be relied on to be constant.
However, since families and types can actually be edited at will, they are sometimes not.
Hence, the need to check and compare may arise...
Read more →
Topics to start this week
– Why SVG?
– Internet privacy
– Pointless meetings research
– Cyrillic characters in lookup tables
– Moving a grid
– Combining edges...
Read more →
The ultimatively painless introduction to the Forge Design Automation API, a solution for creating two stacked ribbon items, reinitialising filtered element collectors and picking a face in a linked file
– Forge Design Automation API webinars
– Stacking two 24x24 ribbon items
– Reinitialising the filtered element collector
– Use CreateReferenceInLink to select a face in a linked file...
Read more →
Today is my birthday, so I am trying hard to work less.
Very kindly, Alexander Ignatovich provided a gift for the day in the form of a new external command CmdElectricalLoad in The Building Coder samples.
showing how to retrieve the value of the `Load` column in the electrical system browser for a specific fixture family instance...
Read more →
There are so many truly wonderful pieces of software sitting around there that I am unaware of, real works of art, pinnacles of perfection, that I only happen upon by chance
– Revit Batch Processor (RBP)
– Latest version
– FAQ
– Use cases
– Features
– Unlimited power...
Read more →
This is The Building Coder post number 1800, in its eleventh year of existence.
We celebrate by highlighting the integration of a 3D geometry and model viewer in a Revit add-in with a solution making use of several interesting techniques, including the use of IPC for add-in disentanglement from third-party library dependencies and a new custom exporter implementation for OBJ.
This issue was raised in two discussions, on a plug-in that displays Revit's 3D window content and using a geometry viewer in a Revit add-in to preview results...
Read more →
Today I highlight the following topics
– I caved in to smartphone
– Handling third party library DLL conflicts
– Replicating schedule sort order...
Read more →
Two little hints on Forge Design Automation for Revit or DA4R issues, projecting a curve onto a planar surface and an impressive list of add-in video samples
– DA4R supports FBX and IFC
– DA4R wrong user
– Projecting curves onto a plane
– Revit add-in versus Dynamo zero-touch node
– Revit add-in sample videos...
Read more →
Today, we highlight two contributions by HÃ¥vard Leding and Oliver Green
– 2D Boolean interactive real-time sketch viewer
– Single-click automated PDF report via InDesign
– Abbreviated table of technical contents...
Read more →
A small enhancement to the Visual Studio Revit Add-in Template, and another interesting little AI surprise
– Template tags for Visual Studio 2019
– My wizard works again
– OpenAI plays hide and seek and breaks the game...
Read more →
Today, we concentrate fully on material, physical and thermal assets
– Issues accessing and creating material assets
– Access to all material asset properties
– No access to material keywords
– Access to environment and render settings
– Determine full path to texture bitmap...
Read more →
Today, we look at a couple of BIM360 and cloud related issues
– Programmatically initiating BIM360 collaboration
– Setting up external references in BIM360 Docs
– Jay Zallan the text terminator
– Free for developers
– Tracks on the Internet
– Quantum computers explained...
Read more →
Here are some relevant topics for today
– Can you avoid generating graphics?
– Read all thermal and physical assets
– Collection of old add-in managers
– Compiling an add-in without Revit installed
– Xeokit 3D BIM and CAD viewer
– Software development manager job opportunity...
Read more →
Let's highlight another class from BILTNZ and a personal invitation to the upcoming DevCon in Las Vegas
– Invitation to Forge DevCon in Las Vegas
– Visual Programming in Infrastructure
– Class description
– Table of contents
– Placing an instance along an edge
– Most popular programming languages 1965-2019...
Read more →
The hugely popular Design Automation APIs for Revit, Inventor, and 3ds Max will be officially released to the public on October 28.
In a completely different vein, I found a very simple solution to download photos from an Android phone to the Mac
– Public Forge Design Automation APIs
– What can you do with Design Automation API for Revit?
– Easy solution to transfer photos from Android to Mac
– Gadgets in 1990 vs. 2018...
Read more →
Joshua Lumley shares video #2 in his secret series, access to the CAD link status string and block in DWG export
– Secrets of Revit API coding part 2
– Video 2 in the secret series
– Getting CAD link status
– Making blocks in Revit DWG export...
Read more →