Application: DynamicModelUpdate
Revit Platform: All
Revit Version: 2012.0
First Released For: 2011.0
Programming Language: C#
Skill Level: Advanced
Category: Geometry
Type: ExternalApplication

Subject: 
Dynamic Model Update used to maintain relative position between elements

Summary: 
Move a section marker to maintain relative position with a window

Classes: 
Autodesk.Revit.DB.UpdaterRegistry
Autodesk.Revit.DB.ElementClassFilter
Autodesk.Revit.DB.ElementCategoryFilter
Autodesk.Revit.DB.LogicalAndFilter
Autodesk.Revit.DB.LocationPoint

Project Files:
Application.cs
SectionUpdater.cs

Description:
1.	When execute the AssociativeSectionUpdater Command
a.	Register the SectionUpdater
b.	Select a view section element and a window, it will associate the two element.
c.	Add a trigger so that the SectionUpdater class will be invoked for any geometry change to the window
2.	When the geometry of a window changes
a.	Move the section to a new location based the window’s location point and rotate the section and make it vertical to the window’s FacingOrientation.
b.	The calculation is on the RejustSectionView function.

Instructions: 
1.	Open AssociativeSection.rvt
2.	Select a view section and a window
3.	Move the window or rotate the wall
4.	Revit will move the section so that the window and section maintain their perpendicular position.
5.	The association of the section and the window can be changed and re-add the updater triggers.