Parameters can be affected by each other.
There are relationships between Parameters where the value of one Parameter can affect:
Additionally, some parameters are always read-only.
Some parameters are computed in Revit, such as wall Length and Area parameter. These parameters are always read-only because they depend on the element's internal state.

Figure 29: Wall computed parameters
In this code sample, the Sill Height parameter for an opening is adjusted, which results in the Head Height parameter being re-computed:
|
Code Region: Parameter relationship example |
// opening should be an opening such as a window or a door
public void ShowParameterRelationship(FamilyInstance opening)
{
// get the original Sill Height and Head Height parameters for the opening
Parameter sillPara = opening.get_Parameter(BuiltInParameter.INSTANCE_SILL_HEIGHT_PARAM);
Parameter headPara = opening.get_Parameter(BuiltInParameter.INSTANCE_HEAD_HEIGHT_PARAM);
double sillHeight = sillPara.AsDouble();
double origHeadHeight = headPara.AsDouble();
// Change the Sill Height only and notice that Head Height is recalculated
sillPara.Set(sillHeight + 2.0);
double newHeadHeight = headPara.AsDouble();
MessageBox.Show("Old head height: " + origHeadHeight + "; new head height: "
+ newHeadHeight);
}
|
Global parameters also have relationships with other parameters. See the GlobalParameter Basics topic for more information.