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 →
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
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
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 →
I have been dabbling with the Go programming language in the past week, besides optimising and answering Revit API questions – Optimising setting shared parameters – Full-text search for The Building Coder posts – Decimal point woe... Read more →
Posted on September 09, 2020 at 11:00 in AppStore, Go, I18n, Parameters, Performance, Settings, Utilities, Win32 | 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
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 →
Posted on October 31, 2019 at 11:00 in BIM, Debugging, Installation, Job, Material, OBJ, Performance, SDK Samples, STL, Utilities, 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
Today, let's present a benchmark monitoring filtered element collector performance. First, however, a quick note on a very useful Forge learning resource – Forge learning resource – Filtered element collector benchmark... Read more →
Posted on May 16, 2019 at 11:00 in .NET, DA4R, Filters, Forge, Performance, Win32 | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I am probably doomed to spend the rest of my life telling people not to unnecessarily apply ToList
to a filtered element collector.
It happened several times again today answering questions in the Revit API discussion forum
– Don't trust the family instance location point
– Searching by name for element type and text note type
– Searching using a negated category filter...
Read more →
Posted on May 02, 2019 at 11:00 in Element Creation, Family, Filters, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I avoid answering non-confidential questions in private, as I tell everyone who tries to do so.
However, some non-confidential queries still come in via ADN.
Here are two that came in today that might be of general interest and therefore seem worth sharing
– Batch processing Revit families and documents
– AsString
and AsValueString
results differ...
Read more →
Posted on April 25, 2019 at 11:00 in Cloud, Data Access, Export, Forge, Logging, Parameters, Performance, Server | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Today I discuss (once again) an important performance aspect of Revit element filtering, a Python script for tagging JPEG images with EXIF data, prompted by a recent ski tour, and three other interesting topics that caught my eye – Slow, slower still and faster filtering – Python JPEG EXIT filename tagging – TED talks and population growth – Objective reality does not exist – Artificial intelligence judge... Read more →
Posted on April 08, 2019 at 11:00 in .NET, AI, Filters, News, Parameters, Performance, Photo, Python | 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 just discovered an interesting and not completely obvious aspect of using a filtered element collector in
the Revit API discussion forum thread on aborting a long running filtered element collector.
Question: I have really large models where I use an ElementIntersectsElementFilter
that can take a long time to process, and sometimes I want to abort it in a graceful way. Is this possible?
Read more →
Posted on February 06, 2019 at 11:00 in Filters, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Matt Taylor of WSP shares a solution to Purge Unused using the Performance Adviser
– PurgeTool.vb
implements GetPurgeableElements
– PurgeUnused.vb
external command...
Read more →
Posted on August 28, 2018 at 11:00 in BIM, Deletion, Element Relationships, Performance, Utilities, VB | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Some happy news about two new Revit API supporter colleagues, Naveen Kumar and Zhong Wu. They already reached second and third place in the list of top solution providers. Here is also a very relevant recent case handled by Zhong – Top solution authors – Naveen on Naveen – Zhong shifts to AEC – Zhong on Zhong – Deleting a non-shared project parameter... Read more →
Posted on August 27, 2018 at 11:00 in Data Access, Deletion, News, Parameters, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Apparently, the Revit SDK REX Visual Studio templates are obsolete. Let's fix that problem. Also, two little notes on a C# optimisation trick for math-heavy code, and the current status of the Forge Design Automation API for Revit – Revit Structure 2019 REX Extension SDK Visual Studio Templates – Improve C# Performance Using Struct Instead of Class – Update on the Forge Design Automation API for Revit... Read more →
Posted on June 15, 2018 at 11:00 in .NET, 2019, Forge, Performance, REX, RST, SDK Samples, Unity | 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
Several questions on filtering for intersecting elements came up recently. It is pretty easy as long as a bounding box can be used. However, the bounding box is generally aligned with the cardinal X, Y and Z axes. If the containing volume of interest is not, too many elements may be selected – Family instances in a diagonal room – Conduits intersecting a junction box – Generate 2D arc from radius, start and end points... Read more →
Posted on March 06, 2018 at 11:00 in Algorithm, Data Access, Element Creation, Family, Filters, Geometry, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Konrads Samulis shared a very nice solution to retrieve the crop box for a given view using a highly efficient parameter filter in
his comment on rotating a plan view.
In digging up this old thread, I found something quite curious in the API in 18.1, that I'm not sure was there before.
The method of using a temporary transaction (with rollback) to find the element id of the crop box was taking a very long time on a large model, so I did a bit of digging to see how I could improve it.
I noticed that in the built-in parameter ID_PARAM
of the crop box contains the element id of the view it's in.
E.g., the crop box 'points' to the id of the view it is in using ID_PARAM
...
Read more →
Posted on February 01, 2018 at 11:00 in Dynamo, Element Relationships, Filters, Performance, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
A biggish post rather late in the week... still answering too many cases – Forge for AEC demos and sample code – Determining the starting view – Detecting installed Revit version – Detecting installed C3D version – Moving items inside a detail group – Filtering for family instances and types by family name... Read more →
Posted on August 17, 2017 at 11:00 in .NET, AU, Data Access, Element Relationships, Family, Forge, Geometry, Group, Installation, Parameters, Performance, RevitLookup, Utilities, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Minho re-opened the Revit API discussion forum thread on getting the ElementId of all visible entities in a viewport, providing a good opportunity to mention Colin Stark's answer to the StackOverflow thread on determining whether a FamilyInstance is visible in a View. Question: I am looking for code to get the ElementIds of all entities inside a viewport. A viewport is a region of a big view plan... Read more →
Posted on May 29, 2017 at 11:00 in Algorithm, Element Relationships, Filters, Performance, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Here I am in Munich, supporting the one-week Forge accelerator workshop – Pizza and Isar – Public Revit Roadmap – Revit Idea Station – Revit Today and Tomorrow... Read more →
Posted on October 26, 2016 at 11:00 in 2017, Events, News, Performance, RTC, Update | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Some interesting topics of the day for this first cloudy one after a truly wonderful Indian summer – Avoid imported CAD content in RFA family definitions – Advances in Architectural Geometry 2016 – Endtrip full sound replacement... Read more →
Posted on September 15, 2016 at 11:00 in Content, DWG, Family, Geometry, Music, Performance, Unity | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Today, I'll discuss this morning's work – TrackChanges enhancement idea – The TrackChangesCloud add-in – The TrackChangesCloud external event – Creating and raising an external event – Raising the external event from a separate thread – First test run – Trigger immediate execution by setting Revit foreground window – Complete external application module – Next steps – Download... Read more →
Posted on March 03, 2016 at 11:00 in .NET, Algorithm, Events, External, Performance, Win32 | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Trying to keep track of the overwhelming information flow provided by the numerous discussions on the Revit API discussion forum is impossible. Here are two little titbits from the past few days – Basic Revit API and SDK Access, Online and Offline – Filtering for Elements Intersecting a View Section Box... Read more →
Posted on March 01, 2016 at 11:00 in Filters, Geometry, Getting Started, Performance, SDK Samples, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Lots of exciting topics for today – EstoreFile, extensible storage and embedding a raster image – Preview Image for a Group – Thoughts on migrating the Room Schedule sample to 64-bit: Request, Implementation suggestion, Problem, Response – Autodesk 2016 AEC showreel call for submissions... Read more →
Posted on February 03, 2016 at 11:00 in .NET, Cloud, Data Access, Export, Git, Group, NoSQL, Performance, Schedule, SDK Samples, Storage, Utilities, View | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
How to determine and track element modification? I implemented a solution! – Two approaches – Task analysis – Modification tracker – Creating an element state snapshot – Determining which elements to track – Implementation – Geometrical comparison – String formatting – Retrieve solid vertices – GetTrackedElements – retrieve elements of interest – GetElementState – store element state – Creating a database state snapshot – Report differences – External command mainline Execute method – Sample runs – Demo recording – Download... Read more →
Posted on January 22, 2016 at 10:30 in Accelerator, Data Access, Element Relationships, Events, Parameters, Performance, Utilities | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Today we have two ever-recurring topics to revisit: a discussion on how to react to a document modification and yet another example of the need for regeneration – Idling and external events, DMU and DocumentChanged – Need for regen in an updater... Read more →
Posted on January 12, 2016 at 11:00 in Deletion, DMU, Events, External, Idling, Performance, Regen, Transaction, Update | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I continue my rather active involvement in the Revit API discussion forum. Lets look at one of them, and an associated point or two – Retrieving wall openings – Ray shooting solution – CmdWallOpenings implementation – Faster lexicographical point sorting... Read more →
Posted on December 17, 2015 at 11:00 in .NET, Algorithm, Data Access, Geometry, Performance, SDK Samples | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I arrived back safe and sound in Switzerland after the exciting week at Autodesk University. Another happy arrival is my first grandson: He was preceded by his big sister almost two years ago. Life goes on. I have been wanting to highlight the difference between quick and slow element filters for quite a while, and now a query came in that provides an ideal opportunity – Use of LINQ with filtered element collectors – Revit element filter classification – Filter types – Efficiency guidelines – Logical filters – Quick filters – Slow filters... Read more →
Posted on December 08, 2015 at 11:00 in .NET, Filters, Getting Started, Parameters, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Let's wrap up this hectic week with a couple more recently answered issues and one non-Revit note – Changing element type – Iterating over elements – Creating an electrical family – La costola di Adamo... Read more →
Posted on September 25, 2015 at 11:00 in Element Creation, Family, Filters, Getting Started, Performance, Philosophy, RME, SDK Samples | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
The creation of a DirectShape element on an interactively selected existing element face requires a transformation to be applied to the face of a family instance returned by the PickObject method to convert it from the family symbol space to the family instance real world coordinates – Creating DirectShape from face mesh – Determining real world transform of a family instance face returned by PickObject – Iterating over element geometry to find a specific target geometry object – Reusing sketch planes for model curve creation... Read more →
Posted on September 08, 2015 at 11:00 in Algorithm, Element Creation, Geometry, Performance | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
I encountered the need and implemented solutions to save user configuration data several times over in the past. Today, prompted by a recent query, I'll point out two of them, and some other exciting and interesting stuff as well: Anthony Hauck on Futures for Revit. The Most Popular Programming Languages 2015. Saving User Configuration Settings. Text Format Configuration File Storage and Parsing. .NET XML Configuration File Storage and Parsing. Anthony Hauck on Futures for Revit BIMThoughts is a podcast platform... Read more →
Posted on August 17, 2015 at 11:00 in .NET, BIM, C++, Data Access, External, Performance, Python, Settings, Utilities | Permalink | 0 Comments
Tags: akn_include, Jeremy Tammik, Revit API
Here are a bunch of infos on and updates for Revit 2016, as well as some important hints on the use of the ElementTransformUtils.CopyElements method: CopyElements view argument is for 2D only Revit 2016 scalability enhancements Revit 2016 Python shell Revit 2016 Ruby shell RevitLookup for Revit 2016 CopyElements View Argument is for 2D only You should only use the ElementTransformUtils.CopyElements views argument when working with view dependent elements, i.e., 2D elements. This was pointed out by Arnošt Löbel in... Read more →
Posted on May 15, 2015 at 11:00 in 2016, Element Creation, Family, Git, Installation, Performance, Python, RevitLookup, Ruby, Update | Permalink | 0 Comments | TrackBack (0)
Tags: akn_include, Jeremy Tammik, Revit API
On Tuesday, I presented the new SpatialElementGeometryCalculator sample for calculating gross and net wall areas. It discusses a whole bunch of interesting aspects, e.g.: Use of the SpatialElementGeometryCalculator class. Porting a VB.NET Revit add-in to C#. Use of the temporary transaction trick. Use of filtered element collectors to determine all openings in a wall. Filtered element collector optimisation possibilities, e.g. integer instead of string comparison, use of a parameter filter instead of .NET post-processing. Vilo submitted a very relevant comment... Read more →
Posted on March 19, 2015 at 11:00 in Element Relationships, Filters, Git, Performance, VB | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
Today, let's look at a generic WebGL and a specialised Revit API issue: WebGL on all Apple platforms and sorted level retrieval. WebGL Goes Mobile Apple announced full support of WebGL for its desktop and mobile browsers, so WebGL goes truly cross platform, as pointed out by Paul Flanagan: Previous claims of cross-platform support for this HTML5 standard were largely worthless because they did not include the iPhone, iPad, or desktop Safari. That has changed, and this standard for 3D... Read more →
Posted on November 19, 2014 at 11:00 in .NET, Filters, Git, Mobile, News, Performance, WebGL | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
Let us summarise and preserve this interesting Revit API forum discussion between Erik Eriksson, Ollikat and Arnošt Löbel on why the Revit API cannot safely be used from multiple threads under any circumstances whatsoever, even for read-only operations: Question: I've been using the Revit API for some years now, but I have never tried multithreaded requests. Basically because Autodesk told me that it will never work. I've now grown a little more confident and started testing a bit. So I... Read more →
Posted on November 17, 2014 at 11:00 in .NET, Algorithm, Events, External, Idling, Parameters, Performance | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
Let's try to clarify further the various options to retrieve closed faceted shells from a Revit BIM. When processed face by face, the Revit API will return gaps. This issue was addressed by the introduction of the TessellateSolidOrShell method. Let's look at some pros and cons of it, raised by the Revit API discussion forum thread on mapping the triangles it generates to faces. We already looked at the topics of gaps in shells and the TessellateSolidOrShell method now and... Read more →
Posted on May 22, 2014 at 11:00 in Algorithm, Export, Geometry, Performance | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
I am slowly getting back to normal working mode after the AEC Hackathon last weekend and the neat project that we worked on there, so I finally get around to publishing this post that I started working on last week. The only remaining issue is of a physical nature: my feet are still swollen after flying to New York on Friday, sitting and working non-stop at the Hackathon from Saturday morning until Sunday afternoon, standing for a couple of hours... Read more →
Posted on May 20, 2014 at 11:00 in .NET, DWF, Export, Filters, Git, Hackathon, JSON, Performance, SVG, View | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
One of the exciting API enhancements in Revit 2015 is the Import API functionality providing the new DirectShape and TessellatedShapeBuilder classes. These enable significant performance enhancements and powerful new possibilities for generating libraries and importing geometry, especially repetitive shapes. On the other hand, the same limitations on minimum size apply as in the past. DirectShape Performance Regarding the performance, here is a first enthusiastic reaction and quick report from a developer after the initial introduction during the beta phase last... Read more →
Posted on May 15, 2014 at 11:00 in 2015, Element Creation, Performance | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
I recently presented Victor Chekalin's WPF control for viewing Revit fill patterns. In his comment, Victor already mentioned some worries about performance of this control and his intention to create a simple benchmark to monitor it. Well, here it is. At the same time, I also took the opportunity to migrate the fill pattern control to Revit 2015. Migrate the Fill Pattern Viewer Control to Revit 2015 The migration to the Revit 2015 API was extremely straightforward, just like the... Read more →
Posted on April 22, 2014 at 11:00 in 2015, Git, Performance, Utilities, View, WPF | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
Today we take a look a profiling tool that works with Revit add-ins, and a few small new enhancements to my RoomEditorApp. The entire following article was contributed by Ben Bishoff of Ideate Software: Profiling Revit Add-ins using GlowCode Performance profiling tools allow you to increase the speed of your code by pinpointing slow methods and methods that are called excessively. For the past several releases, we have successfully used GlowCode real-time performance profiler (www.glowcode.com) to analyse and improve the... Read more →
Posted on April 11, 2014 at 11:00 in .NET, Debugging, Desktop, Filters, Geometry, Performance | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
Yesterday, I mentioned a couple of Revit API aspects and features that triggered follow-up comments. Seeing as the topic appears to be of general interest, let's pick them up and continue this. I'll add a few other little titbits first, as well, though, related to meat, BIM, and the Revit API, in that order: Help escape the Meatrix Autodesk BIM interoperability landing page BIM acronyms and dictionary Creating non-rectangular openings in walls Reactions on the Revit API abomination Help Escape... Read more →
Posted on February 19, 2014 at 11:00 in .NET, BIM, External, Family, Fun, IFC, Performance | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
Certain applications require large numbers of similar but different objects, e.g. for framing, scaffolding, steel detailing etc. Every one of the past few years, Revit has been further enhanced to better still support these kinds of applications and handle larger numbers of families and instances gracefully and performantly. This work is still on-going. Below, we address a bunch of questions related to creating a new wooden structural BIM application. One aspect of such applications is the need to generate a... Read more →
Posted on February 10, 2014 at 11:00 in BIM, Debugging, Element Creation, Getting Started, Performance, SDK Samples, View | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
We held our first West European Devday in Paris on Monday and I am now sitting in the airport headed for Milano. En route to Milano, I worked at testing Joe Ye's trick to trigger the Idling event (potential SetRaiseWithoutDelay workaround) to force an immediate execution of my external event. I also added a comment from Guy Robinson on Revit requiring focus that had me worried for a moment. However, the solution is easy! Before we get to that, here... Read more →
Posted on December 10, 2013 at 11:00 in .NET, 2014, Desktop, Events, External, Idling, Performance, Photo, Travel, Win32 | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
I arrived back in Europe safe and sound from America. Healthy, as well, in spite of air conditioning and the freezing temperatures in some of the Autodesk University conference rooms. Thank God, I went well prepared with long-sleeved woollen underwear and thick heavy sweaters to face the arctic challenges of the desert town. As I hinted at when describing my last day at AU, I realised that I can significantly improve the implementation of the RoomEditorApp subscription to real-time database... Read more →
Posted on December 09, 2013 at 11:00 in .NET, 2014, Debugging, Desktop, Events, External, Git, Idling, Migration, Performance | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
I solved my two RoomEditorApp Idling issues! They were especially worrying due to the fact that I am planning to present this application in my Autodesk university class DV1736 on Cloud-Based, Real-Time, Round-Trip, 2D Revit Model Editing on Any Mobile Device. By the way, you should now enrol in the AU classes you are interested in – unless you already did :-) Go to the AU class catalogue, sign in, click 'View All Classes', use the filters or keyword search... Read more →
Posted on November 19, 2013 at 11:00 in .NET, 2014, Algorithm, AU, Debugging, Desktop, Events, Git, Idling, Performance, Utilities | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
I have repeatedly underlined the importance of unit testing, and recently presented the RvtUnit project enabling the use of the NUnit unit testing tool for Revit add-ins. The Dynamo team now presents another one; in case you have not already heard of and explored it, Dynamo is an exciting visual programming tool on top of Revit. The best explanation of Dynamo is provided in the Dynamo GitHub repository. Much of the discussion and suggestions for new features etc., is happening... Read more →
Posted on October 22, 2013 at 11:00 in .NET, Debugging, External, Performance, Utilities | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik , Revit API
How to reload an external Revit command without having to restart the Revit session has been a subject of discussion many times in the past, e.g. in reloading an add-in for debug without restart, which lists four possibilities: Set up Visual Studio to efficiently load the desired project and the debugee, use the standard cycle hitting F5 to start debugging, and stop debugging when you need to make code changes. Use the RevitRubyShell or RevitPythonShell to work interactively with the... Read more →
Posted on May 27, 2013 at 11:00 in .NET, Debugging, Macro, Performance, Ribbon, VB | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API
I wish you a Good Friday. Continuing the research and development for my cloud-based round-trip 2D Revit model editing project, I need to determine the boundary loop polygons to represent the furniture and equipment family instances for manipulation on the mobile device. Before I can start extracting their geometry, I need to access the objects themselves, i.e. determine which family instances are contained in the selected room. As always, we use a filtered element collector to access the Revit database... Read more →
Posted on March 29, 2013 at 11:00 in Element Relationships, Filters, Performance | Permalink | 0 Comments | TrackBack (0)
Tags: Jeremy Tammik, Revit API