Share

LightType.GetLightTypeFromInstance Method

Creates a light type object from the given document and element ID


Namespace: Autodesk.Revit.DB.Lighting
Assembly: RevitAPI (in RevitAPI.dll) Version: 26.1.0.0 (26.1.0.34)

Syntax

C#

public static LightType GetLightTypeFromInstance(
	Document document,
	ElementId instanceId
)

Parameters

document  Document
The document the instanceId is from
instanceId  ElementId
The ID of the light fixture instance

Return Value

LightType
The newly created LightType object

Exceptions

ExceptionCondition
ArgumentException The ElementId is the argument that is being validated The ElementId is not valid because it is not for a light element.
ArgumentNullException A non-optional argument was null

Example

C#

public LightType GetLightTypeFromLightInstance(Document document)
{
    if(document.IsFamilyDocument) // not used in family document
        return null;

    // In order to get the light infromation, please get a light fixture instance first
    FilteredElementCollector collector = new FilteredElementCollector(document);
    collector.OfClass(typeof(FamilyInstance)).OfCategory(BuiltInCategory.OST_LightingFixtures);
    FamilyInstance lightFixture = collector.Cast<FamilyInstance>().First<FamilyInstance>();
    if (lightFixture == null)    // check null reference
        return null;

    // Get the LightType for given light fixture
    return LightType.GetLightTypeFromInstance(document, lightFixture.Id);
}

VB

Public Function GetLightTypeFromLightInstance(document As Document) As LightType
   If document.IsFamilyDocument Then
      ' not used in family document
      Return Nothing
   End If

   ' In order to get the light infromation, please get a light fixture instance first
   Dim collector As New FilteredElementCollector(document)
   collector.OfClass(GetType(FamilyInstance)).OfCategory(BuiltInCategory.OST_LightingFixtures)
   Dim lightFixture As FamilyInstance = collector.Cast(Of FamilyInstance)().First()
   If lightFixture Is Nothing Then
      ' check null reference
      Return Nothing
   End If

   ' Get the LightType for given light fixture
   Return LightType.GetLightTypeFromInstance(document, lightFixture.Id)
End Function

See Also

Reference

Was this information helpful?