Gets a copy of the ThermalAsset.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 18.0.0.0 (18.2.0.13)
Since:
2012
Syntax
Examples
CopyC#
private void ReadMaterialThermalProps(Document document, Material material)
{
ElementId thermalAssetId = material.ThermalAssetId;
if (thermalAssetId != ElementId.InvalidElementId)
{
PropertySetElement pse = document.GetElement(thermalAssetId) as PropertySetElement;
if (pse != null)
{
ThermalAsset asset = pse.GetThermalAsset();
if (asset.ThermalMaterialType == ThermalMaterialType.Solid)
{
bool isTransmitsLight = asset.TransmitsLight;
double permeability = asset.Permeability;
double porosity = asset.Porosity;
double reflectivity = asset.Reflectivity;
double resistivity = asset.ElectricalResistivity;
StructuralBehavior behavior = asset.Behavior;
double heatOfVaporization = asset.SpecificHeatOfVaporization;
double emissivity = asset.Emissivity;
double conductivity = asset.ThermalConductivity;
double density = asset.Density;
}
}
}
}
CopyVB.NET
Private Sub ReadMaterialThermalProps(document As Document, material As Material)
Dim thermalAssetId As ElementId = material.ThermalAssetId
If thermalAssetId <> ElementId.InvalidElementId Then
Dim pse As PropertySetElement = TryCast(document.GetElement(thermalAssetId), PropertySetElement)
If pse IsNot Nothing Then
Dim asset As ThermalAsset = pse.GetThermalAsset()
If asset.ThermalMaterialType = ThermalMaterialType.Solid Then
Dim isTransmitsLight As Boolean = asset.TransmitsLight
Dim permeability As Double = asset.Permeability
Dim porosity As Double = asset.Porosity
Dim reflectivity As Double = asset.Reflectivity
Dim resistivity As Double = asset.ElectricalResistivity
Dim behavior As StructuralBehavior = asset.Behavior
Dim heatOfVaporization As Double = asset.SpecificHeatOfVaporization
Dim emissivity As Double = asset.Emissivity
Dim conductivity As Double = asset.ThermalConductivity
Dim density As Double = asset.Density
End If
End If
End If
End Sub
See Also