This class encapsulates light information.
Namespace: Autodesk.Revit.DB.Lighting
Assembly: RevitAPI (in RevitAPI.dll) Version: 2015.0.0.0 (2015.0.0.0)
Since:
2013
Syntax
Visual Basic |
---|
Public Class LightType _
Implements IDisposable |
Examples
CopyC#
public void GetLightData(Document document)
{
LightType lightData = null;
if (document.IsFamilyDocument)
{
LightFamily lightFamily = LightFamily.GetLightFamily(document);
for (int index = 0; index < lightFamily.GetNumberOfLightTypes(); index++)
{
lightData = lightFamily.GetLightType(index);
}
}
else
{
FilteredElementCollector collector = new FilteredElementCollector(document);
collector.OfClass(typeof(FamilyInstance)).OfCategory(BuiltInCategory.OST_LightingFixtures);
FamilyInstance lightFixture = collector.Cast<FamilyInstance>().First<FamilyInstance>();
if (lightFixture == null)
return;
lightData = LightType.GetLightTypeFromInstance(document, lightFixture.Id);
}
Color filterColor = lightData.ColorFilter;
LossFactor lossFactor = lightData.GetLossFactor();
if (lossFactor is AdvancedLossFactor)
{
AdvancedLossFactor advancedFactor = lossFactor as AdvancedLossFactor;
double luminaireValue = advancedFactor.LuminaireDirtDepreciation;
}
}
CopyVB.NET
Public Sub GetLightData(document As Document)
Dim lightData As LightType = Nothing
If document.IsFamilyDocument Then
Dim lightFamily__1 As LightFamily = LightFamily.GetLightFamily(document)
For index As Integer = 0 To lightFamily__1.GetNumberOfLightTypes() - 1
lightData = lightFamily__1.GetLightType(index)
Next
Else
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
Return
End If
lightData = LightType.GetLightTypeFromInstance(document, lightFixture.Id)
End If
Dim filterColor As Color = lightData.ColorFilter
Dim lossFactor As LossFactor = lightData.GetLossFactor()
If TypeOf lossFactor Is AdvancedLossFactor Then
Dim advancedFactor As AdvancedLossFactor = TryCast(lossFactor, AdvancedLossFactor)
Dim luminaireValue As Double = advancedFactor.LuminaireDirtDepreciation
End If
End Sub
Inheritance Hierarchy
See Also