Global |
The GlobalParameter type exposes the following members.
Name | Description | |
---|---|---|
![]() | AssemblyInstanceId |
The id of the assembly instance to which the element belongs.
(Inherited from Element) |
![]() ![]() | BoundingBox | Retrieves a box that circumscribes all geometry of the element. (Inherited from Element) |
![]() | Category | Retrieves a Category object that represents the category or sub category in which the
element resides. (Inherited from Element) |
![]() ![]() | CreatedPhaseId |
Id of a Phase at which the Element was created.
(Inherited from Element) |
![]() ![]() | DemolishedPhaseId |
Id of a Phase at which the Element was demolished.
(Inherited from Element) |
![]() ![]() | DesignOption | Returns the design option to which the element belongs. (Inherited from Element) |
![]() | Document | Returns the Document in which the Element resides. (Inherited from Element) |
![]() ![]() | Geometry | Retrieves the geometric representation of the element. (Inherited from Element) |
![]() | GroupId |
The id of the group to which an element belongs.
(Inherited from Element) |
![]() ![]() | Id |
A unique identifier for an Element in an Autodesk Revit project.
(Inherited from Element) |
![]() | IsDrivenByDimension | Indicates whether this parameter is driven by a dimension or not. |
![]() | IsDrivenByFormula | Indicates whether this parameter is driven by a formula or not. |
![]() | IsModifiable |
Identifies if the element is modifiable.
(Inherited from Element) |
![]() | IsReporting | Indicates whether this is a reporting global parameter or not. |
![]() | IsTransient |
Indicates whether an element is transient or permanent.
(Inherited from Element) |
![]() | IsValidObject |
Specifies whether the .NET object represents a valid Revit entity.
(Inherited from Element) |
![]() | LevelId |
The id of the level associated with the element.
(Inherited from Element) |
![]() ![]() | Location | This property is used to find the physical location of an element within a project. (Inherited from Element) |
![]() | Name | A human readable name for the Element. (Inherited from Element) |
![]() | OwnerViewId |
The id of the view that owns the element.
(Inherited from Element) |
![]() ![]() | ParameterBuiltInParameter | Retrieves a parameter from the element given a parameter id. (Inherited from Element) |
![]() | ParameterDefinition | Retrieves a parameter from the element based on its definition. (Inherited from Element) |
![]() | ParameterGuid | Retrieves a parameter from the element given a GUID for a shared parameter. (Inherited from Element) |
![]() ![]() | Parameters | Retrieves a set containing all of the parameters that are contained within the element. (Inherited from Element) |
![]() | ParametersMap | Retrieves a map containing all of the parameters that are contained within the element. (Inherited from Element) |
![]() | Pinned |
Identifies if the element has been pinned to prevent changes.
(Inherited from Element) |
![]() ![]() | UniqueId |
A stable unique identifier for an element within the document.
(Inherited from Element) |
![]() | VersionGuid |
Get the element version Guid.
(Inherited from Element) |
![]() | ViewSpecific |
Identifies if the element is owned by a view.
(Inherited from Element) |
![]() | WorksetId |
Get Id of the Workset which owns the element.
(Inherited from Element) |
Name | Description | |
---|---|---|
![]() | ArePhasesModifiable |
Returns true if the properties CreatedPhaseId and DemolishedPhaseId can be modified for this Element.
(Inherited from Element) |
![]() | CanBeHidden | Indicates if the element can be hidden in the view. (Inherited from Element) |
![]() | CanBeLocked |
Identifies if the element can be locked.
(Inherited from Element) |
![]() | CanChangeReporting | Tests whether the global parameter permits a change of its current value of the IsReporting attribute. |
![]() | CanDeleteSubelement |
Checks if given subelement can be removed from the element.
(Inherited from Element) |
![]() | CanHaveTypeAssigned |
Identifies if the element can have a type assigned.
(Inherited from Element) |
![]() | CanLabelDimension | Tests whether a dimension can be labeled by the global parameter. |
![]() | ChangeTypeId(ElementId) |
Changes the type of the element.
(Inherited from Element) |
![]() ![]() | Create | Creates a new Global Parameter in the given document. |
![]() | DeleteEntity |
Deletes the existing entity created by %schema% in the element
(Inherited from Element) |
![]() | DeleteSubelement |
Removes a subelement from the element.
(Inherited from Element) |
![]() | DeleteSubelements |
Removes the subelements from the element.
(Inherited from Element) |
![]() | Dispose | (Inherited from Element) |
![]() | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
![]() | EvaluateAllParameterValues |
Evaluates all the parameters' values of the element.
(Inherited from Element) |
![]() | EvaluateParameterValues |
Evaluate the parameters' values of the element on the given parameter ID set.
(Inherited from Element) |
![]() | GetAffectedElements | Returns all elements of which properties are driven by this global parameter. |
![]() | GetAffectedGlobalParameters | Returns all other global parameters which refer to this global parameter in their formulas. |
![]() ![]() | GetDefinition |
Get the definition representing this parameter element.
(Inherited from ParameterElement) |
![]() | GetDependentElements |
Get all elements that, from a logical point of view, are the children of this Element.
(Inherited from Element) |
![]() | GetEntity |
Returns the existing entity corresponding to the Schema if it has been saved in the
Element, or an invalid entity otherwise.
(Inherited from Element) |
![]() | GetEntitySchemaGuids |
Returns the Schema guids of any Entities stored in this element.
(Inherited from Element) |
![]() | GetExternalFileReference |
Gets information pertaining to the external file referenced
by the element.
(Inherited from Element) |
![]() | GetExternalResourceReference |
Gets the ExternalResourceReference associated with a specified external resource type.
(Inherited from Element) |
![]() | GetExternalResourceReferenceExpanded |
Gets the collection of ExternalResourceReference associated with a specified external resource type.
(Inherited from Element) |
![]() | GetExternalResourceReferences |
Gets the map of the external resource references referenced
by the element.
(Inherited from Element) |
![]() | GetExternalResourceReferencesExpanded |
Gets the expanded map of the external resource references referenced
by the element.
(Inherited from Element) |
![]() | GetFormula | Returns the parameter's expression in form of a string. |
![]() ![]() | GetGeneratingElementIds |
Returns the ids of the element(s) that generated the input geometry object.
(Inherited from Element) |
![]() | GetGeometryObjectFromReference |
Retrieve one geometric primitive contained in the element given a reference.
(Inherited from Element) |
![]() | GetHashCode | Serves as the default hash function. (Inherited from Object) |
![]() | GetLabeledDimensions | Returns all dimension elements that are currently labeled by this global parameter. |
![]() | GetLabelName | Returns the name of this parameter's label, which is used to label dimension elements. |
![]() | GetMaterialArea |
Gets the area of the material with the given id.
(Inherited from Element) |
![]() | GetMaterialIds |
Gets the element ids of all materials present in the element.
(Inherited from Element) |
![]() | GetMaterialVolume |
Gets the volume of the material with the given id.
(Inherited from Element) |
![]() | GetMonitoredLinkElementIds |
Provides the link instance IDs when the element is monitoring.
(Inherited from Element) |
![]() | GetMonitoredLocalElementIds |
Provides the local element IDs when the element is monitoring.
(Inherited from Element) |
![]() | GetOrderedParameters |
Gets the parameters associated to the element in order.
(Inherited from Element) |
![]() | GetParameter | Retrieves a parameter from the element given identifier. (Inherited from Element) |
![]() | GetParameterFormatOptions |
Returns a FormatOptions override for the element Parameter, or a default FormatOptions if no override exists.
(Inherited from Element) |
![]() | GetParameters | Retrieves the parameters from the element via the given name. (Inherited from Element) |
![]() | GetPhaseStatus |
Gets the status of a given element in the input phase
(Inherited from Element) |
![]() | GetSubelements |
Returns the collection of element subelements.
(Inherited from Element) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object) |
![]() ![]() | GetTypeId |
Returns the identifier of this element's type.
(Inherited from Element) |
![]() | GetValidTypes |
Obtains a set of types that are valid for this element.
(Inherited from Element) |
![]() | GetValue | Obtains the curent value of the global parameter. |
![]() | HasPhases |
Returns true if this Element has the properties CreatedPhaseId and DemolishedPhaseId.
(Inherited from Element) |
![]() | HasValidTypeForReporting | Tests that the global parameter has data of a type that supports reporting. |
![]() | IsCreatedPhaseOrderValid |
Returns true if createdPhaseId and demolishedPhaseId are in order.
(Inherited from Element) |
![]() | IsDemolishedPhaseOrderValid |
Returns true if createdPhaseId and demolishedPhaseId are in order.
(Inherited from Element) |
![]() | IsExternalFileReference |
Determines whether this Element represents an external
file.
(Inherited from Element) |
![]() | IsHidden | Identifies if the element has been permanently hidden in the view. (Inherited from Element) |
![]() | IsMonitoringLinkElement |
Indicate whether an element is monitoring any elements in any linked models.
(Inherited from Element) |
![]() | IsMonitoringLocalElement |
Indicate whether an element is monitoring other local elements.
(Inherited from Element) |
![]() | IsPhaseCreatedValid |
Returns true if createdPhaseId is an allowed value for the property CreatedPhaseId in this Element.
(Inherited from Element) |
![]() | IsPhaseDemolishedValid |
Returns true if demolishedPhaseId is an allowed value for the property DemolishedPhaseId in this Element.
(Inherited from Element) |
![]() | IsValidFormula | Tests that the given expression is a valid as formula for this parameter. |
![]() | IsValidType(ElementId) |
Checks if given type is valid for this element.
(Inherited from Element) |
![]() ![]() | LabelDimension | Labels a dimension with this global parameter. |
![]() | LookupParameter | Attempts to find a parameter on the element which has the given name. (Inherited from Element) |
![]() | RefersToExternalResourceReference |
Determines whether this Element uses external resources associated with
a specified external resource type.
(Inherited from Element) |
![]() | RefersToExternalResourceReferences |
Determines whether this Element uses external resources.
(Inherited from Element) |
![]() ![]() | SetDrivingDimension | Set a dimension to drive the value of this parameter. |
![]() | SetEntity |
Stores the entity in the element. If an Entity described by the same Schema already
exists, it is overwritten.
(Inherited from Element) |
![]() ![]() | SetFormula | Sets a formula expression for this parameter. |
![]() ![]() | SetValue | Sets a new value of the global parameter. |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object) |
![]() | UnlabelDimension | Unlabels a dimension that is currently labeled by this global parameter. |
Global parameters can be used to drive values of dimensions or other elements' parameters. Also, a global parameter can be driven by a selected dimension, the value of which then determines the value of the global parameter. Such parameters can further be used to drive values of other elements' parameters.
See also the GlobalParametersManager class for methods that operate upon global parameters of a document, such as getting all defined global parameters and testing whether a global parameter of certain name already exists or not.There are several ways global parameters can be categorized, but probably the most significant categorization stems from the IsReporting property which divides global parameters into two groups - Reporting and Non-Reporting. The significance of reporting parameters lays in the fact that their values are driven by the dimension that has been labeled by a reporting parameter. It means that the value of a reporting parameter reflects the value of a dimension (length or angle) and gets updated anytime the dimension changes. Non-Reporting parameters behave in the opposite manner - they drive value of dimensions that have been labeled by them, which results in controlling the model's geometry through global parameters' values.
Reporting parameters are limited in several ways. They can be only of Length or Angle type, a requirement due to the fact that a dimension must be able to drive the value. For the same reason reporting parameters may not have formulas.
Non-Reporting parameters, on the other way, can be of almost any type (Length, Integer, Area, etc.) with the exception of ElementId type. Also, Non-Reporting parameters may have assigned formulas in which other global parameters may be used as arguments. This way one global parameter's value can be derived from other parameter (or parameters), and the other parameter can be either reporting or non-reporting.
Global parameters get created via the static method Create(Document, String, ForgeTypeId). It is important to note that each new parameter must have a name that is unique within the document. Parameters are created as non-reporting initially, but programmers are free to modify the IsReporting property once a global parameter is created and is of an eligible type. The programmer can call the HasValidTypeForReporting when in doubt whether parameters of a certain data type can be made reporting. Note, that a parameter may not be made reporting after more than one dimension has been labeled by it. It is because reporting parameter can label (and be driven) by one dimension only.
An alternative way of making a parameter reporting is via the SetDrivingDimension(ElementId) method which labels one dimension by a global parameter and also makes the parameter reporting if it is not reporting yet.
Other important properties of global parameters are IsDrivenByDimension and IsDrivenByFormula, which are mutually exclusive - a parameter that has a formula assigned cannot be driven by a dimension (nor can be reporting) and vice versa.
Like with family parameters, formulas may be assigned to non-reporting global parameters using the SetFormula(String) method (paired with GetFormula to query the current formula.) Formulas may include all standard arithmetic operations and logical operations (as functions and, or, not.) Input to logical operations must be Boolean values (parameters of YesNo type). Consequently, arithmetic operations can be applied to numeric values only. While there are no operations supported for string (text) arguments, strings can be used as results of a logical If operation. Depending on their type (and units), parameters of different value types can be combined. However, unit-less values such as Integer and Number (double) may only be combined with each other. Since formulas can get quite complicated, the method IsValidFormula(String) is available for the programmer to ensure a formula is valid in order to avoid potential exception due to applying an invalid formula.
Probably the most notable feature of global parameters is their ability to "Label" dimensions, a process that establishes dependency of a dimension on a global parameter (or vice versa, depending on the reporting status.) One parameter can label any number of dimensions as long as the parameter is non-reporting. If the parameter labels a multi-segment dimension, values of all segments of this dimension will be equal to the parameter's value. As mentioned above, reporting parameter can label one dimension only, and this dimension can have only one segment. Methods and properties related to labeling include: LabelDimension(ElementId), UnlabelDimension(ElementId), and GetLabeledDimensions. Also in this set is the CanLabelDimension(ElementId) method which indicates whether or not a particular dimension can be labeled. Presently, only single linear dimensions and angles are permitted.
Global parameters can be associated with other global parameters as well as regular family instance parameters (which may report global parameters as their values via the assignment formula.) There are two methods available to find relations among parameters: GetAffectedGlobalParameters and GetAffectedElements. The former returns all other global parameters that refer to a particular global parameter in their respective formulas. The other method returns a set of all elements of which some parameters are controlled by the global parameter. These two methods together with the GetLabeledDimensions can help the programmer in figuring out how model elements relate to each other via global parameters.
Methods for maintaining associations between element properties and global parameters can be found in the Parameter class.
All global parameters, formula-driven, dimension-driven, or independent, have values. A value can be obtained by calling the GetValue method. The object returned by that method is an instance of one of the classes derived from ParameterValue class. The concrete instance is determined by the type of the global parameter (specified upon creation.) Parameters that are neither formula-driven nor dimension-driven (reporting) can have a value assigned. The method to use is SetValue(ParameterValue) and it accepts the same type of ParameterValue that is returned by SetValue. However, the type can also be deduced easily: Text parameters accept only StringParameterValue. Integer and YesNo parameters accept only IntegerParameterValue. All other parameters accept only DoubleParameterValue.