An urgent request for feedback from the Revit development team and an especially interesting thread from the Revit API discussion forum – Copy and paste API Feedback – Corridor skeleton... Read more →
An urgent request for feedback from the Revit development team and an especially interesting thread from the Revit API discussion forum – Copy and paste API Feedback – Corridor skeleton... Read more →
Today, we return for a summary and a new, deeper look at a recurring topic – eTransmit documentation – Purge via performance advisor – eTransmit functionality in DA4R – Updated Autodesk Revit IFC manual – AI solves programming tasks... Read more →
Posted on February 15, 2022 at 11:00 in AI, Algorithm, DA4R, Export, Forge, IFC, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Taking a look at yet another overlooked Revit API utility class, rebar constraints, and learning basics of power, energy, entropy and information – ParameterFilterUtilities – Constrain stirrup to host cover – Rowers illustrate power and building energy – Wordle entropy and information... Read more →
Posted on February 10, 2022 at 11:00 in Algorithm, Filters, Fun, Parameters, Rebar, RST, Utilities | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
We close this year with an eclectic mix of topics – Symbol vs instance geometry clarification – Create new material with texture – RVT dashboard data access – Marking and retrieving a custom element – Advanced remote batch command processing – Midwinter break... Read more →
Posted on December 17, 2021 at 11:00 in Algorithm, Batch, Data Access, Element Relationships, Family, Geometry, Journal, Material, News, Storage | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Three quick notes on critical and inspiring sci-fi, programming languages and MEP filtering – Pipe insulation retrieval performance – Programming languages to learn – Agency by William Gibson... Read more →
Posted on October 14, 2021 at 11:00 in .NET, AI, Algorithm, F#, Getting Started, Performance, Philosophy, Python, RME | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Two Revit API discussion forum threads that I am currently involved in – Painting stairs – Ray tracing vs bounding box to find beams intersecting columns... Read more →
Posted on June 22, 2021 at 11:00 in Algorithm, Analysis, Element Relationships, Geometry, Material, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Very short notice on the Ask Me Anything session taking place later today, and a vastly enhanced method for sorting curve loops – Today: Inside the Factory, Ask Me Anything – Sorting non-planar curve loops... Read more →
A lengthy and fruitful conversation on implementing valid rebar stirrup constraints and more advice on determining boundary elements for the entire building and individual rooms – Rebar stirrup constraints – Exterior bounding walls – All walls including non-bounding interior walls – Floors and ceilings – Revit API and UX style guide – Today's collective action problem... Read more →
Posted on March 15, 2021 at 11:00 in Algorithm, Analysis, Geometry, Philosophy, RST, User Interface | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Let's look at the outer boundaries of both buildings and rooms today – Finding exterior walls continued – Retrieving room bounding elements – Comic Sans is a public good... Read more →
Posted on March 10, 2021 at 11:00 in Algorithm, Analysis, Element Relationships, Filters, Geometry | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I need to come to terms with a split personality. Meanwhile, lots more going on in the Revit API discussion forum – Two Jeremys – Multiple collectors versus multiple filters – RevitLookup handles split region offsets – Python and Dynamo autotag without overlap – Custom errors and preventing changes – Ecological cost of crypto currency and art... Read more →
Posted on February 02, 2021 at 11:00 in Algorithm, DMU, Dynamo, Filters, News, Python, RevitLookup | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
The week is coming to an end all too quickly... here are some compelling topics before we enter the weekend
– Explaining texture UV
mapping using AVF
– Más Allá de Dynamo Spanish-language book
– A detailed 3D model of a human cell...
Read more →
Many interesting topics on pure Revit API, Forge, BIM360 and AI – Custom export precision – Dismissing a Windows dialogue with JtClicker – AU classes for construction customers – Retrieve sheet metadata in Forge viewer – Determining the BIM 360 project id – AI solves partial differential equations – AI-enhanced video editing... Read more →
Posted on November 03, 2020 at 11:00 in 360, AI, Algorithm, AU, BIM, Data Access, Forge, User Interface, Win32 | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Topics for today
– Revit 2021 DisplayUnitType
– Eliminated TBC samples deprecated API usage
– Calculating the elbow centre
– FireRevit identifies room location for fire escape routes...
Read more →
Today let's talk mainly about geometric analysis and performance – High-performance outline optimisation – Simple line-plane intersection – Set base and survey clipped and unclipped – Two German uni BIM360 construction cloud startups – AI-based face streaming hits mainstream... Read more →
Parameter changes and tile packing using the Revit API and AI, plus some other notes on Forge and general stuff
– Parameter type changes to Custom
– Determining cut tiles in room
– Optimal banana sandwich slice packing with AI
– Forge solution showcase
– Effect of home office on meeting culture
– Motivating kids can be harder than business success...
Read more →
Posted on August 26, 2020 at 11:00 in 2021, AI, Algorithm, Forge, Geometry, Parameters, Philosophy | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Cool topics to wrap up this hot and exciting week – Are you using the derived analytical model? – Pick room in current project or linked model – Determine whether custom export was cancelled – Multi-threading with the single-threaded Revit API – Beginner’s guide to abstraction... Read more →
Two beautiful Revit API solutions to – Set view crop to section box and – Access room boundaries and intersections in linked models... Read more →
Posted on June 26, 2020 at 11:00 in Algorithm, Element Relationships, Filters, Geometry, Links, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Today, let's address a couple of quick questions and share a useful utility – How to determine Revit export image coordinates – Problems compiling and installing the Revit SDK samples – RvtVerFileOpen utility opens correct RVT file version – Angular and react tutorials – Give and take... Read more →
Posted on May 29, 2020 at 11:00 in .NET, Algorithm, Export, External, Geometry, Getting Started, Open Source, Philosophy, SDK Samples, Utilities | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
Posted on March 26, 2020 at 11:00 in Algorithm, Element Creation, Failure, Geometry, News, RME, User Interface | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
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 →
Posted on February 27, 2020 at 11:00 in Algorithm, Element Relationships, Geometry, News | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
Posted on February 21, 2020 at 11:00 in .NET, Algorithm, Events, External, Modeless, Selection, User Interface, Utilities | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
Posted on February 19, 2020 at 11:00 in Algorithm, Element Creation, GIS, Python, Units, User Interface, Utilities | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
Posted on February 12, 2020 at 11:00 in Algorithm, Geometry, Getting Started, I18n, Settings, Utilities | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
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 →
Posted on January 08, 2020 at 11:00 in Algorithm, Clipper, Element Relationships, Geometry | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
Posted on December 18, 2019 at 11:00 in 360, Algorithm, AU, BIM, Data Access, Forge, Geometry | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
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 →
Posted on December 10, 2019 at 11:00 in .NET, Accelerator, Algorithm, DA4R, Element Relationships, Filters, Forge, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Today I highlight the following topics – I caved in to smartphone – Handling third party library DLL conflicts – Replicating schedule sort order... Read more →
Posted on November 19, 2019 at 11:00 in .NET, Algorithm, Debugging, External, Installation, News, Schedule | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Please note that the European Forge DevCon in Darmstadt is looming imminent. Furthermore, here are some notes on two recent Revit programming discussions and a pointer to some of the top-rated online classes – DevCon Darmstadt – Personal DevCon invitation from Jim Quanci – Sun direction adjusted for project true north – Reading an RVT file without Revit – The top 100 free online courses... Read more →
Here are this week's interesting items I want to share with you – Map Forge Viewer camera settings back to Revit – Project Quantum becomes Plasma – Mikako's DA4R overview – AI is affecting human game strategies – AI can convert speech to gesture – Barcelona Forge accelerator – Open positions at Autodesk... Read more →
Posted on June 21, 2019 at 11:00 in Accelerator, AI, Algorithm, BIM, DA4R, Deep Learning, Forge, News, View, Viewer | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I played around creating a new SectionCutGeo add-in to retrieve the geometry resulting from cutting a family instance in a section view. This was prompted the Revit API discussion forum thread on getting intersection lines from cut in section view – Intersection of section and family instance task – Solution options, geometry elements and view settings – Retrieving curves in the cut plane – Helper methods and external command mainline – Sample model and results – Caveat... Read more →
Posted on May 23, 2019 at 11:00 in Algorithm, Data Access, Family, Geometry, Performance, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
The open source space around the Revit API is continuously growing richer, solutions are shared and exciting discoveries are made, both in the Revit API discussion forum and elsewhere – Debugging, code signing and HOK Mission Control – Creating connectors on a reference line... Read more →
Yet another eagerly awaited update for the Revit 2020 API, a couple of interesting Revit API discussion forum threads, and some thoughts on how AI might affect and be used in an architectural context
– RevitApiDocs updated with the Revit 2020 API
– More room boundary segments than expected
– How to get width and height of a CurveLoop
– AI and architecture...
Read more →
Posted on May 06, 2019 at 11:00 in 2020, AI, Algorithm, Architecture, Docs, Geometry, SDK Samples, Update | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
We have looked at numerous different approaches to determine wall openings in the past, so it seems pretty hard to nail down, and pretty important to solve.
Now Håvard Leding of Symetri contributed yet another exciting idea which highlights a number of surprising aspects,
demonstrates a further creative use case for GetDependentElements
and expands on his
recent RevitLookup enhancement to retrieve and snoop dependent elements
– Get demolished solid
– Why?
– Questions...
Read more →
Posted on March 28, 2019 at 11:00 in Algorithm, Data Access, Dimensioning, Element Relationships, Geometry, Transaction | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I recently implemented the IfcSpaceZoneBoundaries add-in to link in and analyse IFC file zones and spaces, then prepared it for use in Forge Design Automation. Now I want to add level information to the CSV export. However, the DirectShape
elements created to represent the rooms and zones have no valid level assigned, so their Level
property is invalid.
Happily, we can easily analyse the BIM and generate the equivalent information ourselves
– Retrieve levels sorted by elevation
– Determine level from element elevation
– Carl Bass and Zoox autonomous vehicles
– Physical reasons to be happy to be alive...
Read more →
Posted on March 06, 2019 at 11:00 in Algorithm, Data Access, Element Relationships, IFC, News, Philosophy | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
As usual, I have been much too active in the Revit API discussion forum recently and worked too little for my taste here in the blog. Here are some of the recent items that I want to share plus a few pictures from my latest mountain outing – Marat's shapka ushanka and Balmer's Graetli – Naveen is a top solution author now – Revit et BIM en Français – Tree view performance optimisation – Underture... Read more →
Posted on March 01, 2019 at 11:00 in .NET, Algorithm, Architecture, BIM, Climbing, Fun, News, Performance, Photo | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I am working on extracting room and zone information from IFC files, both geometry and relationships, specifically room and zone boundaries and containment.
My new IfcSpaceZoneBoundaries add-in project retrieves this information, exports it to CSV and demonstrates a host of other important aspects
– What happens on linking in an IFC file?
– Read user configuration input settings from a file
– Log messages, warnings and errors to an output file
– Read the IFC properties stored as shared parameters
– Extract the horizontal boundary information from a DirectShape
element
– Export the relevant data to CSV
– Programmatically link in an IFC file into a Revit RVT project
– Retrieve all currently linked-in IFC files from the Revit application...
Read more →
Posted on February 01, 2019 at 11:00 in .NET, Algorithm, Data Access, Geometry, IFC, JSON, Links | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Inundated with interesting topics, let's skim a few topmost ones off
– Passing an add-in custom command line parameters
– Useful methods help verify a Face
is rectangular
– Automate complex family creation
– C++ code extracts 3D line segments from point cloud
– Big data visualisation and storytelling...
Read more →
Posted on January 22, 2019 at 11:00 in Algorithm, C++, Cloud, External, Family, Geometry, Getting Started, SDK Samples | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Let's tackle a 2D fire rating zone intersection task. Actually, it was originally raised a 3D intersection task. Reducing it to 2D makes it much more tractable – 3D solid extrusion creation and intersection task – 2D area intersection task – Jack's sample and description – Soffit subdivision sample code – Cleanup and GitHub repository... Read more →
I remain busy, mainly in the Revit API discussion forum. Here are three recent samples dealing with pretty generic questions – Efficiency and elegance in simple code – Pushing wall type to doors... Read more →
Posted on November 27, 2018 at 11:00 in Algorithm, Data Access, Filters, Parameters | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I have a whole bunch of exciting overdue topics lined up. Let's start with these – Tailor Your BIM sums room areas with F# – Control view for design option elements with F# – Copy legend view and component from background file – Forge RVT to IFC translation defaults to 2x3 – Latitude and longitude in Revit IFC export – Takeoff creation requires branch duct... Read more →
Posted on October 30, 2018 at 11:00 in Algorithm, Data Access, Element Creation, F#, Forge, IFC, RME | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
The Forge accelerator in Rome is winding down with the demonstrations of what was achieved being recorded as I write. An interesting conversation I had at the celebratory dinner last night gave me an idea for a solution to a longstanding question on family tampering protection – Roma accelerator group photo – Protecting a family from tampering – Implementing a canonical key for geometrical objects... Read more →
Posted on September 28, 2018 at 11:00 in Accelerator, Algorithm, Content, Family, Forge, Geometry, Security | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Today, we focus on two pure programming questions from the Revit API discussion forum – Area of an exterior floor above a room – Mysterious element hiding activity... Read more →
Posted on September 27, 2018 at 11:00 in Algorithm, Analysis, Geometry, Getting Started, Parameters, Settings, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
My colleague Zhong John Wu just solved a Revit API discussion forum issue on how to create dimension line for rebar. I took this as a prompt to clean out a bunch of other dimensioning related issues lurking in my infinite and growing to-do list – Create dimension line for rebar – Newly created dimensioning not displayed – Dimension leader remains visible after removal – Dimension wall centreline, centre and faces of core – Grid references for dimensioning... Read more →
Posted on September 13, 2018 at 11:00 in Algorithm, Data Access, Dimensioning, Element Creation, Geometry | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
If you are interested in Forge programming, don't miss the upcoming deadline for proposals for the Boston Forge accelerator! Looking at the Revit API, I migrated my sample demonstrating how to enable ribbon items in zero document state to Revit 2019. Let's look at that, and another recurring topic, on loading add-in support DLLs – Migrating the ZeroDocPanel to Revit 2019 – Loading add-in support DLLs – Rome and Boston Forge accelerators... Read more →
We already looked at deleting unnamed non-hosting reference planes back in 2012 and 2014.
Some things have changed since then, and the old code requires fixing and updating.
Other interesting topics also want to be mentioned
– Embodyment workshop
– Bös Fulen mountain hike
– Using ReferenceIntersector
to place lighting fixture on ceiling face
– Reformat stable representation string for dimensioning
– Deleting unnamed non-hosting reference planes updated...
Read more →
Posted on September 04, 2018 at 11:00 in 2019, Algorithm, Climbing, Deletion, Dimensioning, Element Relationships, Family, Filters, Geometry, Update | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Today, let's revisit the topic of filtering for a parameter value, and mention the updated Forge tutorials – Learning Forge tutorials – Filtering for a specific parameter value – Filtered element collector optimisation... Read more →
Posted on June 01, 2018 at 11:00 in Algorithm, Data Access, Filters, Forge, Getting Started, Parameters, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API