I mentioned a number of uses of the
temporary transaction trick a
few days back.
Autodesk’s own Revit API transaction expert Arnošt Löbel has a very important point to add to that discussion:
The procedure as described is not always going to work.
First of all, you need to regenerate manually before retrieving any modified geometry; even that is not always guaranteed to give you the accurate and proper geometry.
Many times you will need to actually commit the ‘temporary’ transaction, since that is the only way to guarantee that all changes propagate though the model.
In order to undo the temporary transaction, you need to enclose it within a transaction group and roll back that group at the end.
It goes as follows:
- Start a transaction group.
- Start a transaction
- Make changes.
- Commit the transaction
- Retrieve changed geometry
- Roll back the transaction group
Unfortunately, all too many are unaware of the fact that it is safe to read a model only after regeneration, and sometimes only after committing the open transaction.
This is not only related to the ‘temporary transaction’ trick, it is simply a matter of fact: one should query model geometry only between transactions, or at least after regeneration (and auto-joining, if appropriate).
Many thanks to Arnošt for this important enhancement!
Cloud Based Team Foundation Service
We have seen how
Git and Github can
simplify global source code management and sharing, and Victor demonstrates one aspect of this by regularly providing his samples such as the
Revit external access demo via
that platform.
As you obviously know, Autodesk is also driving hard and moving fast towards providing innovative and empowering cloud-based solutions, e.g.
Autodesk 360,
PLM 360 and
BIM 360 Glue.
Now Microsoft joined the club, announcing its own cloud-based software project management platform, e.g. for Visual Studio, the
Team Foundation Service.
You can sign up for a free preview account right away, if you are interested.
Rotating Annotation Symbol
Saikat Bhattacharya discusses using the AnnotationSymbol.Location.Rotate and ElementTransformUtils.RotateElement methods to
rotate an annotation symbol,
and presents a sample code snippet implementing it.

Leave a Reply