Updated SDKs for Revit 2015 R2 and UR4

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:

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:

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:

  1. Why do all objects imported from the IFC file have a LocationPoint value of (0,0,0)?
  2. How does one define the LocationPoint of a Family?
  3. 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.