Application: CreateSimpleAreaRein
Revit product and version: Revit Structure 2008
Last Modified: 19/12/2006
Modified By: KY Autodesk HSL
Programming Language: C#

Subject: This sample uses to show how to create AreaReinforcement and change its parameters by Revit API.

Classes: 
Autodesk.Revit.Elemetns.AreaReinforcement
Autodesk.Revit.Elements.Floor
Autodesk.Revit.Elements.Wall
Autodesk.Revit.Geometry.CurveArray
Autodesk.Revit.Symbols.AreaReinforcementType
Autodesk.Revit.Parameter

Project Files:
CreateSimpleAreaRein.cs
Implement the IExternalCommand interface, and show user how to create AreaReinforcment and change its parameters.

AreaReinData.cs
Data and data manager of the AreaReinforcement. Store all kinds of AreaReinforcementType in current project and contain method use to change value of parameter.

ParameterUtil.cs
This file defines a class ParameterUtil contains methods use to manage parameter. Such as find parameter by name and change value of parameter.

GeomHelper.cs
This file defines a class GeomHelper provides methods to get geometry data use to create AreaReinforcement on wall or slab.

GeomUtil.cs
This file defines a class GeomUtil provides some common geometry estimate and calculates methods.

Description: 
This sample will provide the following functionality:
-	Create an Area Reinforcement in a rectangular shape on the selected slab or wall. The boundary would be the same as the slab/wall boundaries. The application can verify the boundary of the selected slab/wall is rectangular.
-	A dialog to the user asking for the following information:
-	 Select type of Reinforcement which you want to create
-	 Select “Layout Rule” in the “Construction” Parameter Group
-	 All the Layers are listed in the “Layer” Parameter Group. There are four layers. Each layer should include “True” or “False” selection, select “True” means you can change the property of rebar on this layer, otherwise you can not change them.
-	The type used for creating Area Reinforcement can be found in the project if user have loaded an AreaReinformentType in the project or have drawn an AreaReinforcement in current project.
-	The slab/wall’s geometry information is available as Geometry property of the Floor/Wall object.
-	The Parameters in “Layer” Parameter Group can be found from the Area Reinforcement by using the following generic parameters:
-	REBAR_SYSTEM_ACTIVE_BOTTOM_DIR_2, 
-	REBAR_SYSTEM_ACTIVE_BOTTOM_DIR_1, 
-	REBAR_SYSTEM_ACTIVE_TOP_DIR_2, 
-	REBAR_SYSTEM_ACTIVE_TOP_DIR_1, 
-	REBAR_SYSTEM_LAYOUT_RULE

Instructions: 
1.	Draw a structural horizontal rectangular Slab or a structural vertical rectangular Wall and Select it.
2.	Run this command.