The Revit SDK available from the Revit Developer Centre has been updated for Revit 2015 R2 and UR4, aka Revit 2015 Release 2 and Revit 2015 Update Release 4.
Here are direct links to download the updated installation packages:
- Revit 2015 SDK for UR4 (Update September 15, 2014) (msi - 242811Kb)
- Revit 2015 SDK for Subscription Release (Update September 15, 2014) (msi - 243040Kb)
New SDK Sample DimensionLeaderEnd in Revit 2015 R2 SDK
The SDK for the Revit 2015 subscription release R2 includes a new sample, DimensionLeaderEnd, showing how to use the new dimension API to move a leader end point.
Here is 59-second video demonstrating how it can be used:
As you would expect, the updated SDK for Revit 2015 UR4 remains the same and does not include any new samples.
In fact, comparing it with my currently installed version shows no relevant differences at all, except in the following two files:
- Revit Platform API Changes and Additions.docx
Family Instance Location Point Definition
Talking about the existing Revit API, here is a typical question about the definition of family instance location points that is of general interest, from a comment on transforming an element, regarding the insertion points resulting from importing an IFC file:
Question: I have some questions on importing elements from IFC:
- Why do all objects imported from the IFC file have a LocationPoint value of (0,0,0)?
- How does one define the LocationPoint of a Family?
- Is the LocationPoint same centroid?
Answer: When an object is imported from IFC, it is impossible to know exactly what insertion point it is supposed to have.
The software could possible make a more intelligent guess than (0,0,0), of course.
For instance, it could pick the centroid of the union of all the object's solids, assuming that they all have the same specific weight.
However, whatever point it picks, it would still be a guess, and therefore (0,0,0) is considered as good as any.
Do you understand?
The location point of a family is simply the origin of the defining family project world coordinate system, which turns into the local coordinate system when an instance of the family is placed into the project document.
It could be defined as the centroid, but it could also be located somewhere completely different.
I would suggest playing around a bit in the family editor, manually, through the user interface, and exploring the behaviour of the resulting family instances when you place them in a project.
Then, very quickly, all will become clear.