2023 Class
Changes 2
C

ColorFillScheme

Description:
Represents a color scheme could be used to colorfy elements in floor plan views and section views.
Remarks:

A color scheme is based on element category and one of the category parameter, it contains a set of ColorFillSchemeEntry which stores parameter value, color, fill pattern and other entry data. The entry paramater values may be a range or a single value, based on the IsByRange property. Then elements with the specified category could be colored with the color and fill pattern of matching entry whose parameter value or value range matches the element parameter value.

You can retrieve the entries with GetEntries., or modify entries with AddEntry(ColorFillSchemeEntry), RemoveEntry(ColorFillSchemeEntry), UpdateEntry(ColorFillSchemeEntry) and [M:Autodesk.Revit.DB.ColorFillScheme.SetEntries(System.Collections.Generic.IList`1{Autodesk.Revit.DB.ColorFillSchemeEntry})].

Unlike most of the other elements, the color scheme works in an "asynchronous" way in UI:

  1. If document elements change, the color scheme will not be updated immediately.
  2. If color schemes changes, the document elements will not be updated immediately too.

API works slightly different with UI:

  1. GetEntries. will return the entries corresponding to the latest document elements status immediately.
  2. The entries modification operation will retrieve the latest entries with GetEntries. at first, and then modify those entries by request, but document elements will still not be updated immediately.
  3. To modify multiple entries, it's better to use [M:Autodesk.Revit.DB.ColorFillScheme.SetEntries(System.Collections.Generic.IList`1{Autodesk.Revit.DB.ColorFillSchemeEntry})] but not modify them one by one with other methods for better performance.

Notes:

  • To apply a color scheme whose CategoryId property is OST_Areas to an area plan view, the AreaSchemeId property must be the same as the view if it is not used as a template.
  • To generate a new color scheme, you have to use Duplicate(String) method to duplicate form an existing one.
  • There should not exist two entries values that are the same in a color scheme. if the StorageType property is Double, then the value accuracy should be based on FormatOptions property.
Inheritance Hierarchy:
System.Object
  Autodesk.Revit.DB.Element
    Autodesk.Revit.DB.ColorFillScheme
public class ColorFillScheme : Element
Name Return Type Description Inherited From
M AddEntry(ColorFillSchemeEntry) None Adds new entry to the scheme.
M AreEntriesConsistentWithScheme(IList<ColorFillSchemeEntry>) EntryAndSchemeConsistency Checks whether the entries can be set to the scheme or not.
M CanDefineByRange() bool Checks whether the scheme entries can be explained by range.
M CanRemoveEntry(ColorFillSchemeEntry) bool Checks whether entry can be removed from the scheme.
M CanUpdateEntry(ColorFillSchemeEntry) bool Checks whether entry exists in the scheme and not the same as input one.
M Duplicate(String) ElementId Generates a copy of current scheme.
M GetEntries() IList<ColorFillSchemeEntry> Retrieves copies of all entries.
M GetFormatOptions() FormatOptions Returns the FormatOptions of the scheme.
M GetSupportedParameterIds() IList<ElementId> Retrieves collection of all parameters supported by the scheme.
M IsEntryConsistentWithScheme(ColorFillSchemeEntry) EntryAndSchemeConsistency Checks whether an entry can be added to the scheme or not.
M IsValidParameterDefinitionId(ElementId) bool Checks whether the input parameter id can be applied to the scheme.
M IsValidSchemeName(String) bool Checks whether the name is valid for new generated scheme.
M RemoveEntry(ColorFillSchemeEntry) None Removes an entry whose parameter value is the same as the input from the scheme
M SetEntries(IList<ColorFillSchemeEntry>) None Update scheme entries in batch mode.
M SetFormatOptions(FormatOptions) None Sets the FormatOptions of the scheme.
M SortEntries() None Sorts the scheme entries ascending.
M UpdateEntry(ColorFillSchemeEntry) None Updates the scheme entry with the same parameter value as the input entry.
M ArePhasesModifiable() bool Returns true if the properties CreatedPhaseId and DemolishedPhaseId can be modified for this Element. Element
M CanBeHidden(View) bool Indicates if the element can be hidden in the view. Element
M CanBeLocked() bool Identifies if the element can be locked. Element
M CanDeleteSubelement(Subelement) bool Checks if given subelement can be removed from the element. Element
M CanHaveTypeAssigned() bool Identifies if the element can have a type assigned. Element
M CanHaveTypeAssigned(Document, ICollection<ElementId>) bool Checks if all elements in the set can have a type assigned. Element
M ChangeTypeId(Document, ICollection<ElementId>, ElementId) IDictionary Changes the type of all elements in the given set. Element
M ChangeTypeId(ElementId) ElementId Changes the type of the element. Element
M DeleteEntity(Schema) bool Deletes the existing entity created by %schema% in the element Element
M DeleteSubelement(Subelement) bool Removes a subelement from the element. Element
M DeleteSubelements(IList<Subelement>) bool Removes the subelements from the element. Element
M Dispose() None Releases all resources used by the Element
M GetChangeTypeAny() ChangeType Returns ChangeType associated with any change in an element. Element
M GetChangeTypeElementAddition() ChangeType Returns ChangeType associated with element addition Element
M GetChangeTypeElementDeletion() ChangeType Returns ChangeType associated with element deletion. Element
M GetChangeTypeGeometry() ChangeType Returns ChangeType associated with a change in the geometry of an element Element
M GetChangeTypeParameter(ElementId) ChangeType Returns ChangeType associated with a change in a parameter's value Element
M GetChangeTypeParameter(Parameter) ChangeType Returns ChangeType associated with a change in a parameter's value Element
M GetDependentElements(ElementFilter) IList<ElementId> Get all elements that, from a logical point of view, are the children of this Element. Element
M GetEntity(Schema) The returned Entity. Returns the existing entity corresponding to the Schema if it has been saved in the Element, or an invalid entity otherwise. Element
M GetEntitySchemaGuids() IList<Guid> Returns the Schema guids of any Entities stored in this element. Element
M GetExternalFileReference() ExternalFileReference Gets information pertaining to the external file referenced by the element. Element
M GetExternalResourceReferenceExpanded(ExternalResourceType) IList<ExternalResourceReference> Gets the collection of ExternalResourceReference associated with a specified external resource type. Element
M GetExternalResourceReference(ExternalResourceType) ExternalResourceReference Gets the ExternalResourceReference associated with a specified external resource type. Element
M GetExternalResourceReferencesExpanded() IDictionary Gets the expanded map of the external resource references referenced by the element. Element
M GetExternalResourceReferences() IDictionary Gets the map of the external resource references referenced by the element. Element
M GetGeneratingElementIds(GeometryObject) ICollection<ElementId> Returns the ids of the element(s) that generated the input geometry object. Element
M GetGeometryObjectFromReference(Reference) GeometryObject Retrieve one geometric primitive contained in the element given a reference. Element
M GetMaterialArea(ElementId, Boolean) double Gets the area of the material with the given id. Element
M GetMaterialIds(Boolean) ICollection<ElementId> Gets the element ids of all materials present in the element. Element
M GetMaterialVolume(ElementId) double Gets the volume of the material with the given id. Element
M GetMonitoredLinkElementIds() IList<ElementId> Provides the link instance IDs when the element is monitoring. Element
M GetMonitoredLocalElementIds() IList<ElementId> Provides the local element IDs when the element is monitoring. Element
M GetOrderedParameters() IList<Parameter> Gets the parameters associated to the element in order. Element
M GetParameterFormatOptions(ElementId) FormatOptions Returns a FormatOptions override for the element Parameter, or a default FormatOptions if no override exists. Element
M GetParameter(ForgeTypeId) Parameter Retrieves a parameter from the element given identifier. Element
M GetParameters(String) IList<Parameter> Retrieves the parameters from the element via the given name. Element
M GetPhaseStatus(ElementId) ElementOnPhaseStatus Gets the status of a given element in the input phase Element
M GetSubelements() IList<Subelement> Returns the collection of element subelements. Element
M GetTypeId() ElementId Returns the identifier of this element's type. Element
M GetValidTypes() ICollection<ElementId> Obtains a set of types that are valid for this element. Element
M GetValidTypes(Document, ICollection<ElementId>) ICollection<ElementId> Obtains a set of types that are valid for all given elements. Element
M HasPhases() bool Returns true if this Element has the properties CreatedPhaseId and DemolishedPhaseId. Element
M IsCreatedPhaseOrderValid(ElementId) bool Returns true if createdPhaseId and demolishedPhaseId are in order. Element
M IsDemolishedPhaseOrderValid(ElementId) bool Returns true if createdPhaseId and demolishedPhaseId are in order. Element
M IsExternalFileReference() bool Determines whether this Element represents an external file. Element
M IsHidden(View) bool Identifies if the element has been permanently hidden in the view. Element
M IsMonitoringLinkElement() bool Indicate whether an element is monitoring any elements in any linked models. Element
M IsMonitoringLocalElement() bool Indicate whether an element is monitoring other local elements. Element
M IsPhaseCreatedValid(ElementId) bool Returns true if createdPhaseId is an allowed value for the property CreatedPhaseId in this Element. Element
M IsPhaseDemolishedValid(ElementId) bool Returns true if demolishedPhaseId is an allowed value for the property DemolishedPhaseId in this Element. Element
M IsValidType(Document, ICollection<ElementId>, ElementId) bool Checks if given type is valid for the set of elements. Element
M IsValidType(ElementId) bool Checks if given type is valid for this element. Element
M LookupParameter(String) nullNothingnullptr Attempts to find a parameter on the element which has the given name. Element
M RefersToExternalResourceReference(ExternalResourceType) bool Determines whether this Element uses external resources associated with a specified external resource type. Element
M RefersToExternalResourceReferences() bool Determines whether this Element uses external resources. Element
M SetEntity(Entity) None Stores the entity in the element. If an Entity described by the same Schema already exists, it is overwritten. Element
Name Return Type Description Inherited From
P AreaSchemeId ElementId Represents the id of AreaScheme of area plan views that this scheme could be applied to.
P CategoryId ElementId Represents the element category that can be colored by this scheme.
P IsByRange bool Represents if the parameter values in entries are treated as value range or not.
P IsLinkedFilesIncluded bool Represent if the scheme includes entries whose parameter values are based on elements from linked files.
P ParameterDefinition ElementId Represents the parameter of the elements that this scheme could be used to color.
P StorageType StorageType Represents the type of parameter values stored in entries.
P Title string Represents the title displayed in .
P AssemblyInstanceId ElementId The id of the assembly instance to which the element belongs. Element
P BoundingBox BoundingBoxXYZ Retrieves a box that circumscribes all geometry of the element. Element
P Category Category Retrieves a Category object that represents the category or sub category in which the element resides. Element
P CreatedPhaseId ElementId Id of a Phase at which the Element was created. Element
P DemolishedPhaseId ElementId Id of a Phase at which the Element was demolished. Element
P DesignOption DesignOption Returns the design option to which the element belongs. Element
P Document Document Returns the Document in which the Element resides. Element
P Geometry GeometryElement Retrieves the geometric representation of the element. Element
P GroupId ElementId The id of the group to which an element belongs. Element
P Id ElementId A unique identifier for an Element in an Autodesk Revit project. Element
P IsModifiable bool Identifies if the element is modifiable. Element
P IsTransient bool Indicates whether an element is transient or permanent. Element
P IsValidObject bool Specifies whether the .NET object represents a valid Revit entity. Element
P LevelId ElementId The id of the level associated with the element. Element
P Location Location This property is used to find the physical location of an element within a project. Element
P Name string A human readable name for the Element. Element
P OwnerViewId ElementId The id of the view that owns the element. Element
P Parameter Parameter Retrieves a parameter from the element given a parameter id. Element
P Parameter Parameter Retrieves a parameter from the element based on its definition. Element
P Parameter Parameter Retrieves a parameter from the element given a GUID for a shared parameter. Element
P ParametersMap ParameterMap Retrieves a map containing all of the parameters that are contained within the element. Element
P Parameters ParameterSet Retrieves a set containing all of the parameters that are contained within the element. Element
P Pinned bool Identifies if the element has been pinned to prevent changes. Element
P UniqueId string A stable unique identifier for an element within the document. Element
P VersionGuid Guid Get the element version Guid. Element
P ViewSpecific bool Identifies if the element is owned by a view. Element
P WorksetId WorksetId Get Id of the Workset which owns the element. Element