Namespace:
Autodesk.Revit.DB.Lighting
LightType
Class
Description:
This class encapsulates light information.
This class encapsulates light information.
Inheritance Hierarchy:
System.Object
Autodesk.Revit.DB.Lighting.LightType
System.Object
Autodesk.Revit.DB.Lighting.LightType
Syntax
public class LightType : IDisposable
Examples
public void GetLightData(Document document)
{
// This code demonstrates how to get light information from project and family document
LightType lightData = null;
if (document.IsFamilyDocument)
{
// In family document, get LightType via LightFamily.GetLightType(int) method.
LightFamily lightFamily = LightFamily.GetLightFamily(document);
for (int index = 0; index < lightFamily.GetNumberOfLightTypes(); index++)
{
lightData = lightFamily.GetLightType(index);
}
}
else
{
// In family document, get LightType via GetLightTypeFromInstance or GetLightType method.
// In order to get the light information, 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;
// Get the LightType for given light fixture
lightData = LightType.GetLightTypeFromInstance(document, lightFixture.Id);
}
// Get the light data via LightType
Color filterColor = lightData.ColorFilter; // get the ColorFilter property
LossFactor lossFactor = lightData.GetLossFactor(); // get the loss factor
if (lossFactor is AdvancedLossFactor)
{
AdvancedLossFactor advancedFactor = lossFactor as AdvancedLossFactor;
double luminaireValue = advancedFactor.LuminaireDirtDepreciation;
}
}