C

Family

Description:
An element that represents a custom family (not a system family) in Autodesk Revit.
Remarks:
Custom families within the Revit API represented by three objects - Family, FamilySymbol and FamilyInstance. Each object plays a significant part in the structure of families. The Family element represents the entire family that consists of a collection of types, such as an 'I Beam'. You can think of that object as representing the entire family file. The Family object contains a number of FamilySymbol elements. The FamilySymbol object represents a specific set of family settings within that Family and represents what is known in the Revit user interface as a Type, such as 'W14x32'. The FamilyInstance object represents an actual instance of that type placed the Autodesk Revit project. For example the FamilyInstance would be a single instance of a W14x32 column within the project.
Inheritance Hierarchy:
System.Object
  Autodesk.Revit.DB.Element
    Autodesk.Revit.DB.Family
public class Family : Element
public void GetInfoForSymbols(Family family)
{
    StringBuilder message = new StringBuilder("Selected element's family name is : " + family.Name);
    ISet<ElementId> familySymbolIds = family.GetFamilySymbolIds();

    if (familySymbolIds.Count == 0)
    {
        message.AppendLine("Contains no family symbols.");
    }
    else
    {
        message.AppendLine("The family symbols contained in this family are : ");

        // Get family symbols which is contained in this family
        foreach (ElementId id in familySymbolIds)
        {
            FamilySymbol familySymbol = family.Document.GetElement(id) as FamilySymbol;
            // Get family symbol name
            message.AppendLine("\nName: " + familySymbol.Name);
            foreach (ElementId materialId in familySymbol.GetMaterialIds(false))
            {
                Material material = familySymbol.Document.GetElement(materialId) as Material;
                message.AppendLine("\nMaterial : " + material.Name);
            }
        }
    }

    TaskDialog.Show("Revit",message.ToString());
}
Name Return Type Description Inherited From
M ArePhasesModifiable() Boolean Returns true if the properties CreatedPhaseId and DemolishedPhaseId can be modified for this Element. (Inherited from Element ) Element
M CanBeHidden(View) Boolean Indicates if the element can be hidden in the view. (Inherited from Element ) Element
M CanBeLocked() Boolean Identifies if the element can be locked. (Inherited from Element ) Element
M CanDeleteSubelement(Subelement) Boolean Checks if given subelement can be removed from the element. (Inherited from Element ) Element
M CanHaveStructuralSection() Boolean Identifies if this Family can have a structural section.
M CanHaveTypeAssigned() Boolean Identifies if the element can have a type assigned. (Inherited from Element ) Element
M CanLoadFamilies(Document) Boolean Checks whether the document is in a state that allows the loading of families.
M ChangeTypeId(ElementId) ElementId Changes the type of the element. (Inherited from Element ) Element
M DeleteEntity(Schema) Boolean Deletes the existing entity created by %schema% in the element (Inherited from Element ) Element
M DeleteSubelement(Subelement) Boolean Removes a subelement from the element. (Inherited from Element ) Element
M DeleteSubelements(IList<Subelement>) Boolean Removes the subelements from the element. (Inherited from Element ) Element
M Dispose() None (Inherited from Element ) Element
M Equals None Determines whether the specified object is equal to the current object. (Inherited from Object ) Object
M EvaluateAllParameterValues() IList<EvaluatedParameter> Evaluates all the parameters' values of the element. (Inherited from Element ) Element
M EvaluateParameterValues(ISet<ElementId>) IList<EvaluatedParameter> Evaluate the parameters' values of the element on the given parameter ID set. (Inherited from Element ) Element
M ExtractPartAtom(String) None Writes a PartAtom XML from the contents of a family object.
M GetDependentElements(ElementFilter) IList<ElementId> Get all elements that, from a logical point of view, are the children of this Element. (Inherited from Element ) Element
M GetEntity(Schema) Entity Returns the existing entity corresponding to the Schema if it has been saved in the Element, or an invalid entity otherwise. (Inherited from Element ) Element
M GetEntitySchemaGuids() IList<Guid> Returns the Schema guids of any Entities stored in this element. (Inherited from Element ) Element
M GetExternalFileReference() ExternalFileReference Gets information pertaining to the external file referenced by the element. (Inherited from Element ) Element
M GetExternalResourceReference(ExternalResourceType) ExternalResourceReference Gets the ExternalResourceReference associated with a specified external resource type. (Inherited from Element ) Element
M GetExternalResourceReferenceExpanded(ExternalResourceType) IList<ExternalResourceReference> Gets the collection of ExternalResourceReference associated with a specified external resource type. (Inherited from Element ) Element
M GetExternalResourceReferences() IDictionary<ExternalResourceType,ExternalResourceReference> Gets the map of the external resource references referenced by the element. (Inherited from Element ) Element
M GetExternalResourceReferencesExpanded() ExternalResourceType Gets the expanded map of the external resource references referenced by the element. (Inherited from Element ) Element
M GetFamilySymbolIds() ISet<ElementId> Gets the ids of the FamilySymbols owned by this Family.
M GetFamilyTypeParameterValues(ElementId) ISet<ElementId> Returns all applicable values for a FamilyType parameter of this family.
M GetGeneratingElementIds(GeometryObject) ICollection<ElementId> Returns the ids of the element(s) that generated the input geometry object. (Inherited from Element ) Element
M GetGeometryObjectFromReference(Reference) GeometryObject Retrieve one geometric primitive contained in the element given a reference. (Inherited from Element ) Element
M GetHashCode None Serves as the default hash function. (Inherited from Object ) Object
M GetMaterialArea(ElementId, Boolean) Double Gets the area of the material with the given id. (Inherited from Element ) Element
M GetMaterialIds(Boolean) ICollection<ElementId> Gets the element ids of all materials present in the element. (Inherited from Element ) Element
M GetMaterialVolume(ElementId) Double Gets the volume of the material with the given id. (Inherited from Element ) Element
M GetMonitoredLinkElementIds() IList<ElementId> Provides the link instance IDs when the element is monitoring. (Inherited from Element ) Element
M GetMonitoredLocalElementIds() IList<ElementId> Provides the local element IDs when the element is monitoring. (Inherited from Element ) Element
M GetOrderedParameters() IList<Parameter> Gets the parameters associated to the element in order. (Inherited from Element ) Element
M GetParameter(ForgeTypeId) Parameter Retrieves a parameter from the element given identifier. (Inherited from Element ) Element
M GetParameterFormatOptions(ElementId) FormatOptions Returns a FormatOptions override for the element Parameter, or a default FormatOptions if no override exists. (Inherited from Element ) Element
M GetParameters(String) IList<Parameter> Retrieves the parameters from the element via the given name. (Inherited from Element ) Element
M GetPhaseStatus(ElementId) ElementOnPhaseStatus Gets the status of a given element in the input phase (Inherited from Element ) Element
M GetSubelements() IList<Subelement> Returns the collection of element subelements. (Inherited from Element ) Element
M GetType None Gets the Type of the current instance. (Inherited from Object ) Object
M GetTypeId() ElementId Returns the identifier of this element's type. (Inherited from Element ) Element
M GetValidTypes() ICollection<ElementId> Obtains a set of types that are valid for this element. (Inherited from Element ) Element
M HasLargeSketches() Boolean Checks whether the family contains sketches with a large number of elements.
M HasPhases() Boolean Returns true if this Element has the properties CreatedPhaseId and DemolishedPhaseId. (Inherited from Element ) Element
M IsAppropriateCategoryId(ElementId) Boolean Identifies if the input category id can be assigned as the new category for this family.
M IsCreatedPhaseOrderValid(ElementId) Boolean Returns true if createdPhaseId and demolishedPhaseId are in order. (Inherited from Element ) Element
M IsDemolishedPhaseOrderValid(ElementId) Boolean Returns true if createdPhaseId and demolishedPhaseId are in order. (Inherited from Element ) Element
M IsExternalFileReference() Boolean Determines whether this Element represents an external file. (Inherited from Element ) Element
M IsHidden(View) Boolean Identifies if the element has been permanently hidden in the view. (Inherited from Element ) Element
M IsMonitoringLinkElement() Boolean Indicate whether an element is monitoring any elements in any linked models. (Inherited from Element ) Element
M IsMonitoringLocalElement() Boolean Indicate whether an element is monitoring other local elements. (Inherited from Element ) Element
M IsPhaseCreatedValid(ElementId) Boolean Returns true if createdPhaseId is an allowed value for the property CreatedPhaseId in this Element. (Inherited from Element ) Element
M IsPhaseDemolishedValid(ElementId) Boolean Returns true if demolishedPhaseId is an allowed value for the property DemolishedPhaseId in this Element. (Inherited from Element ) Element
M IsValidType(ElementId) Boolean Checks if given type is valid for this element. (Inherited from Element ) Element
M LookupParameter(String) Parameter Attempts to find a parameter on the element which has the given name. (Inherited from Element ) Element
M RefersToExternalResourceReference(ExternalResourceType) Boolean Determines whether this Element uses external resources associated with a specified external resource type. (Inherited from Element ) Element
M RefersToExternalResourceReferences() Boolean Determines whether this Element uses external resources. (Inherited from Element ) Element
M SetEntity(Entity) None Stores the entity in the element. If an Entity described by the same Schema already exists, it is overwritten. (Inherited from Element ) Element
M ToString None Returns a string that represents the current object. (Inherited from Object ) Object
Name Return Type Description Inherited From
P AssemblyInstanceId ElementId The id of the assembly instance to which the element belongs. (Inherited from Element ) Element
P BoundingBox BoundingBoxXYZ Retrieves a box that circumscribes all geometry of the element. (Inherited from Element ) Element
P Category Category Retrieves a Category object that represents the category or sub category in which the element resides. (Inherited from Element ) Element
P CreatedPhaseId ElementId Id of a Phase at which the Element was created. (Inherited from Element ) Element
P CurtainPanelHorizontalSpacing double For Curtain Panel families, the horizontal spacing of the driving mesh.
P CurtainPanelTilePattern TilePatternsBuiltIn For Curtain Panel families, the choice of tile pattern.
P CurtainPanelVerticalSpacing double For Curtain Panel families, the vertical spacing of the driving mesh.
P DemolishedPhaseId ElementId Id of a Phase at which the Element was demolished. (Inherited from Element ) Element
P DesignOption DesignOption Returns the design option to which the element belongs. (Inherited from Element ) Element
P Document Document Returns the Document in which the Element resides. (Inherited from Element ) Element
P FamilyCategory Category Retrieves or sets a Category object that represents the category or sub category in which the elements ( this family could generate ) reside.
P FamilyCategoryId ElementId The id of the category or sub category in which the elements that this family could generate reside.
P FamilyPlacementType FamilyPlacementType Identifies the type of placement required by a given family.
P Geometry GeometryElement Retrieves the geometric representation of the element. (Inherited from Element ) Element
P GroupId ElementId The id of the group to which an element belongs. (Inherited from Element ) Element
P Id ElementId A unique identifier for an Element in an Autodesk Revit project. (Inherited from Element ) Element
P IsConceptualMassFamily bool Whether the Family is a Conceptual Mass family.
P IsCurtainPanelFamily bool Whether the Family is a Curtain Panel family. Curtain Panel family symbols are used as the ObjectTypes of DividedSurface elements.
P IsEditable bool True if the family supports editing, false otherwise.
P IsInPlace bool True if the family is an in-place family, false if the family is a loadable family.
P IsModifiable bool Identifies if the element is modifiable. (Inherited from Element ) Element
P IsOwnerFamily bool True if the family is the owner family for its own editable document, false otherwise.
P IsParametric bool Identifies whether the family contains parametric relations between some of its elements.
P IsTransient bool Indicates whether an element is transient or permanent. (Inherited from Element ) Element
P IsUserCreated bool Determine whether the family has been defined by the user.
P IsValidObject Boolean Specifies whether the .NET object represents a valid Revit entity. (Inherited from Element ) Element
P LevelId ElementId The id of the level associated with the element. (Inherited from Element ) Element
P Location Location This property is used to find the physical location of an element within a project. (Inherited from Element ) Element
P Name string A human readable name for the Element. (Inherited from Element ) Element
P OwnerViewId ElementId The id of the view that owns the element. (Inherited from Element ) Element
P Parameter[BuiltInParameter] Parameter Retrieves a parameter from the element given a parameter id. (Inherited from Element ) Element
P Parameter[Definition] Parameter Retrieves a parameter from the element based on its definition. (Inherited from Element ) Element
P Parameter[Guid] Parameter Retrieves a parameter from the element given a GUID for a shared parameter. (Inherited from Element ) Element
P Parameters ParameterSet Retrieves a set containing all of the parameters that are contained within the element. (Inherited from Element ) Element
P ParametersMap ParameterMap Retrieves a map containing all of the parameters that are contained within the element. (Inherited from Element ) Element
P Pinned bool Identifies if the element has been pinned to prevent changes. (Inherited from Element ) Element
P ShowSpatialElementCalculationPoint bool For families that can have a calculation point for spatial elements, hide or show the calculation point. SpatialElementCalculationPoint elements.
P StructuralCodeName string The family's structural code name.
P StructuralFamilyNameKey string The family's structural section shape name key.
P StructuralMaterialType StructuralMaterialType The family's structural material type.
P StructuralSectionShape StructuralSectionShape The family's structural section shape.
P UniqueId string A stable unique identifier for an element within the document. (Inherited from Element ) Element
P VersionGuid Guid Get the element version Guid. (Inherited from Element ) Element
P ViewSpecific bool Identifies if the element is owned by a view. (Inherited from Element ) Element
P WorksetId WorksetId Get Id of the Workset which owns the element. (Inherited from Element ) Element