Autodesk Developer Network 2011
Autodesk
Geometry API
§Extract the original geometry of a family instance
§Before cuts or joins have been applied automatically
§
§
§
§
§GeometryCreationUtilities - Construct basic solids
§CreateBlendGeometry()
§CreateExtrusionGeometry()
§CreateRevolvedGeometry()
§CreateSweptGeometry()
§CreateSweptBlendGeometry()
§
§BooleanOperationsUtils - Execute a boolean operation
§ExecuteBooleanOperation()
§ExecuteBooleanOperationModifyingOriginalSolid()
§GeometryObject.IsElementGeometry
§
§
§
§
§
Options m_options = new Options();
GeometryElement orginalGeo = instance.GetOriginalGeometry(m_options);
Geometry API has been a major focus area in Revit 2012 API.

With the new enhancements, now we can access the beam, column geometry before the fitting and joining happens in the model which is done by Revit. FamilyInstance.GetOriginalGeometry() returns the original geometry of the instance before the instance is modified by joins, copings, cuts, extensions, and other post-processing steps.

We can now construct basic solid shapes  from input curves using the GeometryCreationUtilities. They include blend, extrusion, revolved geometry, swept, and swept blend geometry. The resulting geometry is not added to the document as any element but can be used as inputs for finding 3D intersection, boolean or geometric operations or input faces to AVF.

We can now also execute boolean operations like Union, Difference or Intersect on pair of solid geometry objects using a utility called BooleanOperationsUtils.