Class IfcCostItem
- Namespace
- IfcIO.Model.Cost
- Assembly
- IfcIO.dll
An individual cost line item or cost breakdown structure node within a cost schedule. Conforms to buildingSMART standard IFCCOSTITEM.
public sealed class IfcCostItemInheritance
Inherited Members
Constructors
IfcCostItem()
public IfcCostItem()IfcCostItem(string, string?, double?, double?, string?)
public IfcCostItem(string name, string? costCode = null, double? unitRate = null, double? quantity = null, string? unitBasis = null)Parameters
Properties
AssignedElements
Building elements assigned to this cost item via IFCRELASSIGNSTOCONTROL.
public List<IfcElement> AssignedElements { get; }Property Value
AssignedQuantities
Physical quantities linked to this cost item for automated rate-based takeoffs.
public List<IfcPhysicalQuantity> AssignedQuantities { get; }Property Value
CostCode
Cost Breakdown Structure (CBS) code or MasterFormat / UniFormat code (e.g. "03.30.00").
public string? CostCode { get; set; }Property Value
CostValues
Discrete applied values and cost components (Labor, Material, etc.).
public List<IfcCostValue> CostValues { get; }Property Value
Description
public string? Description { get; set; }Property Value
GlobalId
public string GlobalId { get; set; }Property Value
Name
public string Name { get; set; }Property Value
Quantity
Total quantified volume, area, length, or count.
public double? Quantity { get; set; }Property Value
SubCostItems
Hierarchical sub-cost items subordinate to this cost node.
public List<IfcCostItem> SubCostItems { get; }Property Value
TotalCost
Gets the calculated total cost for this item, either explicitly via cost values, computed from UnitRate * Quantity, or aggregated from sub-items.
public double TotalCost { get; }Property Value
UnitBasis
Measurement unit string (e.g. "m3", "m2", "m", "pcs", "kg").
public string? UnitBasis { get; set; }Property Value
UnitRate
Unit rate per quantity unit (e.g. $150 per m3 of concrete).
public double? UnitRate { get; set; }Property Value
Methods
AddCostValue(double, string, string?, string?)
Adds a discrete cost value breakdown component.
public void AddCostValue(double amount, string currency = "USD", string? category = null, string? name = null)Parameters
AddSubItem(string, string?, double?, double?, string?)
Adds a nested sub-cost item to this node.
public IfcCostItem AddSubItem(string name, string? costCode = null, double? unitRate = null, double? quantity = null, string? unitBasis = null)Parameters
Returns
AssignElement(IfcElement)
Assigns an element to this cost item.
public void AssignElement(IfcElement element)Parameters
elementIfcElement
AssignQuantity(IfcPhysicalQuantity)
Assigns a physical quantity to this cost item.
public void AssignQuantity(IfcPhysicalQuantity quantity)Parameters
quantityIfcPhysicalQuantity