Skip to content

DiGi.Analytical.Building.Classes

github-actions[bot] edited this page Jul 15, 2026 · 2 revisions

DiGi.Analytical.Building.Classes Namespace

Classes

AbstractComponent Class

Represents an abstract base class for all analytical building components, providing core functionality and implementing the DiGi.Analytical.Building.Interfaces.IComponent interface.

public abstract class AbstractComponent : DiGi.Analytical.Building.Classes.Component, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObjectComponent → AbstractComponent

Derived
AbstractComponent<T>

Implements DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable

Constructors

AbstractComponent() Constructor

Initializes a new instance of the AbstractComponent class.

public AbstractComponent();

AbstractComponent(AbstractComponent) Constructor

Initializes a new instance of the AbstractComponent class using an existing AbstractComponent instance.

public AbstractComponent(DiGi.Analytical.Building.Classes.AbstractComponent? abstractComponent);

Parameters

abstractComponent AbstractComponent

The source component to copy data from.

AbstractComponent(Guid) Constructor

Initializes a new instance of the AbstractComponent class using the specified unique identifier.

public AbstractComponent(System.Guid guid);

Parameters

guid System.Guid

The unique identifier for the component.

AbstractComponent(Guid, AbstractComponent) Constructor

Initializes a new instance of the AbstractComponent class using a specified unique identifier and an optional existing component.

public AbstractComponent(System.Guid guid, DiGi.Analytical.Building.Classes.AbstractComponent? abstractComponent);

Parameters

guid System.Guid

The unique global identifier for the component.

abstractComponent AbstractComponent

An optional AbstractComponent to initialize from.

AbstractComponent(JsonObject) Constructor

Initializes a new instance of the AbstractComponent class using the specified JSON object.

public AbstractComponent(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the data to initialize the component.

Properties

AbstractComponent.StructurePosition Property

Gets or sets the structure position of the component.

public DiGi.Analytical.Building.Enums.StructurePosition StructurePosition { get; set; }

Property Value

StructurePosition

AbstractComponent<T> Class

Provides a base implementation for components that incorporate 3D geometry.

public abstract class AbstractComponent<T> : DiGi.Analytical.Building.Classes.AbstractComponent, DiGi.Analytical.Building.Interfaces.IAbstractComponent<T>, DiGi.Analytical.Building.Interfaces.IAbstractComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>
    where T : DiGi.Geometry.Spatial.Interfaces.IGeometry3D

Type parameters

T

The type of the 3D geometry, which must implement DiGi.Geometry.Spatial.Interfaces.IGeometry3D.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObjectComponentAbstractComponent → AbstractComponent<T>

Derived
Air<T>

Implements DiGi.Analytical.Building.Interfaces.IAbstractComponent<T>, DiGi.Analytical.Building.Interfaces.IAbstractComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>

Constructors

AbstractComponent(AbstractComponent, T) Constructor

Initializes a new instance of the AbstractComponent<T> class using an existing abstract component and a specific geometry.

public AbstractComponent(DiGi.Analytical.Building.Classes.AbstractComponent? abstractComponent, T? geometry);

Parameters

abstractComponent AbstractComponent

The source abstract component from which to copy base properties.

geometry T

The geometry object to be assigned to this component.

AbstractComponent(AbstractComponent<T>) Constructor

Initializes a new instance of the AbstractComponent<T> class using an existing component as a source for cloning.

public AbstractComponent(DiGi.Analytical.Building.Classes.AbstractComponent<T>? abstractComponent);

Parameters

abstractComponent DiGi.Analytical.Building.Classes.AbstractComponent<T>

The source AbstractComponent<T> instance to copy data from. This value can be null.

AbstractComponent(Guid, AbstractComponent<T>) Constructor

Initializes a new instance of the AbstractComponent<T> class using the specified unique identifier and an optional source component.

public AbstractComponent(System.Guid guid, DiGi.Analytical.Building.Classes.AbstractComponent<T>? abstractComponent);

Parameters

guid System.Guid

The globally unique identifier for the component.

abstractComponent DiGi.Analytical.Building.Classes.AbstractComponent<T>

An optional source AbstractComponent<T> instance to copy properties from.

AbstractComponent(Guid, T) Constructor

Initializes a new instance of the AbstractComponent<T> class with the specified unique identifier and geometry.

public AbstractComponent(System.Guid guid, T? geometry);

Parameters

guid System.Guid

The unique identifier for the component.

geometry T

The geometry associated with the component.

AbstractComponent(JsonObject) Constructor

Initializes a new instance of the AbstractComponent<T> class using the specified JSON object.

public AbstractComponent(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to initialize the component.

AbstractComponent(T) Constructor

Initializes a new instance of the AbstractComponent<T> class with the specified geometry.

public AbstractComponent(T? geometry);

Parameters

geometry T

The geometry object to associate with this component. This value can be null.

Properties

AbstractComponent<T>.Geometry Property

public T? Geometry { get; }

Implements Geometry

Property Value

T

Air<T> Class

Represents an abstract base class for air components within a building analytical model.

public abstract class Air<T> : DiGi.Analytical.Building.Classes.AbstractComponent<T>, DiGi.Analytical.Building.Interfaces.IAir<T>, DiGi.Analytical.Building.Interfaces.IAbstractComponent<T>, DiGi.Analytical.Building.Interfaces.IAbstractComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>
    where T : DiGi.Geometry.Spatial.Interfaces.IGeometry3D

Type parameters

T

The type of 3D geometry associated with the air component, which must implement DiGi.Geometry.Spatial.Interfaces.IGeometry3D.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObjectComponentAbstractComponentDiGi.Analytical.Building.Classes.AbstractComponent<T> → Air<T>

Derived
SurfaceAir

Implements DiGi.Analytical.Building.Interfaces.IAir<T>, DiGi.Analytical.Building.Interfaces.IAbstractComponent<T>, DiGi.Analytical.Building.Interfaces.IAbstractComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>

Constructors

Air(Air<T>) Constructor

Initializes a new instance of the Air<T> class using an existing air component.

public Air(DiGi.Analytical.Building.Classes.Air<T>? air);

Parameters

air DiGi.Analytical.Building.Classes.Air<T>

The source Air<T> instance to copy from.

Air(IAir, T) Constructor

Initializes a new instance of the Air<T> class using an existing air component and a specified geometry.

public Air(DiGi.Analytical.Building.Interfaces.IAir? air, T? geometry);

Parameters

air DiGi.Analytical.Building.Interfaces.IAir

The source air component from which properties are copied.

geometry T

The geometry associated with this air component.

Air(Guid, Air<T>) Constructor

Initializes a new instance of the Air<T> class using a specified unique identifier and an existing air object.

public Air(System.Guid guid, DiGi.Analytical.Building.Classes.Air<T>? air);

Parameters

guid System.Guid

The unique identifier for the air component.

air DiGi.Analytical.Building.Classes.Air<T>

An optional existing air object to initialize from.

Air(Guid, T) Constructor

Initializes a new instance of the Air<T> class using the specified unique identifier and geometry.

public Air(System.Guid guid, T? geometry);

Parameters

guid System.Guid

The unique identifier for the object.

geometry T

The 3D geometry associated with the air component.

Air(JsonObject) Constructor

Initializes a new instance of the Air<T> class using the specified JSON object.

public Air(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the data to initialize the instance.

Air(T) Constructor

Initializes a new instance of the Air<T> class using the specified geometry.

public Air(T? geometry);

Parameters

geometry T

The geometry to be associated with this air component.

BuildingGeometry2DObject Class

Represents an abstract base class for two-dimensional geometric objects within a building's analytical model.

public abstract class BuildingGeometry2DObject : DiGi.Analytical.Building.Classes.BuildingObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometry2DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Planar.Interfaces.IGeometry2DObject

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObject → BuildingGeometry2DObject

Derived
BuildingGeometry2DObject<T>

Implements DiGi.Analytical.Building.Interfaces.IBuildingGeometry2DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Planar.Interfaces.IGeometry2DObject

Constructors

BuildingGeometry2DObject() Constructor

Initializes a new instance of the BuildingGeometry2DObject class.

public BuildingGeometry2DObject();

BuildingGeometry2DObject(BuildingGeometry2DObject) Constructor

Initializes a new instance of the BuildingGeometry2DObject class based on an existing BuildingGeometry2DObject object.

public BuildingGeometry2DObject(DiGi.Analytical.Building.Classes.BuildingGeometry2DObject? buildingGeometry2DObject);

Parameters

buildingGeometry2DObject BuildingGeometry2DObject

The BuildingGeometry2DObject object to copy from.

BuildingGeometry2DObject(Guid) Constructor

Initializes a new instance of the BuildingGeometry2DObject class using the specified unique identifier.

public BuildingGeometry2DObject(System.Guid guid);

Parameters

guid System.Guid

The unique global identifier for the object.

BuildingGeometry2DObject(Guid, BuildingGeometry2DObject) Constructor

Initializes a new instance of the BuildingGeometry2DObject class with a specified unique identifier and an optional source object.

public BuildingGeometry2DObject(System.Guid guid, DiGi.Analytical.Building.Classes.BuildingGeometry2DObject? buildingGeometry2DObject);

Parameters

guid System.Guid

The unique global identifier for the building geometry 2D object.

buildingGeometry2DObject BuildingGeometry2DObject

An optional existing BuildingGeometry2DObject instance used to initialize the current instance.

BuildingGeometry2DObject(JsonObject) Constructor

Initializes a new instance of the BuildingGeometry2DObject<T> class from the specified JSON object.

public BuildingGeometry2DObject(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to initialize the building geometry 2D object.

BuildingGeometry2DObject<T> Class

Represents an abstract base class for objects that possess two-dimensional building geometry.

public abstract class BuildingGeometry2DObject<T> : DiGi.Analytical.Building.Classes.BuildingGeometry2DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometry2DObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometry2DObject, DiGi.Geometry.Object.Planar.Interfaces.IGeometry2DObject, DiGi.Geometry.Object.Planar.Interfaces.IGeometry2DObject<T>
    where T : DiGi.Geometry.Planar.Interfaces.IGeometry2D

Type parameters

T

The type of the 2D geometry.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry2DObject → BuildingGeometry2DObject<T>

Derived
OpeningConstruction

Implements DiGi.Analytical.Building.Interfaces.IBuildingGeometry2DObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometry2DObject, DiGi.Geometry.Object.Planar.Interfaces.IGeometry2DObject, DiGi.Geometry.Object.Planar.Interfaces.IGeometry2DObject<T>

Constructors

BuildingGeometry2DObject(BuildingGeometry2DObject<T>) Constructor

Initializes a new instance of the BuildingGeometry2DObject<T> class by copying an existing building geometry 2D object.

public BuildingGeometry2DObject(DiGi.Analytical.Building.Classes.BuildingGeometry2DObject<T>? buildingGeometry2DObject);

Parameters

buildingGeometry2DObject DiGi.Analytical.Building.Classes.BuildingGeometry2DObject<T>

The source BuildingGeometry2DObject<T> object to copy from.

BuildingGeometry2DObject(Guid, BuildingGeometry2DObject<T>) Constructor

Initializes a new instance of the BuildingGeometry2DObject<T> class using the specified unique identifier and an existing building geometry object.

public BuildingGeometry2DObject(System.Guid guid, DiGi.Analytical.Building.Classes.BuildingGeometry2DObject<T>? buildingGeometry2DObject);

Parameters

guid System.Guid

The unique identifier for the object.

buildingGeometry2DObject DiGi.Analytical.Building.Classes.BuildingGeometry2DObject<T>

The source building geometry object from which to clone properties and geometry.

BuildingGeometry2DObject(JsonObject) Constructor

Initializes a new instance of the BuildingGeometry2DObject class using the specified JSON object.

public BuildingGeometry2DObject(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the data to initialize the building geometry 2D object.

BuildingGeometry2DObject(T) Constructor

Initializes a new instance of the BuildingGeometry2DObject<T> class with the specified geometry.

public BuildingGeometry2DObject(T? geometry);

Parameters

geometry T

The geometry to assign to the object; can be null.

Properties

BuildingGeometry2DObject<T>.Geometry Property

Gets the two-dimensional geometry of the building object.

public T? Geometry { get; }

Implements Geometry

Property Value

T

BuildingGeometry3DObject Class

Represents an abstract base class for all three-dimensional geometric objects within a building's analytical model.

public abstract class BuildingGeometry3DObject : DiGi.Analytical.Building.Classes.BuildingObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObject → BuildingGeometry3DObject

Derived
BuildingGeometry3DObject<T>
Component

Implements DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject

Constructors

BuildingGeometry3DObject() Constructor

Initializes a new instance of the BuildingGeometry3DObject class.

public BuildingGeometry3DObject();

BuildingGeometry3DObject(BuildingGeometry3DObject) Constructor

Initializes a new instance of the BuildingGeometry3DObject class using the specified object.

public BuildingGeometry3DObject(DiGi.Analytical.Building.Classes.BuildingGeometry3DObject? buildingGeometry3DObject);

Parameters

buildingGeometry3DObject BuildingGeometry3DObject

The BuildingGeometry3DObject object to copy from or use for initialization.

BuildingGeometry3DObject(Guid) Constructor

Initializes a new instance of the BuildingGeometry3DObject class with the specified unique identifier.

public BuildingGeometry3DObject(System.Guid guid);

Parameters

guid System.Guid

The unique global identifier for the building geometry 3D object.

BuildingGeometry3DObject(Guid, BuildingGeometry3DObject) Constructor

Initializes a new instance of the BuildingGeometry3DObject class with a specified unique identifier and an optional existing object.

public BuildingGeometry3DObject(System.Guid guid, DiGi.Analytical.Building.Classes.BuildingGeometry3DObject? buildingGeometry3DObject);

Parameters

guid System.Guid

The unique global identifier for the building geometry 3D object.

buildingGeometry3DObject BuildingGeometry3DObject

An optional BuildingGeometry3DObject instance to initialize from.

BuildingGeometry3DObject(JsonObject) Constructor

Initializes a new instance of the BuildingGeometry3DObject class using the specified JSON object.

public BuildingGeometry3DObject(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to initialize the building geometry 3D object.

BuildingGeometry3DObject<T> Class

Represents an abstract base class for 3D building geometry objects that encapsulate a specific type of 3D geometry.

public abstract class BuildingGeometry3DObject<T> : DiGi.Analytical.Building.Classes.BuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject<T>
    where T : DiGi.Geometry.Spatial.Interfaces.IGeometry3D

Type parameters

T

The type of the 3D geometry, which must implement DiGi.Geometry.Spatial.Interfaces.IGeometry3D.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObject → BuildingGeometry3DObject<T>

Derived
Shade<T>
Space

Implements DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<T>, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<T>, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject<T>

Constructors

BuildingGeometry3DObject(BuildingGeometry3DObject<T>) Constructor

Initializes a new instance of the BuildingGeometry3DObject<T> class using an existing building geometry 3D object.

public BuildingGeometry3DObject(DiGi.Analytical.Building.Classes.BuildingGeometry3DObject<T>? buildingGeometry3DObject);

Parameters

buildingGeometry3DObject DiGi.Analytical.Building.Classes.BuildingGeometry3DObject<T>

The source building geometry 3D object to copy from.

BuildingGeometry3DObject(Guid, BuildingGeometry3DObject<T>) Constructor

Initializes a new instance of the BuildingGeometry3DObject<T> class with the specified unique identifier and an optional source building geometry 3D object.

public BuildingGeometry3DObject(System.Guid guid, DiGi.Analytical.Building.Classes.BuildingGeometry3DObject<T>? buildingGeometry3DObject);

Parameters

guid System.Guid

The unique identifier for the object.

buildingGeometry3DObject DiGi.Analytical.Building.Classes.BuildingGeometry3DObject<T>

An optional existing building geometry 3D object to copy data from.

BuildingGeometry3DObject(JsonObject) Constructor

Initializes a new instance of the BuildingGeometry3DObject class using the specified JSON object.

public BuildingGeometry3DObject(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The System.Text.Json.Nodes.JsonObject containing the data to initialize the object. This value can be null.

BuildingGeometry3DObject(T) Constructor

Initializes a new instance of the BuildingGeometry3DObject<T> class with the specified 3D geometry.

public BuildingGeometry3DObject(T? geometry);

Parameters

geometry T

The 3D geometry to assign to this object. The provided geometry is cloned if it is not null.

Properties

BuildingGeometry3DObject<T>.Geometry Property

public T? Geometry { get; }

Implements Geometry

Property Value

T

BuildingInformation Class

Represents detailed information regarding a building, providing properties for its address, geographical coordinates, and UTC offset.

public class BuildingInformation : DiGi.Core.Classes.SerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObject → BuildingInformation

Implements DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject

Constructors

BuildingInformation() Constructor

Initializes a new instance of the BuildingInformation class.

public BuildingInformation();

BuildingInformation(BuildingInformation) Constructor

Initializes a new instance of the BuildingInformation class by copying the values from an existing BuildingInformation instance.

public BuildingInformation(DiGi.Analytical.Building.Classes.BuildingInformation? buildingInformation);

Parameters

buildingInformation BuildingInformation

The source BuildingInformation object to copy data from; can be null.

BuildingInformation(JsonObject) Constructor

Initializes a new instance of the BuildingInformation class using the specified JSON object.

public BuildingInformation(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the building information data.

Properties

BuildingInformation.Address Property

Gets or sets the physical mailing address of the building.

public DiGi.Core.Classes.Address? Address { get; set; }

Property Value

DiGi.Core.Classes.Address

BuildingInformation.Coordinates Property

Gets or sets the geographic coordinates of the building.

public DiGi.Core.Classes.Coordinates? Coordinates { get; set; }

Property Value

DiGi.Core.Classes.Coordinates

BuildingInformation.UTC Property

Gets or sets the Coordinated Universal Time (UTC) time zone associated with the building information.

public DiGi.Core.Enums.UTC UTC { get; set; }

Property Value

DiGi.Core.Enums.UTC

BuildingModel Class

Represents an analytical building model that manages structural relations, building information, and spatial bounding properties.

public class BuildingModel : DiGi.Core.Parameter.Classes.ParametrizedGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Core.Interfaces.IGuidModel, DiGi.Core.Interfaces.ISerializableModel, DiGi.Core.Interfaces.IModel, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObject → BuildingModel

Implements DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Core.Interfaces.IGuidModel, DiGi.Core.Interfaces.ISerializableModel, DiGi.Core.Interfaces.IModel, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject

Constructors

BuildingModel() Constructor

Initializes a new instance of the BuildingModel class.

public BuildingModel();

BuildingModel(BuildingModel) Constructor

Initializes a new instance of the BuildingModel class by cloning an existing building model.

public BuildingModel(DiGi.Analytical.Building.Classes.BuildingModel? buildingModel);

Parameters

buildingModel BuildingModel

The source BuildingModel instance to copy data from. If null, a default instance is initialized.

BuildingModel(JsonObject) Constructor

Initializes a new instance of the BuildingModel class using the specified JSON object.

public BuildingModel(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The System.Text.Json.Nodes.JsonObject containing the building model data, or null if no data is provided.

Properties

BuildingModel.BuildingInformation Property

Gets or sets the building information associated with this building model.

public DiGi.Analytical.Building.Classes.BuildingInformation BuildingInformation { get; set; }

Property Value

BuildingInformation

Methods

BuildingModel.Assign(IComponent, ISpace, ISpace) Method

Assigns a component to one or two spaces and establishes the corresponding relationship within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.IComponent? component, DiGi.Analytical.Building.Interfaces.ISpace? space_1, DiGi.Analytical.Building.Interfaces.ISpace? space_2=null);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component to be assigned.

space_1 DiGi.Analytical.Building.Interfaces.ISpace

The primary space associated with the component.

space_2 DiGi.Analytical.Building.Interfaces.ISpace

An optional secondary space associated with the component.

Returns

System.Boolean
True if the component and spaces were successfully updated and the relationship was created; otherwise, false.

BuildingModel.Assign(IDoor, IDoorConstruction) Method

Assigns a relationship between the specified door and its corresponding door construction within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.IDoor? door, DiGi.Analytical.Building.Interfaces.IDoorConstruction? doorConstruction);

Parameters

door DiGi.Analytical.Building.Interfaces.IDoor

The door object to be assigned. This value can be null.

doorConstruction DiGi.Analytical.Building.Interfaces.IDoorConstruction

The door construction object to be assigned. This value can be null.

Returns

System.Boolean
True if the relationship was successfully established; otherwise, false.

BuildingModel.Assign(IFloor, IFloorConstruction) Method

Assigns a floor construction to a specific floor within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.IFloor? floor, DiGi.Analytical.Building.Interfaces.IFloorConstruction? floorConstruction);

Parameters

floor DiGi.Analytical.Building.Interfaces.IFloor

The floor object to be assigned.

floorConstruction DiGi.Analytical.Building.Interfaces.IFloorConstruction

The floor construction object to be assigned.

Returns

System.Boolean
True if the assignment was successful; otherwise, false.

BuildingModel.Assign(IRoof, IRoofConstruction) Method

Assigns a relationship between the specified roof and its corresponding roof construction within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.IRoof? roof, DiGi.Analytical.Building.Interfaces.IRoofConstruction? roofConstruction);

Parameters

roof DiGi.Analytical.Building.Interfaces.IRoof

The roof object to be assigned. This value can be null.

roofConstruction DiGi.Analytical.Building.Interfaces.IRoofConstruction

The roof construction object to be assigned. This value can be null.

Returns

System.Boolean
True if the assignment was successful and the relation was created; otherwise, false.

BuildingModel.Assign(ISpace, IInternalCondition, HourRange, string) Method

Assigns an internal condition to a specific space within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.ISpace? space, DiGi.Analytical.Building.Interfaces.IInternalCondition? internalCondition, DiGi.Analytical.Classes.HourRange? hourRange, string? id=null);

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space object to which the internal condition is assigned.

internalCondition DiGi.Analytical.Building.Interfaces.IInternalCondition

The internal condition object to be assigned to the space.

hourRange DiGi.Analytical.Classes.HourRange

An optional hour range specifying when the internal condition applies.

id System.String

An optional unique identifier for the assignment relation.

Returns

System.Boolean
True if the internal condition was successfully assigned to the space; otherwise, false.

BuildingModel.Assign(IWall, IWallConstruction) Method

Assigns a wall to its corresponding wall construction within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.IWall? wall, DiGi.Analytical.Building.Interfaces.IWallConstruction? wallConstruction);

Parameters

wall DiGi.Analytical.Building.Interfaces.IWall

The wall object to be assigned.

wallConstruction DiGi.Analytical.Building.Interfaces.IWallConstruction

The wall construction object to be associated with the wall.

Returns

System.Boolean
True if the assignment was successful; otherwise, false.

BuildingModel.Assign(IWindow, IWindowConstruction) Method

Assigns a window construction to the specified window within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.IWindow? window, DiGi.Analytical.Building.Interfaces.IWindowConstruction? windowConstruction);

Parameters

window DiGi.Analytical.Building.Interfaces.IWindow

The window instance to which the construction is assigned. May be null.

windowConstruction DiGi.Analytical.Building.Interfaces.IWindowConstruction

The window construction instance to assign. May be null.

Returns

System.Boolean
True if the assignment was successfully created; otherwise, false.

BuildingModel.Assign(IZone, IEnumerable<ISpace>) Method

Assigns a collection of spaces to a specified zone within the building model.

public bool Assign(DiGi.Analytical.Building.Interfaces.IZone? zone, System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.ISpace>? spaces);

Parameters

zone DiGi.Analytical.Building.Interfaces.IZone

The zone to which the spaces should be assigned. May be null.

spaces System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.ISpace>

The collection of spaces to associate with the zone. May be null.

Returns

System.Boolean
True if the assignment was successful and the relation was created; otherwise, false.

BuildingModel.Assign<TSpace>(IEnumerable<TSpace>, IInternalCondition, HourRange, string) Method

Assigns a collection of spaces to an internal condition with an optional time range and identifier.

public bool Assign<TSpace>(System.Collections.Generic.IEnumerable<TSpace>? spaces, DiGi.Analytical.Building.Interfaces.IInternalCondition? internalCondition, DiGi.Analytical.Classes.HourRange? hourRange, string? id=null)
    where TSpace : DiGi.Analytical.Building.Interfaces.ISpace;

Type parameters

TSpace

The type of the space objects, which must implement DiGi.Analytical.Building.Interfaces.ISpace.

Parameters

spaces System.Collections.Generic.IEnumerable<TSpace>

A collection of spaces to be assigned.

internalCondition DiGi.Analytical.Building.Interfaces.IInternalCondition

The internal condition to associate with the spaces.

hourRange DiGi.Analytical.Classes.HourRange

An optional time range during which the assignment is valid.

id System.String

An optional unique identifier for the relation.

Returns

System.Boolean
true if at least one space was successfully assigned; otherwise, false.

BuildingModel.GetBoundingBox() Method

Gets the axis-aligned bounding box of the building model.

public DiGi.Geometry.Spatial.Classes.BoundingBox3D? GetBoundingBox();

Implements GetBoundingBox()

Returns

DiGi.Geometry.Spatial.Classes.BoundingBox3D
The bounding box encompassing all components in the building model, or null if it cannot be created.

BuildingModel.GetComponent<TComponent>(IOpening) Method

Retrieves a component of the specified type associated with the given opening.

public TComponent? GetComponent<TComponent>(DiGi.Analytical.Building.Interfaces.IOpening? opening)
    where TComponent : DiGi.Analytical.Building.Interfaces.IComponent;

Type parameters

TComponent

The type of the component to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IComponent.

Parameters

opening DiGi.Analytical.Building.Interfaces.IOpening

The opening for which the associated component is being retrieved. May be null.

Returns

TComponent
A cloned instance of the requested component type if found and compatible; otherwise, null.

BuildingModel.GetComponents<TComponent>() Method

Retrieves all components of the specified type from the building relation cluster.

public System.Collections.Generic.List<TComponent>? GetComponents<TComponent>()
    where TComponent : DiGi.Analytical.Building.Interfaces.IComponent;

Type parameters

TComponent

The type of component to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IComponent.

Returns

System.Collections.Generic.List<TComponent>
A list of components of type TComponent, or null if no such components are found.

BuildingModel.GetComponents<TComponent>(IPhysicalComponentConstruction) Method

Retrieves a list of components of the specified type associated with the given physical component construction.

public System.Collections.Generic.List<TComponent>? GetComponents<TComponent>(DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction? physicalComponentConstruction)
    where TComponent : DiGi.Analytical.Building.Interfaces.IComponent;

Type parameters

TComponent

The type of components to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IComponent.

Parameters

physicalComponentConstruction DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction

The physical component construction used to identify related components.

Returns

System.Collections.Generic.List<TComponent>
A list of components of type TComponent if found; otherwise, null.

BuildingModel.GetComponents<TComponent>(ISpace) Method

Retrieves a list of components of the specified type associated with the given space.

public System.Collections.Generic.List<TComponent>? GetComponents<TComponent>(DiGi.Analytical.Building.Interfaces.ISpace? space)
    where TComponent : DiGi.Analytical.Building.Interfaces.IComponent;

Type parameters

TComponent

The type of component to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IComponent.

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space for which to retrieve the associated components. May be null.

Returns

System.Collections.Generic.List<TComponent>
A list of components of type TComponent if successful; otherwise, null.

BuildingModel.GetComponents<TComponent>(ISpace, ISpace) Method

Retrieves a list of components of the specified type that define the relationship between two spaces.

public System.Collections.Generic.List<TComponent>? GetComponents<TComponent>(DiGi.Analytical.Building.Interfaces.ISpace? space_1, DiGi.Analytical.Building.Interfaces.ISpace? space_2)
    where TComponent : DiGi.Analytical.Building.Interfaces.IComponent;

Type parameters

TComponent

The type of component to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IComponent.

Parameters

space_1 DiGi.Analytical.Building.Interfaces.ISpace

The first space involved in the relation.

space_2 DiGi.Analytical.Building.Interfaces.ISpace

The second space involved in the relation.

Returns

System.Collections.Generic.List<TComponent>
A list of components of type TComponent if successful; otherwise, null.

BuildingModel.GetDoorConstruction(IDoor) Method

Retrieves the door construction associated with the specified door.

public DiGi.Analytical.Building.Interfaces.IDoorConstruction? GetDoorConstruction(DiGi.Analytical.Building.Interfaces.IDoor? door);

Parameters

door DiGi.Analytical.Building.Interfaces.IDoor

The door for which to retrieve the construction.

Returns

DiGi.Analytical.Building.Interfaces.IDoorConstruction
The DiGi.Analytical.Building.Interfaces.IDoorConstruction associated with the provided door, or null if no such construction is found or if the door is null.

BuildingModel.GetFloorConstruction(IFloor) Method

Retrieves the floor construction associated with the specified floor.

public DiGi.Analytical.Building.Interfaces.IFloorConstruction? GetFloorConstruction(DiGi.Analytical.Building.Interfaces.IFloor? floor);

Parameters

floor DiGi.Analytical.Building.Interfaces.IFloor

The floor for which to retrieve the construction.

Returns

DiGi.Analytical.Building.Interfaces.IFloorConstruction
The DiGi.Analytical.Building.Interfaces.IFloorConstruction associated with the provided floor, or null if no such construction exists or the floor is null.

BuildingModel.GetInternalConditions<TInternalCondition>(ISpace) Method

Retrieves the internal conditions associated with the specified space.

public System.Collections.Generic.List<TInternalCondition>? GetInternalConditions<TInternalCondition>(DiGi.Analytical.Building.Interfaces.ISpace? space)
    where TInternalCondition : DiGi.Analytical.Building.Interfaces.IInternalCondition;

Type parameters

TInternalCondition

The type of internal condition to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IInternalCondition.

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space for which to retrieve the internal conditions.

Returns

System.Collections.Generic.List<TInternalCondition>
A list of internal conditions of type TInternalCondition associated with the specified space, or null if no such conditions are found or if the input is null.

BuildingModel.GetObject<TBuildingGuidObject>(IBuildingRelation) Method

Retrieves a building object associated with the specified building relation.

public TBuildingGuidObject? GetObject<TBuildingGuidObject>(DiGi.Analytical.Building.Interfaces.IBuildingRelation? buildingRelation)
    where TBuildingGuidObject : DiGi.Analytical.Building.Interfaces.IBuildingGuidObject;

Type parameters

TBuildingGuidObject

The type of the building GUID object to retrieve.

Parameters

buildingRelation DiGi.Analytical.Building.Interfaces.IBuildingRelation

The building relation used to identify the target object.

Returns

TBuildingGuidObject
The retrieved and cloned building object if found; otherwise, null.

BuildingModel.GetObject<TBuildingGuidObject>(GuidReference) Method

Retrieves an object of type TBuildingGuidObject using the specified GUID reference.

public TBuildingGuidObject? GetObject<TBuildingGuidObject>(DiGi.Core.Classes.GuidReference? guidReference)
    where TBuildingGuidObject : DiGi.Analytical.Building.Interfaces.IBuildingGuidObject;

Type parameters

TBuildingGuidObject

The type of the building GUID object to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IBuildingGuidObject.

Parameters

guidReference DiGi.Core.Classes.GuidReference

The GUID reference of the object to retrieve.

Returns

TBuildingGuidObject
The retrieved object of type TBuildingGuidObject if found; otherwise, null.

BuildingModel.GetObjects<TBuildingGuidObject>(IBuildingRelation) Method

Retrieves a list of building objects associated with the specified building relation.

public System.Collections.Generic.List<TBuildingGuidObject>? GetObjects<TBuildingGuidObject>(DiGi.Analytical.Building.Interfaces.IBuildingRelation? buildingRelation)
    where TBuildingGuidObject : DiGi.Analytical.Building.Interfaces.IBuildingGuidObject;

Type parameters

TBuildingGuidObject

The type of building GUID object to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IBuildingGuidObject.

Parameters

buildingRelation DiGi.Analytical.Building.Interfaces.IBuildingRelation

The building relation used to identify the associated objects. Can be null.

Returns

System.Collections.Generic.List<TBuildingGuidObject>
A list of objects of type TBuildingGuidObject if found; otherwise, null.

BuildingModel.GetOpenings<TOpening>(IComponent) Method

Retrieves a list of opening objects associated with the specified component.

public System.Collections.Generic.List<TOpening>? GetOpenings<TOpening>(DiGi.Analytical.Building.Interfaces.IComponent? component)
    where TOpening : DiGi.Analytical.Building.Interfaces.IOpening;

Type parameters

TOpening

The type of opening object to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IOpening.

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component for which associated openings are retrieved.

Returns

System.Collections.Generic.List<TOpening>
A list of objects of type <typeparam ref="TOpening" /> if associations are found; otherwise, null.

BuildingModel.GetOpenings<TOpening>(IOpeningConstruction) Method

Retrieves a list of openings associated with the specified opening construction.

public System.Collections.Generic.List<TOpening>? GetOpenings<TOpening>(DiGi.Analytical.Building.Interfaces.IOpeningConstruction? openingConstruction)
    where TOpening : DiGi.Analytical.Building.Interfaces.IOpening;

Type parameters

TOpening

The type of opening to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IOpening.

Parameters

openingConstruction DiGi.Analytical.Building.Interfaces.IOpeningConstruction

The opening construction object used to find related openings. Can be null.

Returns

System.Collections.Generic.List<TOpening>
A list of openings of type <typeparam ref="TOpening" /> associated with the provided construction, or null if no such openings are found or if inputs are null.

BuildingModel.GetOpenings<TOpening>(Func<TOpening,bool>) Method

Retrieves a list of openings that match the specified criteria.

public System.Collections.Generic.List<TOpening>? GetOpenings<TOpening>(System.Func<TOpening?,bool>? func=null)
    where TOpening : DiGi.Analytical.Building.Interfaces.IOpening;

Type parameters

TOpening

The type of opening to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IOpening.

Parameters

func System.Func<TOpening,System.Boolean>

An optional predicate used to filter the retrieved openings.

Returns

System.Collections.Generic.List<TOpening>
A list of openings matching the criteria, or null if the building relation cluster is not available.

BuildingModel.GetRelation<TBuildingRelation>(IBuildingGuidObject, Func<TBuildingRelation,bool>) Method

Retrieves a specific building relation associated with the provided unique object.

public TBuildingRelation? GetRelation<TBuildingRelation>(DiGi.Analytical.Building.Interfaces.IBuildingGuidObject? buildingUniqueObject, System.Func<TBuildingRelation?,bool>? func=null)
    where TBuildingRelation : DiGi.Analytical.Building.Interfaces.IBuildingRelation;

Type parameters

TBuildingRelation

The type of the building relation to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IBuildingRelation.

Parameters

buildingUniqueObject DiGi.Analytical.Building.Interfaces.IBuildingGuidObject

The building unique object for which the relation is retrieved.

func System.Func<TBuildingRelation,System.Boolean>

An optional predicate used to filter the relation based on a specific condition.

Returns

TBuildingRelation
A cloned instance of TBuildingRelation if a matching relation is found; otherwise, null.

BuildingModel.GetRelations<TBuildingRelation>(IBuildingGuidObject, Func<TBuildingRelation,bool>) Method

Retrieves a list of building relations associated with the specified unique object, optionally filtered by a predicate.

public System.Collections.Generic.List<TBuildingRelation>? GetRelations<TBuildingRelation>(DiGi.Analytical.Building.Interfaces.IBuildingGuidObject? buildingUniqueObject, System.Func<TBuildingRelation?,bool>? func=null)
    where TBuildingRelation : DiGi.Analytical.Building.Interfaces.IBuildingRelation;

Type parameters

TBuildingRelation

The type of building relation to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IBuildingRelation.

Parameters

buildingUniqueObject DiGi.Analytical.Building.Interfaces.IBuildingGuidObject

The unique building object for which relations are retrieved.

func System.Func<TBuildingRelation,System.Boolean>

An optional predicate function used to filter the returned relations.

Returns

System.Collections.Generic.List<TBuildingRelation>
A list of matching TBuildingRelation instances, or null if no relations exist or the input object is null.

BuildingModel.GetRoofConstruction(IRoof) Method

Gets the construction associated with the specified roof.

public DiGi.Analytical.Building.Interfaces.IRoofConstruction? GetRoofConstruction(DiGi.Analytical.Building.Interfaces.IRoof? roof);

Parameters

roof DiGi.Analytical.Building.Interfaces.IRoof

The roof for which to retrieve the construction.

Returns

DiGi.Analytical.Building.Interfaces.IRoofConstruction
The DiGi.Analytical.Building.Interfaces.IRoofConstruction associated with the roof, or null if no such construction exists or the roof is null.

BuildingModel.GetShell(ISpace, Nullable<Side>, Nullable<Orientation>, Nullable<Orientation>, double) Method

Retrieves a shell associated with the specified space based on the provided criteria.

public DiGi.Analytical.Classes.Shell? GetShell(DiGi.Analytical.Building.Interfaces.ISpace? space, System.Nullable<DiGi.Geometry.Core.Enums.Side> normalSide=null, System.Nullable<DiGi.Geometry.Core.Enums.Orientation> externalEdgeOrientation=null, System.Nullable<DiGi.Geometry.Core.Enums.Orientation> internalEdgeOrientation=null, double tolerance=1E-06);

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space from which to retrieve the shell.

normalSide System.Nullable<DiGi.Geometry.Core.Enums.Side>

The optional side or orientation of the boundary.

externalEdgeOrientation System.Nullable<DiGi.Geometry.Core.Enums.Orientation>

The optional orientation of external edges.

internalEdgeOrientation System.Nullable<DiGi.Geometry.Core.Enums.Orientation>

The optional orientation of internal edges.

tolerance System.Double

The distance tolerance for geometric operations. Defaults to DiGi.Core.Constants.Tolerance.Distance.

Returns

DiGi.Analytical.Classes.Shell
The DiGi.Analytical.Classes.Shell associated with the space if found; otherwise, null.

BuildingModel.GetShells<TSpace>(IEnumerable<TSpace>, Nullable<Side>, Nullable<Orientation>, Nullable<Orientation>, double) Method

Retrieves a list of shells associated with the specified spaces, applying optional filters for side orientation, edge orientations, and geometric tolerance.

public System.Collections.Generic.List<DiGi.Analytical.Classes.Shell>? GetShells<TSpace>(System.Collections.Generic.IEnumerable<TSpace> spaces, System.Nullable<DiGi.Geometry.Core.Enums.Side> normalSide=null, System.Nullable<DiGi.Geometry.Core.Enums.Orientation> externalEdgeOrientation=null, System.Nullable<DiGi.Geometry.Core.Enums.Orientation> internalEdgeOrientation=null, double tolerance=1E-06)
    where TSpace : DiGi.Analytical.Building.Interfaces.ISpace;

Type parameters

TSpace

The type of space objects, which must implement DiGi.Analytical.Building.Interfaces.ISpace.

Parameters

spaces System.Collections.Generic.IEnumerable<TSpace>

A collection of spaces to process.

normalSide System.Nullable<DiGi.Geometry.Core.Enums.Side>

Optional specification for the side or orientation of a boundary.

externalEdgeOrientation System.Nullable<DiGi.Geometry.Core.Enums.Orientation>

Optional specification for the orientation of external edges.

internalEdgeOrientation System.Nullable<DiGi.Geometry.Core.Enums.Orientation>

Optional specification for the orientation of internal edges.

tolerance System.Double

The distance tolerance used for geometric operations. Defaults to DiGi.Core.Constants.Tolerance.Distance.

Returns

System.Collections.Generic.List<DiGi.Analytical.Classes.Shell>
A list of DiGi.Analytical.Classes.Shell objects if successful; otherwise, null.

BuildingModel.GetShells<TSpace>(Nullable<Side>, Nullable<Orientation>, Nullable<Orientation>, double) Method

Retrieves the shells for all spaces of type TSpace within the building model.

public System.Collections.Generic.List<DiGi.Analytical.Classes.Shell>? GetShells<TSpace>(System.Nullable<DiGi.Geometry.Core.Enums.Side> normalSide=null, System.Nullable<DiGi.Geometry.Core.Enums.Orientation> externalEdgeOrientation=null, System.Nullable<DiGi.Geometry.Core.Enums.Orientation> internalEdgeOrientation=null, double tolerance=1E-06)
    where TSpace : DiGi.Analytical.Building.Interfaces.ISpace;

Type parameters

TSpace

The type of space that implements the DiGi.Analytical.Building.Interfaces.ISpace interface.

Parameters

normalSide System.Nullable<DiGi.Geometry.Core.Enums.Side>

Optional specification for the side or orientation of boundary normals.

externalEdgeOrientation System.Nullable<DiGi.Geometry.Core.Enums.Orientation>

Optional specification for the orientation of external edges.

internalEdgeOrientation System.Nullable<DiGi.Geometry.Core.Enums.Orientation>

Optional specification for the orientation of internal edges.

tolerance System.Double

The distance tolerance used for geometric operations. Defaults to DiGi.Core.Constants.Tolerance.Distance.

Returns

System.Collections.Generic.List<DiGi.Analytical.Classes.Shell>
A list of DiGi.Analytical.Classes.Shell objects if spaces are found; otherwise, null.

BuildingModel.GetSpaceInternalConditions(ISpace) Method

Retrieves the internal conditions associated with the specified space.

public System.Collections.Generic.List<DiGi.Analytical.Building.Classes.SpaceInternalCondition>? GetSpaceInternalConditions(DiGi.Analytical.Building.Interfaces.ISpace? space);

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space for which to retrieve internal conditions.

Returns

System.Collections.Generic.List<SpaceInternalCondition>
A list of SpaceInternalCondition objects if found; otherwise, null.

BuildingModel.GetSpaces(IComponent) Method

Retrieves the list of spaces associated with the specified component.

public System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>? GetSpaces(DiGi.Analytical.Building.Interfaces.IComponent? component);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component for which to retrieve the associated spaces.

Returns

System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>
A list of DiGi.Analytical.Building.Interfaces.ISpace objects if found; otherwise, null.

BuildingModel.GetSpaces(IOpening) Method

Retrieves a list of spaces associated with the specified opening.

public System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>? GetSpaces(DiGi.Analytical.Building.Interfaces.IOpening? opening);

Parameters

opening DiGi.Analytical.Building.Interfaces.IOpening

The opening for which to retrieve the associated spaces.

Returns

System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>
A list of DiGi.Analytical.Building.Interfaces.ISpace objects if found; otherwise, null.

BuildingModel.GetSpaces(IZone) Method

Retrieves a list of spaces associated with the specified zone.

public System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>? GetSpaces(DiGi.Analytical.Building.Interfaces.IZone? zone);

Parameters

zone DiGi.Analytical.Building.Interfaces.IZone

The zone for which to retrieve the associated spaces.

Returns

System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>
A list of DiGi.Analytical.Building.Interfaces.ISpace objects if the zone is valid and has associated spaces; otherwise, null.

BuildingModel.GetSpaces<TSpace>() Method

Retrieves all spaces of the specified type from the building model.

public System.Collections.Generic.List<TSpace>? GetSpaces<TSpace>()
    where TSpace : DiGi.Analytical.Building.Interfaces.ISpace;

Type parameters

TSpace

The type of space to retrieve, which must implement DiGi.Analytical.Building.Interfaces.ISpace.

Returns

System.Collections.Generic.List<TSpace>
A list containing the retrieved spaces of type TSpace, or null if no such spaces are found.

BuildingModel.GetSpaces<TSpace>(IInternalCondition) Method

Retrieves the spaces associated with the specified internal condition.

public System.Collections.Generic.List<TSpace>? GetSpaces<TSpace>(DiGi.Analytical.Building.Interfaces.IInternalCondition? internalCondition)
    where TSpace : DiGi.Analytical.Building.Interfaces.ISpace;

Type parameters

TSpace

The type of space to retrieve.

Parameters

internalCondition DiGi.Analytical.Building.Interfaces.IInternalCondition

The internal condition for which to retrieve associated spaces.

Returns

System.Collections.Generic.List<TSpace>
A list of spaces of type TSpace, or null if no relations are found.

BuildingModel.GetWallConstruction(IWall) Method

Gets the wall construction for the specified wall.

public DiGi.Analytical.Building.Interfaces.IWallConstruction? GetWallConstruction(DiGi.Analytical.Building.Interfaces.IWall? wall);

Parameters

wall DiGi.Analytical.Building.Interfaces.IWall

The wall for which to retrieve the construction.

Returns

DiGi.Analytical.Building.Interfaces.IWallConstruction
The DiGi.Analytical.Building.Interfaces.IWallConstruction associated with the wall, or null if no construction is found or the wall is null.

BuildingModel.GetWindowConstruction(IWindow) Method

Gets the window construction for the specified window.

public DiGi.Analytical.Building.Interfaces.IWindowConstruction? GetWindowConstruction(DiGi.Analytical.Building.Interfaces.IWindow? window);

Parameters

window DiGi.Analytical.Building.Interfaces.IWindow

The window for which to retrieve the construction.

Returns

DiGi.Analytical.Building.Interfaces.IWindowConstruction
The DiGi.Analytical.Building.Interfaces.IWindowConstruction associated with the window, or null if no construction is found or the provided window is null.

BuildingModel.Inside(Sphere, double) Method

Determines whether the building model is contained within the specified sphere.

public bool Inside(DiGi.Geometry.Spatial.Classes.Sphere? sphere, double tolerance=1E-06);

Parameters

sphere DiGi.Geometry.Spatial.Classes.Sphere

The sphere used to check for containment.

tolerance System.Double

The distance tolerance used for the geometric operation.

Returns

System.Boolean
True if all components of the building are inside the sphere; otherwise, false.

BuildingModel.Remove(IComponent) Method

Removes the specified component from the building model.

public bool Remove(DiGi.Analytical.Building.Interfaces.IComponent? component);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component to be removed.

Returns

System.Boolean
True if the component was successfully removed; otherwise, false.

BuildingModel.Remove(IConstruction) Method

Removes the specified construction from the building model.

public bool Remove(DiGi.Analytical.Building.Interfaces.IConstruction? construction);

Parameters

construction DiGi.Analytical.Building.Interfaces.IConstruction

The construction to be removed.

Returns

System.Boolean
True if the construction was successfully removed; otherwise, false.

BuildingModel.Remove(IInternalCondition) Method

Removes the specified internal condition from the building model.

public bool Remove(DiGi.Analytical.Building.Interfaces.IInternalCondition? internalCondition);

Parameters

internalCondition DiGi.Analytical.Building.Interfaces.IInternalCondition

The internal condition to remove.

Returns

System.Boolean
True if the internal condition was successfully removed; otherwise, false.

BuildingModel.Remove(IOpening) Method

Removes the opening associated with the specified opening object.

public bool Remove(DiGi.Analytical.Building.Interfaces.IOpening? opening);

Parameters

opening DiGi.Analytical.Building.Interfaces.IOpening

The opening to remove.

Returns

System.Boolean
True if the opening was successfully removed; otherwise, false.

BuildingModel.Remove(IShade) Method

Removes the shade associated with the specified object from the building model.

public bool Remove(DiGi.Analytical.Building.Interfaces.IShade? shade);

Parameters

shade DiGi.Analytical.Building.Interfaces.IShade

The shade to be removed.

Returns

System.Boolean
True if the shade was successfully removed; otherwise, false.

BuildingModel.Remove(ISpace) Method

Removes the specified space from the building model.

public bool Remove(DiGi.Analytical.Building.Interfaces.ISpace? space);

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space to be removed.

Returns

System.Boolean
True if the space was successfully removed; otherwise, false.

BuildingModel.Remove(IZone) Method

Removes the specified zone from the building model.

public bool Remove(DiGi.Analytical.Building.Interfaces.IZone? zone);

Parameters

zone DiGi.Analytical.Building.Interfaces.IZone

The zone to be removed.

Returns

System.Boolean
True if the zone was successfully removed; otherwise, false.

BuildingModel.Remove(GuidReference) Method

Removes the object associated with the specified GUID reference from the building model.

public bool Remove(DiGi.Core.Classes.GuidReference? guidReference);

Parameters

guidReference DiGi.Core.Classes.GuidReference

The DiGi.Core.Classes.GuidReference of the object to remove.

Returns

System.Boolean
true if the object was successfully removed; otherwise, false.

BuildingModel.TryGetObject<TBuildingGuidObject>(GuidReference, TBuildingGuidObject) Method

Attempts to retrieve a building GUID object from the model using the specified reference.

public bool TryGetObject<TBuildingGuidObject>(DiGi.Core.Classes.GuidReference? guidReference, out TBuildingGuidObject? buildingUniqueObject)
    where TBuildingGuidObject : DiGi.Analytical.Building.Interfaces.IBuildingGuidObject;

Type parameters

TBuildingGuidObject

The type of the building GUID object to be retrieved.

Parameters

guidReference DiGi.Core.Classes.GuidReference

The DiGi.Core.Classes.GuidReference used to identify the object.

buildingUniqueObject TBuildingGuidObject

When this method returns true, contains the cloned instance of the retrieved object; otherwise, it is set to null.

Returns

System.Boolean
true if the object was successfully found and retrieved; otherwise, false.

BuildingModel.Unassign(IComponent, IOpening) Method

Unassigns a component from a specific opening.

public bool Unassign(DiGi.Analytical.Building.Interfaces.IComponent? component, DiGi.Analytical.Building.Interfaces.IOpening? opening);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component to be unassigned.

opening DiGi.Analytical.Building.Interfaces.IOpening

The opening from which the component is being removed.

Returns

System.Boolean
True if the unassignment was successful; otherwise, false.

BuildingModel.Unassign(IComponent, ISpace) Method

Unassigns a component from a specific space by removing the association between them.

public bool Unassign(DiGi.Analytical.Building.Interfaces.IComponent? component, DiGi.Analytical.Building.Interfaces.ISpace? space);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component to be unassigned.

space DiGi.Analytical.Building.Interfaces.ISpace

The space from which the component should be removed.

Returns

System.Boolean
True if the component was successfully unassigned; otherwise, false.

BuildingModel.Unassign(IZone, ISpace) Method

Unassigns a space from a specific zone within the building model.

public bool Unassign(DiGi.Analytical.Building.Interfaces.IZone? zone, DiGi.Analytical.Building.Interfaces.ISpace? space);

Parameters

zone DiGi.Analytical.Building.Interfaces.IZone

The zone from which the space should be unassigned. Can be null.

space DiGi.Analytical.Building.Interfaces.ISpace

The space to be removed from the zone's association. Can be null.

Returns

System.Boolean
True if the space was successfully unassigned from the zone; otherwise, false.

BuildingModel.Update(IComponent) Method

Updates the building model by adding a clone of the specified component to the relation cluster.

public bool Update(DiGi.Analytical.Building.Interfaces.IComponent? component);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component to be updated in the model; can be null.

Returns

System.Boolean
True if the component was successfully added to the relation cluster; otherwise, false.

BuildingModel.Update(IConstruction) Method

Updates the building model by adding the specified construction to the relation cluster.

public bool Update(DiGi.Analytical.Building.Interfaces.IConstruction? construction);

Parameters

construction DiGi.Analytical.Building.Interfaces.IConstruction

The construction object to be updated.

Returns

System.Boolean
True if the construction was successfully added; otherwise, false.

BuildingModel.Update(IInternalCondition) Method

Updates the building model by adding the specified internal condition.

public bool Update(DiGi.Analytical.Building.Interfaces.IInternalCondition? internalCondition);

Parameters

internalCondition DiGi.Analytical.Building.Interfaces.IInternalCondition

The internal condition to be updated.

Returns

System.Boolean
True if the update was successful; otherwise, false.

BuildingModel.Update(IOpening) Method

Updates the building model by adding or updating the specified opening within the relation cluster.

public bool Update(DiGi.Analytical.Building.Interfaces.IOpening? opening);

Parameters

opening DiGi.Analytical.Building.Interfaces.IOpening

The opening object to be updated.

Returns

System.Boolean
True if the update was successful; otherwise, false.

BuildingModel.Update(IShade) Method

Updates the building model by adding or updating the specified shade in the relation cluster.

public bool Update(DiGi.Analytical.Building.Interfaces.IShade? shade);

Parameters

shade DiGi.Analytical.Building.Interfaces.IShade

The shade object to be updated.

Returns

System.Boolean
True if the update was successful; otherwise, false.

BuildingModel.Update(ISpace) Method

Updates the building model by adding a clone of the specified space to the relation cluster.

public bool Update(DiGi.Analytical.Building.Interfaces.ISpace? space);

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space object to be added or updated in the building model.

Returns

System.Boolean
True if the space was successfully added; otherwise, false.

BuildingModel.Update(IZone) Method

Updates the building model with the specified zone.

public bool Update(DiGi.Analytical.Building.Interfaces.IZone? zone);

Parameters

zone DiGi.Analytical.Building.Interfaces.IZone

The zone to update. Can be null.

Returns

System.Boolean
true if the zone was successfully updated; otherwise, false.

BuildingModelFaceUpdater Class

Provides functionality to update a BuildingModel specifically associated with a Face.

public class BuildingModelFaceUpdater : DiGi.Analytical.Building.Classes.BuildingModelUpdater

Inheritance System.ObjectBuildingModelUpdater → BuildingModelFaceUpdater

Constructors

BuildingModelFaceUpdater(BuildingModel) Constructor

Initializes a new instance of the BuildingModelFaceUpdater class.

public BuildingModelFaceUpdater(DiGi.Analytical.Building.Classes.BuildingModel? value);

Parameters

value BuildingModel

The building model associated with this updater.

BuildingModelFaceUpdater(BuildingModel, Face) Constructor

Initializes a new instance of the BuildingModelFaceUpdater class with the specified building model and face.

public BuildingModelFaceUpdater(DiGi.Analytical.Building.Classes.BuildingModel? value, DiGi.Analytical.Classes.Face? Face);

Parameters

value BuildingModel

The building model to be updated.

Face DiGi.Analytical.Classes.Face

The face associated with the update operation.

Properties

BuildingModelFaceUpdater.Face Property

Gets or sets the face used for updating the building model.

public DiGi.Analytical.Classes.Face? Face { get; set; }

Property Value

DiGi.Analytical.Classes.Face

Methods

BuildingModelFaceUpdater.Update() Method

Performs the update operation for the building model face.

public override bool Update();

Implements Update()

Returns

System.Boolean
True if the update was successful; otherwise, false.

BuildingModelFaceUpdater.Update(IComponent) Method

Performs an update operation on the building model face and retrieves the updated component.

public bool Update(out DiGi.Analytical.Building.Interfaces.IComponent? component);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

When this method returns, contains the DiGi.Analytical.Building.Interfaces.IComponent that was updated; otherwise, null.

Returns

System.Boolean
True if any changes were made or the update was successful; otherwise, false.

BuildingModelShellsUpdater Class

Provides functionality to update shell components within a BuildingModel.

public class BuildingModelShellsUpdater : DiGi.Analytical.Building.Classes.BuildingModelUpdater

Inheritance System.ObjectBuildingModelUpdater → BuildingModelShellsUpdater

Constructors

BuildingModelShellsUpdater(BuildingModel) Constructor

Initializes a new instance of the BuildingModelShellsUpdater class.

public BuildingModelShellsUpdater(DiGi.Analytical.Building.Classes.BuildingModel value);

Parameters

value BuildingModel

The building model to be updated.

Properties

BuildingModelShellsUpdater.Shells Property

Gets or sets the collection of shell elements to be updated in the building model.

public System.Collections.Generic.List<DiGi.Analytical.Classes.Shell>? Shells { get; set; }

Property Value

System.Collections.Generic.List<DiGi.Analytical.Classes.Shell>

BuildingModelShellsUpdater.Tolerance Property

Gets or sets the distance tolerance used for geometric comparisons and operations during the shell update process. The default value is DiGi.Core.Constants.Tolerance.Distance.

public double Tolerance { get; set; }

Property Value

System.Double

BuildingModelShellsUpdater.UpdatedComponentUniqueReferences Property

Gets or sets the set of unique references for the components that have been updated.

public System.Collections.Generic.HashSet<DiGi.Core.Interfaces.IUniqueReference>? UpdatedComponentUniqueReferences { get; set; }

Property Value

System.Collections.Generic.HashSet<DiGi.Core.Interfaces.IUniqueReference>

Methods

BuildingModelShellsUpdater.Update() Method

Performs the update operation for the building model shells.

public override bool Update();

Implements Update()

Returns

System.Boolean
True if any changes were made; otherwise, false.

BuildingModelShellsUpdater.Update(List<ISpace>) Method

Updates the building model shells and retrieves the associated spaces.

public bool Update(out System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>? spaces);

Parameters

spaces System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>

When this method returns, contains a list of DiGi.Analytical.Building.Interfaces.ISpace objects that were updated or created; otherwise, null.

Returns

System.Boolean
True if the update operation was successful; otherwise, false.

BuildingModelShellUpdater Class

Provides functionality to update the shell components of a BuildingModel.

public class BuildingModelShellUpdater : DiGi.Analytical.Building.Classes.BuildingModelUpdater

Inheritance System.ObjectBuildingModelUpdater → BuildingModelShellUpdater

Constructors

BuildingModelShellUpdater(BuildingModel) Constructor

Initializes a new instance of the BuildingModelShellUpdater class.

public BuildingModelShellUpdater(DiGi.Analytical.Building.Classes.BuildingModel value);

Parameters

value BuildingModel

The building model to be used for the update process.

Properties

BuildingModelShellUpdater.Shell Property

Gets or sets the shell associated with the building model update process.

public DiGi.Analytical.Classes.Shell? Shell { get; set; }

Property Value

DiGi.Analytical.Classes.Shell

BuildingModelShellUpdater.Tolerance Property

Gets or sets the distance tolerance used during the building model shell update process.

public double Tolerance { get; set; }

Property Value

System.Double

BuildingModelShellUpdater.UpdatedComponentUniqueReferences Property

Gets or sets the set of unique references for the components that have been updated during the shell update process.

public System.Collections.Generic.HashSet<DiGi.Core.Interfaces.IUniqueReference>? UpdatedComponentUniqueReferences { get; set; }

Property Value

System.Collections.Generic.HashSet<DiGi.Core.Interfaces.IUniqueReference>

Methods

BuildingModelShellUpdater.Update() Method

Performs the update operation.

public override bool Update();

Implements Update()

Returns

System.Boolean
True if the update was successful; otherwise, false.

BuildingModelShellUpdater.Update(ISpace) Method

Updates the building model shell and retrieves or creates the associated space.

public bool Update(out DiGi.Analytical.Building.Interfaces.ISpace? space);

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

When this method returns, contains the DiGi.Analytical.Building.Interfaces.ISpace associated with the shell; otherwise, null.

Returns

System.Boolean
True if the update operation was successful; otherwise, false.

BuildingModelUpdater Class

Provides an abstract base class for implementing logic to update a BuildingModel.

public abstract class BuildingModelUpdater : DiGi.Core.Interfaces.IUpdater<DiGi.Analytical.Building.Classes.BuildingModel>, DiGi.Core.Interfaces.IUpdater, DiGi.Core.Interfaces.IEvaluator

Inheritance System.Object → BuildingModelUpdater

Derived
BuildingModelFaceUpdater
BuildingModelShellsUpdater
BuildingModelShellUpdater

Implements DiGi.Core.Interfaces.IUpdater<BuildingModel>, DiGi.Core.Interfaces.IUpdater, DiGi.Core.Interfaces.IEvaluator

Constructors

BuildingModelUpdater(BuildingModel) Constructor

Initializes a new instance of the BuildingModelUpdater class.

public BuildingModelUpdater(DiGi.Analytical.Building.Classes.BuildingModel? value);

Parameters

value BuildingModel

The BuildingModel instance to be managed by this updater.

Properties

BuildingModelUpdater.Value Property

Gets or sets the building model associated with the updater.

public DiGi.Analytical.Building.Classes.BuildingModel? Value { get; set; }

Implements Value

Property Value

BuildingModel

Methods

BuildingModelUpdater.Update() Method

Performs the update operation on the building model.

public abstract bool Update();

Implements Update()

Returns

System.Boolean
True if the update was successful; otherwise, false.

BuildingNamedObject Class

Represents an abstract base class for building objects that possess a name identifier.

public abstract class BuildingNamedObject : DiGi.Analytical.Building.Classes.BuildingObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.INamedObject

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObject → BuildingNamedObject

Derived
PhysicalComponentConstruction

Implements DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.INamedObject

Constructors

BuildingNamedObject() Constructor

Initializes a new instance of the BuildingNamedObject class.

public BuildingNamedObject();

BuildingNamedObject(BuildingNamedObject) Constructor

Initializes a new instance of the BuildingNamedObject class using an existing BuildingNamedObject object.

public BuildingNamedObject(DiGi.Analytical.Building.Classes.BuildingNamedObject? buildingNamedObject);

Parameters

buildingNamedObject BuildingNamedObject

The source BuildingNamedObject object to copy values from. This value can be null.

BuildingNamedObject(string) Constructor

Initializes a new instance of the BuildingNamedObject class with the specified name.

public BuildingNamedObject(string? name);

Parameters

name System.String

The name to assign to the building named object. This value can be null.

BuildingNamedObject(Guid, BuildingNamedObject) Constructor

Initializes a new instance of the BuildingNamedObject class using a specified unique identifier and an optional existing object to copy values from.

public BuildingNamedObject(System.Guid guid, DiGi.Analytical.Building.Classes.BuildingNamedObject? buildingNamedObject);

Parameters

guid System.Guid

The unique identifier for the building named object.

buildingNamedObject BuildingNamedObject

An optional BuildingNamedObject instance used to initialize the properties of the new instance.

BuildingNamedObject(Guid, string) Constructor

Initializes a new instance of the BuildingNamedObject class with the specified unique identifier and name.

public BuildingNamedObject(System.Guid guid, string? name);

Parameters

guid System.Guid

The unique identifier for the building named object.

name System.String

The name of the building named object.

BuildingNamedObject(JsonObject) Constructor

Initializes a new instance of the BuildingNamedObject class using the specified JSON object.

public BuildingNamedObject(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to initialize the instance. This value can be null.

Properties

BuildingNamedObject.Name Property

Gets or sets the name of the building named object.

public string? Name { get; set; }

Implements Name

Property Value

System.String

BuildingObject Class

Represents an abstract base class for all building objects, providing fundamental properties for unique identification and parameterization within the analytical building model.

public abstract class BuildingObject : DiGi.Core.Parameter.Classes.ParametrizedGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObject → BuildingObject

Derived
BuildingGeometry2DObject
BuildingGeometry3DObject
BuildingNamedObject
InternalCondition
Zone

Implements DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject

Constructors

BuildingObject() Constructor

Initializes a new instance of the BuildingObject class.

public BuildingObject();

BuildingObject(BuildingObject) Constructor

Initializes a new instance of the BuildingObject class using the specified building object.

public BuildingObject(DiGi.Analytical.Building.Classes.BuildingObject? buildingObject);

Parameters

buildingObject BuildingObject

The building object to initialize from.

BuildingObject(Guid) Constructor

Initializes a new instance of the BuildingObject class with the specified unique identifier.

public BuildingObject(System.Guid guid);

Parameters

guid System.Guid

The unique global identifier for the building object.

BuildingObject(Guid, BuildingObject) Constructor

Initializes a new instance of the BuildingObject class using the specified unique identifier and an optional existing building object.

public BuildingObject(System.Guid guid, DiGi.Analytical.Building.Classes.BuildingObject? buildingObject);

Parameters

guid System.Guid

The unique global identifier to assign to this object.

buildingObject BuildingObject

An optional BuildingObject instance used to initialize the current instance.

BuildingObject(JsonObject) Constructor

Initializes a new instance of the BuildingObject class using the specified JSON object.

public BuildingObject(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to initialize the building object. This value can be null.

BuildingRelationCluster Class

Represents a cluster of building relations, providing functionality to manage and organize relationships between building components.

public class BuildingRelationCluster : DiGi.Analytical.Building.Classes.ConstructionRelationCluster

Inheritance System.ObjectDiGi.Core.Classes.Cluster<DiGi.Core.Classes.TypeReference,DiGi.Core.Interfaces.IUniqueReference,DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Classes.ValueCluster<DiGi.Core.Classes.TypeReference,DiGi.Core.Interfaces.IUniqueReference,DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Classes.SerializableObjectValueCluster<DiGi.Core.Classes.TypeReference,DiGi.Core.Interfaces.IUniqueReference,DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Classes.UniqueObjectValueCluster<DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Relation.Classes.UniqueObjectRelationCluster<DiGi.Analytical.Interfaces.IAnalyticalGuidObject,DiGi.Analytical.Building.Interfaces.IBuildingRelation>ConstructionRelationCluster → BuildingRelationCluster

Constructors

BuildingRelationCluster() Constructor

Initializes a new instance of the BuildingRelationCluster class.

public BuildingRelationCluster();

BuildingRelationCluster(BuildingRelationCluster) Constructor

Initializes a new instance of the BuildingRelationCluster class using an existing BuildingRelationCluster instance.

public BuildingRelationCluster(DiGi.Analytical.Building.Classes.BuildingRelationCluster? buildingRelationCluster);

Parameters

buildingRelationCluster BuildingRelationCluster

The source BuildingRelationCluster instance to copy from.

BuildingRelationCluster(IEnumerable<IBuildingGuidObject>) Constructor

Initializes a new instance of the BuildingRelationCluster class using a collection of unique building objects.

public BuildingRelationCluster(System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.IBuildingGuidObject>? buildingUniqueObjects);

Parameters

buildingUniqueObjects System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.IBuildingGuidObject>

The collection of unique building objects to initialize the cluster with. This value can be null.

BuildingRelationCluster(JsonObject) Constructor

Initializes a new instance of the BuildingRelationCluster class using the specified JSON object.

public BuildingRelationCluster(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to populate the properties of the building relation cluster.

Methods

BuildingRelationCluster.AddRelation(IComponent, ISpace, ISpace) Method

Adds a spatial relation between a component and one or two spaces to the building relation cluster.

public DiGi.Analytical.Building.Classes.SpaceRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IComponent? component, DiGi.Analytical.Building.Interfaces.ISpace? space_1, DiGi.Analytical.Building.Interfaces.ISpace? space_2=null);

Parameters

component DiGi.Analytical.Building.Interfaces.IComponent

The component that is part of the spatial relation.

space_1 DiGi.Analytical.Building.Interfaces.ISpace

The primary space associated with the relation.

space_2 DiGi.Analytical.Building.Interfaces.ISpace

An optional secondary space associated with the relation.

Returns

SpaceRelation
The newly created SpaceRelation object if successful; otherwise, null.

BuildingRelationCluster.AddRelation(IDoor, IDoorConstruction) Method

Adds a relation between a door and its construction, replacing any existing relation for the specified door.

public DiGi.Analytical.Building.Classes.OpeningConstructionRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IDoor? door, DiGi.Analytical.Building.Interfaces.IDoorConstruction? doorConstruction);

Parameters

door DiGi.Analytical.Building.Interfaces.IDoor

The door object to be related.

doorConstruction DiGi.Analytical.Building.Interfaces.IDoorConstruction

The door construction object to be related.

Returns

OpeningConstructionRelation
The created OpeningConstructionRelation if successful; otherwise, null if either parameter is null.

BuildingRelationCluster.AddRelation(IFloor, IFloorConstruction) Method

Adds a relation between a floor and its corresponding construction, replacing any existing relation for the specified floor.

public DiGi.Analytical.Building.Classes.PhysicalComponentConstructionRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IFloor? floor, DiGi.Analytical.Building.Interfaces.IFloorConstruction? floorConstruction);

Parameters

floor DiGi.Analytical.Building.Interfaces.IFloor

The floor object to be associated with a construction.

floorConstruction DiGi.Analytical.Building.Interfaces.IFloorConstruction

The construction definition to associate with the floor.

Returns

PhysicalComponentConstructionRelation
The newly created PhysicalComponentConstructionRelation if successful; otherwise, null if either parameter is null.

BuildingRelationCluster.AddRelation(IRoof, IRoofConstruction) Method

Adds a relation between a roof component and its corresponding construction definition, replacing any existing relation for the specified roof.

public DiGi.Analytical.Building.Classes.PhysicalComponentConstructionRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IRoof? roof, DiGi.Analytical.Building.Interfaces.IRoofConstruction? roofConstruction);

Parameters

roof DiGi.Analytical.Building.Interfaces.IRoof

The roof object to be associated with a construction.

roofConstruction DiGi.Analytical.Building.Interfaces.IRoofConstruction

The roof construction definition to associate with the roof.

Returns

PhysicalComponentConstructionRelation
The created PhysicalComponentConstructionRelation if successful; otherwise, null if either parameter is null.

BuildingRelationCluster.AddRelation(ISpace, IInternalCondition, HourRange, string) Method

Adds a relation between a space and an internal condition.

public DiGi.Analytical.Building.Classes.SpaceInternalConditionRelation? AddRelation(DiGi.Analytical.Building.Interfaces.ISpace? space, DiGi.Analytical.Building.Interfaces.IInternalCondition? internalCondition, DiGi.Analytical.Classes.HourRange? hourRange, string? id=null);

Parameters

space DiGi.Analytical.Building.Interfaces.ISpace

The space associated with the internal condition.

internalCondition DiGi.Analytical.Building.Interfaces.IInternalCondition

The internal condition to be linked to the space.

hourRange DiGi.Analytical.Classes.HourRange

The optional hour range during which the internal condition applies.

id System.String

An optional unique identifier for the relation.

Returns

SpaceInternalConditionRelation
The created SpaceInternalConditionRelation if successful; otherwise, null.

BuildingRelationCluster.AddRelation(IWall, IWallConstruction) Method

Adds a relation between a wall and its corresponding wall construction.

public DiGi.Analytical.Building.Classes.PhysicalComponentConstructionRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IWall? wall, DiGi.Analytical.Building.Interfaces.IWallConstruction? wallConstruction);

Parameters

wall DiGi.Analytical.Building.Interfaces.IWall

The wall instance to be associated.

wallConstruction DiGi.Analytical.Building.Interfaces.IWallConstruction

The wall construction instance to be associated.

Returns

PhysicalComponentConstructionRelation
The created PhysicalComponentConstructionRelation if the relation was successfully added; otherwise, null.

BuildingRelationCluster.AddRelation(IWindow, IWindowConstruction) Method

Adds a relationship between the specified window and its corresponding window construction.

public DiGi.Analytical.Building.Classes.OpeningConstructionRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IWindow? window, DiGi.Analytical.Building.Interfaces.IWindowConstruction? windowConstruction);

Parameters

window DiGi.Analytical.Building.Interfaces.IWindow

The window object to be associated.

windowConstruction DiGi.Analytical.Building.Interfaces.IWindowConstruction

The window construction object to be associated.

Returns

OpeningConstructionRelation
The created OpeningConstructionRelation if the relation was successfully added; otherwise, null.

BuildingRelationCluster.AddRelation(IZone, IEnumerable<ISpace>) Method

Adds a relationship between a zone and a collection of spaces to the cluster, replacing any existing relation for the specified zone.

public DiGi.Analytical.Building.Classes.ZoneRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IZone? zone, System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.ISpace>? spaces);

Parameters

zone DiGi.Analytical.Building.Interfaces.IZone

The zone object involved in the relation.

spaces System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.ISpace>

The collection of space objects associated with the zone.

Returns

ZoneRelation
The newly created ZoneRelation if successful; otherwise, null.

BuildingRelationCluster.GetComponent(OpeningRelation) Method

Retrieves the component associated with the specified opening relation.

public DiGi.Analytical.Building.Interfaces.IComponent? GetComponent(DiGi.Analytical.Building.Classes.OpeningRelation? openingRelation);

Parameters

openingRelation OpeningRelation

The opening relation used to identify the component.

Returns

DiGi.Analytical.Building.Interfaces.IComponent
The DiGi.Analytical.Building.Interfaces.IComponent if a matching component is found; otherwise, null.

BuildingRelationCluster.GetComponent(SpaceRelation) Method

Retrieves the component associated with the specified space relation.

public DiGi.Analytical.Building.Interfaces.IComponent? GetComponent(DiGi.Analytical.Building.Classes.SpaceRelation? spaceRelation);

Parameters

spaceRelation SpaceRelation

The space relation used to identify the component. This value can be null.

Returns

DiGi.Analytical.Building.Interfaces.IComponent
The DiGi.Analytical.Building.Interfaces.IComponent associated with the provided space relation, or null if the relation is null, invalid, or no corresponding component is found.

BuildingRelationCluster.GetComponents<TComponent>() Method

Retrieves all components of the specified type from the cluster.

public System.Collections.Generic.List<TComponent> GetComponents<TComponent>()
    where TComponent : DiGi.Analytical.Building.Interfaces.IComponent;

Type parameters

TComponent

The type of component to retrieve, which must implement DiGi.Analytical.Building.Interfaces.IComponent.

Returns

System.Collections.Generic.List<TComponent>
A list containing all components of type TComponent.

BuildingRelationCluster.GetInternalCondition(SpaceInternalConditionRelation) Method

Retrieves the internal condition associated with the specified space internal condition relation.

public DiGi.Analytical.Building.Interfaces.IInternalCondition? GetInternalCondition(DiGi.Analytical.Building.Classes.SpaceInternalConditionRelation? spaceInternalConditionRelation);

Parameters

spaceInternalConditionRelation SpaceInternalConditionRelation

The relation used to identify the internal condition.

Returns

DiGi.Analytical.Building.Interfaces.IInternalCondition
The DiGi.Analytical.Building.Interfaces.IInternalCondition if found; otherwise, null.

BuildingRelationCluster.GetOpening(OpeningConstructionRelation) Method

Retrieves the opening associated with the specified opening construction relation.

public DiGi.Analytical.Building.Interfaces.IOpening? GetOpening(DiGi.Analytical.Building.Classes.OpeningConstructionRelation? openingConstructionRelation);

Parameters

openingConstructionRelation OpeningConstructionRelation

The opening construction relation used to look up the opening.

Returns

DiGi.Analytical.Building.Interfaces.IOpening
The DiGi.Analytical.Building.Interfaces.IOpening if found; otherwise, null.

BuildingRelationCluster.GetOpeningConstruction(OpeningConstructionRelation) Method

Retrieves the opening construction associated with the specified opening construction relation.

public DiGi.Analytical.Building.Interfaces.IOpeningConstruction? GetOpeningConstruction(DiGi.Analytical.Building.Classes.OpeningConstructionRelation? openingConstructionRelation);

Parameters

openingConstructionRelation OpeningConstructionRelation

The opening construction relation used to identify the target opening construction.

Returns

DiGi.Analytical.Building.Interfaces.IOpeningConstruction
The DiGi.Analytical.Building.Interfaces.IOpeningConstruction if found; otherwise, null.

BuildingRelationCluster.GetOpenings(OpeningRelation) Method

Retrieves a list of opening objects associated with the specified opening relation.

public System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.IOpening>? GetOpenings(DiGi.Analytical.Building.Classes.OpeningRelation? openingRelation);

Parameters

openingRelation OpeningRelation

The opening relation containing references to the openings to be retrieved.

Returns

System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.IOpening>
A list of DiGi.Analytical.Building.Interfaces.IOpening objects if successfully retrieved; otherwise, null.

BuildingRelationCluster.GetPhysicalComponent(PhysicalComponentConstructionRelation) Method

Retrieves the physical component associated with the specified construction relation.

public DiGi.Analytical.Building.Interfaces.IPhysicalComponent? GetPhysicalComponent(DiGi.Analytical.Building.Classes.PhysicalComponentConstructionRelation? physicalComponentConstructionRelation);

Parameters

physicalComponentConstructionRelation PhysicalComponentConstructionRelation

The physical component construction relation used to identify the component.

Returns

DiGi.Analytical.Building.Interfaces.IPhysicalComponent
The DiGi.Analytical.Building.Interfaces.IPhysicalComponent if found; otherwise, null.

BuildingRelationCluster.GetPhysicalComponentConstruction(PhysicalComponentConstructionRelation) Method

Retrieves the physical component construction associated with the specified relation.

public DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction? GetPhysicalComponentConstruction(DiGi.Analytical.Building.Classes.PhysicalComponentConstructionRelation? physicalComponentConstructionRelation);

Parameters

physicalComponentConstructionRelation PhysicalComponentConstructionRelation

The relation used to identify the physical component construction.

Returns

DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction
The matching DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction if found; otherwise, null.

BuildingRelationCluster.GetSpace<TSpace>(SpaceInternalConditionRelation) Method

Retrieves a space of the specified type based on the provided internal condition relation.

public TSpace? GetSpace<TSpace>(DiGi.Analytical.Building.Classes.SpaceInternalConditionRelation? spaceInternalConditionRelation)
    where TSpace : DiGi.Analytical.Building.Interfaces.ISpace;

Type parameters

TSpace

The type of space to retrieve, which must implement DiGi.Analytical.Building.Interfaces.ISpace.

Parameters

spaceInternalConditionRelation SpaceInternalConditionRelation

The internal condition relation used to identify the space via its reference.

Returns

TSpace
The space object of type <typeparam ref="TSpace" /> if found; otherwise, the default value for the type.

BuildingRelationCluster.GetSpaces(SpaceRelation) Method

Retrieves a list of space objects associated with the specified space relation.

public System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>? GetSpaces(DiGi.Analytical.Building.Classes.SpaceRelation? spaceRelation);

Parameters

spaceRelation SpaceRelation

The space relation containing references to the spaces to be retrieved.

Returns

System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>
A list of DiGi.Analytical.Building.Interfaces.ISpace objects if successfully retrieved; otherwise, null.

BuildingRelationCluster.GetSpaces(ZoneRelation) Method

Retrieves a list of space objects associated with the specified zone relation.

public System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>? GetSpaces(DiGi.Analytical.Building.Classes.ZoneRelation? zoneRelation);

Parameters

zoneRelation ZoneRelation

The zone relation object containing references to the spaces.

Returns

System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.ISpace>
A list of DiGi.Analytical.Building.Interfaces.ISpace objects if successfully retrieved; otherwise, null.

BuildingRelationCluster.GetSpaces<TSpace>() Method

Retrieves a list of space objects of the specified type from the cluster.

public System.Collections.Generic.List<TSpace>? GetSpaces<TSpace>()
    where TSpace : DiGi.Analytical.Building.Interfaces.ISpace;

Type parameters

TSpace

The type of space object to retrieve, which must implement DiGi.Analytical.Building.Interfaces.ISpace.

Returns

System.Collections.Generic.List<TSpace>
A list containing the retrieved space objects of type <typeparam ref="TSpace" />, or null if no such spaces are found.

Component Class

Represents an abstract base class for building components within the analytical 3D geometry model.

public abstract class Component : DiGi.Analytical.Building.Classes.BuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObject → Component

Derived
AbstractComponent
PhysicalComponent

Implements DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable

Constructors

Component() Constructor

Initializes a new instance of the Component class.

public Component();

Component(Component) Constructor

Initializes a new instance of the Component class based on an existing Component instance.

public Component(DiGi.Analytical.Building.Classes.Component? component);

Parameters

component Component

The source Component used to initialize this instance. This value can be null.

Component(Guid) Constructor

Initializes a new instance of the Component class with the specified unique identifier.

public Component(System.Guid guid);

Parameters

guid System.Guid

The unique global identifier for the component.

Component(Guid, Component) Constructor

Initializes a new instance of the Component class using the specified unique identifier and an optional source component.

public Component(System.Guid guid, DiGi.Analytical.Building.Classes.Component? component);

Parameters

guid System.Guid

The unique global identifier for the component.

component Component

An optional existing Component instance to initialize from.

Component(JsonObject) Constructor

Initializes a new instance of the Component class using the specified JSON object.

public Component(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The System.Text.Json.Nodes.JsonObject containing the data to initialize the component. This value can be null.

Methods

Component.GetBoundingBox() Method

Gets the axis-aligned bounding box of the component.

public abstract DiGi.Geometry.Spatial.Classes.BoundingBox3D? GetBoundingBox();

Implements GetBoundingBox()

Returns

DiGi.Geometry.Spatial.Classes.BoundingBox3D
The DiGi.Geometry.Spatial.Classes.BoundingBox3D encompassing the component, or null if it cannot be determined.

ComponentConstruction<TConstructable> Class

Provides an abstract base implementation for the construction of a specific constructable component.

public abstract class ComponentConstruction<TConstructable> : DiGi.Analytical.Building.Classes.PhysicalComponentConstruction, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction<TConstructable>, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction, DiGi.Analytical.Building.Interfaces.IConstruction, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Analytical.Building.Interfaces.IBuildingDescribableObject, DiGi.Core.Interfaces.IDescribableObject, DiGi.Analytical.Building.Interfaces.IConstruction<TConstructable>
    where TConstructable : DiGi.Analytical.Building.Interfaces.IConstructable

Type parameters

TConstructable

The type of the constructable object, which must implement the DiGi.Analytical.Building.Interfaces.IConstructable interface.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingNamedObjectPhysicalComponentConstruction → ComponentConstruction<TConstructable>

Derived
FloorConstruction
RoofConstruction
WallConstruction

Implements DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction<TConstructable>, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction, DiGi.Analytical.Building.Interfaces.IConstruction, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Analytical.Building.Interfaces.IBuildingDescribableObject, DiGi.Core.Interfaces.IDescribableObject, DiGi.Analytical.Building.Interfaces.IConstruction<TConstructable>

Constructors

ComponentConstruction() Constructor

Initializes a new instance of the ComponentConstruction<TConstructable> class.

public ComponentConstruction();

ComponentConstruction(ComponentConstruction<TConstructable>) Constructor

Initializes a new instance of the ComponentConstruction<TConstructable> class using the specified component construction.

public ComponentConstruction(DiGi.Analytical.Building.Classes.ComponentConstruction<TConstructable>? componentConstruction);

Parameters

componentConstruction DiGi.Analytical.Building.Classes.ComponentConstruction<TConstructable>

The existing component construction instance from which to copy properties.

ComponentConstruction(Guid, ComponentConstruction<TConstructable>) Constructor

Initializes a new instance of the ComponentConstruction<TConstructable> class using the specified unique identifier and an optional source construction object.

public ComponentConstruction(System.Guid guid, DiGi.Analytical.Building.Classes.ComponentConstruction<TConstructable>? componentConstruction);

Parameters

guid System.Guid

The unique global identifier for this component construction.

componentConstruction DiGi.Analytical.Building.Classes.ComponentConstruction<TConstructable>

An optional existing ComponentConstruction<TConstructable> instance to initialize from.

ComponentConstruction(JsonObject) Constructor

Initializes a new instance of the ComponentConstruction<TConstructable> class using the specified JSON object.

public ComponentConstruction(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the data to initialize the construction instance.

ConstructionRelationCluster Class

Represents a cluster of unique object relations that manages the associations between analytical GUID objects and building relations within a construction context.

public class ConstructionRelationCluster : DiGi.Core.Relation.Classes.UniqueObjectRelationCluster<DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingRelation>, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject

Inheritance System.ObjectDiGi.Core.Classes.Cluster<DiGi.Core.Classes.TypeReference,DiGi.Core.Interfaces.IUniqueReference,DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Classes.ValueCluster<DiGi.Core.Classes.TypeReference,DiGi.Core.Interfaces.IUniqueReference,DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Classes.SerializableObjectValueCluster<DiGi.Core.Classes.TypeReference,DiGi.Core.Interfaces.IUniqueReference,DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Classes.UniqueObjectValueCluster<DiGi.Analytical.Interfaces.IAnalyticalGuidObject>DiGi.Core.Relation.Classes.UniqueObjectRelationCluster<DiGi.Analytical.Interfaces.IAnalyticalGuidObject,DiGi.Analytical.Building.Interfaces.IBuildingRelation> → ConstructionRelationCluster

Derived
BuildingRelationCluster

Implements DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject

Constructors

ConstructionRelationCluster() Constructor

Initializes a new instance of the ConstructionRelationCluster class.

public ConstructionRelationCluster();

ConstructionRelationCluster(ConstructionRelationCluster) Constructor

Initializes a new instance of the ConstructionRelationCluster class using another ConstructionRelationCluster instance.

public ConstructionRelationCluster(DiGi.Analytical.Building.Classes.ConstructionRelationCluster? constructionRelationCluster);

Parameters

constructionRelationCluster ConstructionRelationCluster

The source ConstructionRelationCluster instance to copy from.

ConstructionRelationCluster(IEnumerable<IAnalyticalGuidObject>) Constructor

Initializes a new instance of the ConstructionRelationCluster class using a collection of analytical GUID objects.

public ConstructionRelationCluster(System.Collections.Generic.IEnumerable<DiGi.Analytical.Interfaces.IAnalyticalGuidObject>? analyticalGuidObjects);

Parameters

analyticalGuidObjects System.Collections.Generic.IEnumerable<DiGi.Analytical.Interfaces.IAnalyticalGuidObject>

The collection of analytical GUID objects to initialize the cluster with. This value can be null.

ConstructionRelationCluster(JsonObject) Constructor

Initializes a new instance of the ConstructionRelationCluster class using the specified JSON object.

public ConstructionRelationCluster(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the data used to initialize the cluster. This value can be null.

Methods

ConstructionRelationCluster.AddRelation(IOpeningConstruction, OpeningConstructionPart, IStructureLayer) Method

Adds a relation between an opening construction and a structure layer based on the specified construction part.

public DiGi.Analytical.Building.Classes.OpeningConstructionStructureLayersRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IOpeningConstruction? openingConstruction, DiGi.Analytical.Building.Enums.OpeningConstructionPart openingConstructionPart, DiGi.Analytical.Building.Interfaces.IStructureLayer? structureLayer);

Parameters

openingConstruction DiGi.Analytical.Building.Interfaces.IOpeningConstruction

The opening construction object involved in the relation.

openingConstructionPart OpeningConstructionPart

The specific part of the opening construction to relate.

structureLayer DiGi.Analytical.Building.Interfaces.IStructureLayer

The structure layer object involved in the relation.

Returns

OpeningConstructionStructureLayersRelation
The created or updated OpeningConstructionStructureLayersRelation, or null if any input is null or the part is undefined.

ConstructionRelationCluster.AddRelation(IPhysicalComponentConstruction, IStructureLayer) Method

Adds or updates a relation between a physical component construction and a structure layer within the construction relation cluster.

public DiGi.Analytical.Building.Classes.PhysicalComponentConstructionStructureLayersRelation? AddRelation(DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction? physicalComponentConstruction, DiGi.Analytical.Building.Interfaces.IStructureLayer? structureLayer);

Parameters

physicalComponentConstruction DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction

The physical component construction object to be related.

structureLayer DiGi.Analytical.Building.Interfaces.IStructureLayer

The structure layer object to be related.

Returns

PhysicalComponentConstructionStructureLayersRelation
The created or updated PhysicalComponentConstructionStructureLayersRelation, or null if either the physicalComponentConstruction or structureLayer is null.

ConstructionRelationCluster.AddRelation(IMaterial, IStructureLayer) Method

Adds a relation between the specified material and structure layer.

public DiGi.Analytical.Building.Classes.MaterialStructureLayerRelation? AddRelation(DiGi.Analytical.Interfaces.IMaterial? material, DiGi.Analytical.Building.Interfaces.IStructureLayer? structureLayer);

Parameters

material DiGi.Analytical.Interfaces.IMaterial

The material to be associated with the structure layer.

structureLayer DiGi.Analytical.Building.Interfaces.IStructureLayer

The structure layer to be associated with the material.

Returns

MaterialStructureLayerRelation
The created MaterialStructureLayerRelation if successful; otherwise, null.

ConstructionRelationCluster.GetMaterial(IStructureLayer) Method

Retrieves the material associated with the specified structure layer.

public DiGi.Analytical.Interfaces.IMaterial? GetMaterial(DiGi.Analytical.Building.Interfaces.IStructureLayer? structureLayer);

Parameters

structureLayer DiGi.Analytical.Building.Interfaces.IStructureLayer

The structure layer for which to retrieve the associated material.

Returns

DiGi.Analytical.Interfaces.IMaterial
The DiGi.Analytical.Interfaces.IMaterial associated with the provided structure layer, or null if no relation exists or the structureLayer is null.

ConstructionRelationCluster.GetStructureLayers(IPhysicalComponentConstruction) Method

Retrieves the list of structure layers associated with the specified physical component construction.

public System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.IStructureLayer>? GetStructureLayers(DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction? physicalComponentConstruction);

Parameters

physicalComponentConstruction DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction

The physical component construction for which to retrieve the associated structure layers.

Returns

System.Collections.Generic.List<DiGi.Analytical.Building.Interfaces.IStructureLayer>
A list of DiGi.Analytical.Building.Interfaces.IStructureLayer objects if found; otherwise, null.

ConstructionStructureLayersRelation<TConstruction> Class

Represents a one-to-many bidirectional relationship between a construction object and its associated structure layers.

public abstract class ConstructionStructureLayersRelation<TConstruction> : DiGi.Core.Relation.Classes.OneToManyBidirectionalRelation<TConstruction, DiGi.Analytical.Building.Interfaces.IStructureLayer>, DiGi.Analytical.Building.Interfaces.IBuildingRelation, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Relation.Interfaces.IRelation, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject
    where TConstruction : DiGi.Analytical.Building.Interfaces.IConstruction

Type parameters

TConstruction

The type of the construction object, which must implement DiGi.Analytical.Building.Interfaces.IConstruction.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Relation.Classes.RelationDiGi.Core.Relation.Classes.Relation<TConstruction,DiGi.Analytical.Building.Interfaces.IStructureLayer>DiGi.Core.Relation.Classes.OneToManyRelation<TConstruction,DiGi.Analytical.Building.Interfaces.IStructureLayer>DiGi.Core.Relation.Classes.OneToManyBidirectionalRelation<TConstruction,DiGi.Analytical.Building.Interfaces.IStructureLayer> → ConstructionStructureLayersRelation<TConstruction>

Derived
OpeningConstructionStructureLayersRelation
PhysicalComponentConstructionStructureLayersRelation

Implements DiGi.Analytical.Building.Interfaces.IBuildingRelation, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Relation.Interfaces.IRelation, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject

Constructors

ConstructionStructureLayersRelation(ConstructionStructureLayersRelation<TConstruction>) Constructor

Initializes a new instance of the ConstructionStructureLayersRelation<TConstruction> class using an existing relation instance.

public ConstructionStructureLayersRelation(DiGi.Analytical.Building.Classes.ConstructionStructureLayersRelation<TConstruction>? constructionStructureLayersRelation);

Parameters

constructionStructureLayersRelation DiGi.Analytical.Building.Classes.ConstructionStructureLayersRelation<TConstruction>

The source relation instance from which values are copied.

ConstructionStructureLayersRelation(JsonObject) Constructor

Initializes a new instance of the ConstructionStructureLayersRelation<TConstruction> class from the specified JSON object.

public ConstructionStructureLayersRelation(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to reconstruct the relation instance.

ConstructionStructureLayersRelation(TConstruction, IStructureLayer) Constructor

Initializes a new instance of the ConstructionStructureLayersRelation<TConstruction> class using the specified construction and structure layer.

public ConstructionStructureLayersRelation(TConstruction? construction, DiGi.Analytical.Building.Interfaces.IStructureLayer? structureLayer);

Parameters

construction TConstruction

The construction associated with this relation.

structureLayer DiGi.Analytical.Building.Interfaces.IStructureLayer

The structure layer to be associated with the construction.

ConstructionStructureLayersRelation(TConstruction, IEnumerable<IStructureLayer>) Constructor

Initializes a new instance of the ConstructionStructureLayersRelation<TConstruction> class with the specified construction and collection of structure layers.

public ConstructionStructureLayersRelation(TConstruction? construction, System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.IStructureLayer>? structureLayers);

Parameters

construction TConstruction

The construction associated with this relation.

structureLayers System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.IStructureLayer>

The collection of structure layers associated with this relation.

CurveWall Class

Represents a wall defined by a 3D curve.

public class CurveWall : DiGi.Analytical.Building.Classes.CurveWall<DiGi.Geometry.Spatial.Interfaces.ICurve3D>

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObjectComponentPhysicalComponentDiGi.Analytical.Building.Classes.PhysicalComponent<DiGi.Geometry.Spatial.Interfaces.ICurve3D>DiGi.Analytical.Building.Classes.Wall<DiGi.Geometry.Spatial.Interfaces.ICurve3D>DiGi.Analytical.Building.Classes.CurveWall<DiGi.Geometry.Spatial.Interfaces.ICurve3D> → CurveWall

Constructors

CurveWall(CurveWall) Constructor

Initializes a new instance of the CurveWall class using the specified CurveWall instance.

public CurveWall(DiGi.Analytical.Building.Classes.CurveWall? curveWall);

Parameters

curveWall CurveWall

The CurveWall instance to copy from.

CurveWall(IWall, ICurve3D, double) Constructor

Initializes a new instance of the CurveWall class using an existing wall, a specified 3D curve, and a height.

public CurveWall(DiGi.Analytical.Building.Interfaces.IWall wall, DiGi.Geometry.Spatial.Interfaces.ICurve3D? curve3D, double height);

Parameters

wall DiGi.Analytical.Building.Interfaces.IWall

The source wall used to initialize properties for the new curved wall.

curve3D DiGi.Geometry.Spatial.Interfaces.ICurve3D

The 3D curve that defines the path of the curved wall.

height System.Double

The height of the curved wall.

CurveWall(IWall, ICurve3D, double, Vector3D) Constructor

Initializes a new instance of the CurveWall class using an existing wall, a curve, height, and direction.

public CurveWall(DiGi.Analytical.Building.Interfaces.IWall wall, DiGi.Geometry.Spatial.Interfaces.ICurve3D? curve3D, double height, DiGi.Geometry.Spatial.Classes.Vector3D? direction);

Parameters

wall DiGi.Analytical.Building.Interfaces.IWall

The DiGi.Analytical.Building.Interfaces.IWall object to use as a basis for initialization.

curve3D DiGi.Geometry.Spatial.Interfaces.ICurve3D

The DiGi.Geometry.Spatial.Interfaces.ICurve3D that defines the base of the curved wall.

height System.Double

The height of the wall.

direction DiGi.Geometry.Spatial.Classes.Vector3D

The DiGi.Geometry.Spatial.Classes.Vector3D representing the direction of the wall's extrusion.

CurveWall(ICurve3D, double) Constructor

Initializes a new instance of the CurveWall class with the specified curve and height.

public CurveWall(DiGi.Geometry.Spatial.Interfaces.ICurve3D? curve3D, double height);

Parameters

curve3D DiGi.Geometry.Spatial.Interfaces.ICurve3D

The 3D curve that defines the base path of the wall.

height System.Double

The height of the wall.

CurveWall(ICurve3D, double, Vector3D) Constructor

Initializes a new instance of the CurveWall class.

public CurveWall(DiGi.Geometry.Spatial.Interfaces.ICurve3D? curve3D, double height, DiGi.Geometry.Spatial.Classes.Vector3D? direction);

Parameters

curve3D DiGi.Geometry.Spatial.Interfaces.ICurve3D

The DiGi.Geometry.Spatial.Interfaces.ICurve3D that defines the base path of the curved wall.

height System.Double

The height of the curved wall.

direction DiGi.Geometry.Spatial.Classes.Vector3D

The DiGi.Geometry.Spatial.Classes.Vector3D representing the direction of the curved wall.

CurveWall(Guid, CurveWall<ICurve3D>) Constructor

Initializes a new instance of the CurveWall class with a specified unique identifier and an existing curve wall.

public CurveWall(System.Guid guid, DiGi.Analytical.Building.Classes.CurveWall<DiGi.Geometry.Spatial.Interfaces.ICurve3D>? curveWall);

Parameters

guid System.Guid

The unique global identifier for the object.

curveWall DiGi.Analytical.Building.Classes.CurveWall<DiGi.Geometry.Spatial.Interfaces.ICurve3D>

The source CurveWall<TCurve3D> instance used to initialize the new object.

CurveWall(JsonObject) Constructor

Initializes a new instance of the CurveWall class from the specified System.Text.Json.Nodes.JsonObject.

public CurveWall(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The System.Text.Json.Nodes.JsonObject used to populate the properties of the new CurveWall instance.

CurveWall<TCurve3D> Class

Represents a wall defined by a curved geometry.

public class CurveWall<TCurve3D> : DiGi.Analytical.Building.Classes.Wall<TCurve3D>, DiGi.Analytical.Building.Interfaces.ICurveWall<TCurve3D>, DiGi.Analytical.Building.Interfaces.IWall, DiGi.Analytical.Building.Interfaces.IPhysicalComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingCurveObject<TCurve3D>, DiGi.Analytical.Building.Interfaces.IBuildingCurveObject, DiGi.Analytical.Building.Interfaces.IComponent<TCurve3D>, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<TCurve3D>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<TCurve3D>
    where TCurve3D : DiGi.Geometry.Spatial.Interfaces.ICurve3D

Type parameters

TCurve3D

The type of the 3D curve used to define the wall's path, which must implement DiGi.Geometry.Spatial.Interfaces.ICurve3D.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObjectComponentPhysicalComponentDiGi.Analytical.Building.Classes.PhysicalComponent<TCurve3D>DiGi.Analytical.Building.Classes.Wall<TCurve3D> → CurveWall<TCurve3D>

Derived
CurveWall

Implements DiGi.Analytical.Building.Interfaces.ICurveWall<TCurve3D>, DiGi.Analytical.Building.Interfaces.IWall, DiGi.Analytical.Building.Interfaces.IPhysicalComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingCurveObject<TCurve3D>, DiGi.Analytical.Building.Interfaces.IBuildingCurveObject, DiGi.Analytical.Building.Interfaces.IComponent<TCurve3D>, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<TCurve3D>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<TCurve3D>

Constructors

CurveWall(CurveWall<TCurve3D>) Constructor

Initializes a new instance of the CurveWall<TCurve3D> class by copying an existing instance.

public CurveWall(DiGi.Analytical.Building.Classes.CurveWall<TCurve3D>? curveWall);

Parameters

curveWall DiGi.Analytical.Building.Classes.CurveWall<TCurve3D>

The source CurveWall<TCurve3D> instance from which to copy properties.

CurveWall(IWall, TCurve3D, double) Constructor

Initializes a new instance of the CurveWall<TCurve3D> class using an existing wall, a 3D curve, and a specified height, with the direction defaulting to World Z.

public CurveWall(DiGi.Analytical.Building.Interfaces.IWall wall, TCurve3D? curve3D, double height);

Parameters

wall DiGi.Analytical.Building.Interfaces.IWall

The base wall object used for initialization.

curve3D TCurve3D

The 3D curve defining the geometry of the curved wall.

height System.Double

The height of the wall along the World Z axis.

CurveWall(IWall, TCurve3D, double, Vector3D) Constructor

Initializes a new instance of the CurveWall<TCurve3D> class using an existing wall, a base curve, a height, and a specific direction vector.

public CurveWall(DiGi.Analytical.Building.Interfaces.IWall wall, TCurve3D? curve3D, double height, DiGi.Geometry.Spatial.Classes.Vector3D? direction);

Parameters

wall DiGi.Analytical.Building.Interfaces.IWall

The DiGi.Analytical.Building.Interfaces.IWall to use as a basis for initialization.

curve3D TCurve3D

The base 3D curve defining the wall path.

height System.Double

The height of the wall.

direction DiGi.Geometry.Spatial.Classes.Vector3D

The DiGi.Geometry.Spatial.Classes.Vector3D defining the direction in which the wall extends from its base curve.

CurveWall(Guid, CurveWall<TCurve3D>) Constructor

Initializes a new instance of the CurveWall<TCurve3D> class using a unique identifier and an existing curve wall instance.

public CurveWall(System.Guid guid, DiGi.Analytical.Building.Classes.CurveWall<TCurve3D>? curveWall);

Parameters

guid System.Guid

The unique identifier for the object.

curveWall DiGi.Analytical.Building.Classes.CurveWall<TCurve3D>

The existing CurveWall<TCurve3D> instance to copy properties from.

CurveWall(JsonObject) Constructor

Initializes a new instance of the CurveWall<TCurve3D> class from the specified JSON object.

public CurveWall(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the data to initialize the instance.

CurveWall(TCurve3D, double) Constructor

Initializes a new instance of the CurveWall<TCurve3D> class using the specified curve and height, with the direction defaulting to the world Z-axis.

public CurveWall(TCurve3D? curve3D, double height);

Parameters

curve3D TCurve3D

The 3D curve that defines the base of the wall.

height System.Double

The height of the wall.

CurveWall(TCurve3D, double, Vector3D) Constructor

Initializes a new instance of the CurveWall<TCurve3D> class.

public CurveWall(TCurve3D? curve3D, double height, DiGi.Geometry.Spatial.Classes.Vector3D? direction);

Parameters

curve3D TCurve3D

The base 3D curve defining the wall path.

height System.Double

The height of the wall as a double.

direction DiGi.Geometry.Spatial.Classes.Vector3D

The DiGi.Geometry.Spatial.Classes.Vector3D direction vector used to determine the orientation and extrusion of the wall.

Properties

CurveWall<TCurve3D>.Vector Property

Gets or sets the DiGi.Geometry.Spatial.Classes.Vector3D that defines the direction and magnitude of the curved wall's extrusion.

public DiGi.Geometry.Spatial.Classes.Vector3D? Vector { get; set; }

Implements Vector

Property Value

DiGi.Geometry.Spatial.Classes.Vector3D

Methods

CurveWall<TCurve3D>.GetBoundingBox() Method

Gets the axis-aligned bounding box of the curved wall.

public override DiGi.Geometry.Spatial.Classes.BoundingBox3D? GetBoundingBox();

Implements GetBoundingBox()

Returns

DiGi.Geometry.Spatial.Classes.BoundingBox3D
The DiGi.Geometry.Spatial.Classes.BoundingBox3D encompassing the curved wall, or null if it cannot be determined.

CurveWall<TCurve3D>.GetSurface3D() Method

Retrieves the 3D surface representation of the curved wall.

public DiGi.Geometry.Spatial.Interfaces.ISurface3D? GetSurface3D();

Returns

DiGi.Geometry.Spatial.Interfaces.ISurface3D
The DiGi.Geometry.Spatial.Interfaces.ISurface3D representing the wall's surface if it can be determined; otherwise, null.

DoorConstruction Class

Represents a door construction element within the analytical building model, providing functionality for managing door-specific openings.

public class DoorConstruction : DiGi.Analytical.Building.Classes.OpeningConstruction<DiGi.Analytical.Building.Interfaces.IDoor>, DiGi.Analytical.Building.Interfaces.IDoorConstruction, DiGi.Analytical.Building.Interfaces.IOpeningConstruction<DiGi.Analytical.Building.Interfaces.IDoor>, DiGi.Analytical.Building.Interfaces.IOpeningConstruction, DiGi.Analytical.Building.Interfaces.IGeometry2DConstruction, DiGi.Analytical.Building.Interfaces.IConstruction, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Analytical.Building.Interfaces.IBuildingDescribableObject, DiGi.Core.Interfaces.IDescribableObject, DiGi.Analytical.Building.Interfaces.IGeometry2DConstruction<DiGi.Analytical.Building.Interfaces.IDoor, DiGi.Geometry.Planar.Interfaces.ISurface2D>, DiGi.Analytical.Building.Interfaces.IGeometry2DConstruction<DiGi.Analytical.Building.Interfaces.IDoor>, DiGi.Analytical.Building.Interfaces.IConstruction<DiGi.Analytical.Building.Interfaces.IDoor>

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry2DObjectDiGi.Analytical.Building.Classes.BuildingGeometry2DObject<DiGi.Geometry.Planar.Interfaces.ISurface2D>OpeningConstructionDiGi.Analytical.Building.Classes.OpeningConstruction<DiGi.Analytical.Building.Interfaces.IDoor> → DoorConstruction

Implements DiGi.Analytical.Building.Interfaces.IDoorConstruction, DiGi.Analytical.Building.Interfaces.IOpeningConstruction<DiGi.Analytical.Building.Interfaces.IDoor>, DiGi.Analytical.Building.Interfaces.IOpeningConstruction, DiGi.Analytical.Building.Interfaces.IGeometry2DConstruction, DiGi.Analytical.Building.Interfaces.IConstruction, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Analytical.Building.Interfaces.IBuildingDescribableObject, DiGi.Core.Interfaces.IDescribableObject, DiGi.Analytical.Building.Interfaces.IGeometry2DConstruction<DiGi.Analytical.Building.Interfaces.IDoor,DiGi.Geometry.Planar.Interfaces.ISurface2D>, DiGi.Analytical.Building.Interfaces.IGeometry2DConstruction<DiGi.Analytical.Building.Interfaces.IDoor>, DiGi.Analytical.Building.Interfaces.IConstruction<DiGi.Analytical.Building.Interfaces.IDoor>

Constructors

DoorConstruction(DoorConstruction) Constructor

Initializes a new instance of the DoorConstruction class using an existing DoorConstruction instance.

public DoorConstruction(DiGi.Analytical.Building.Classes.DoorConstruction? doorConstruction);

Parameters

doorConstruction DoorConstruction

The source DoorConstruction instance to copy from.

DoorConstruction(string, ISurface2D) Constructor

Initializes a new instance of the DoorConstruction class.

public DoorConstruction(string? name, DiGi.Geometry.Planar.Interfaces.ISurface2D? surface2D);

Parameters

name System.String

The optional name of the door construction.

surface2D DiGi.Geometry.Planar.Interfaces.ISurface2D

The optional 2D surface associated with the door construction.

DoorConstruction(Guid, DoorConstruction) Constructor

Initializes a new instance of the DoorConstruction class with a specified unique identifier and an existing door construction.

public DoorConstruction(System.Guid guid, DiGi.Analytical.Building.Classes.DoorConstruction? doorConstruction);

Parameters

guid System.Guid

The unique identifier for the door construction.

doorConstruction DoorConstruction

An optional existing DoorConstruction instance to copy properties from.

DoorConstruction(JsonObject) Constructor

Initializes a new instance of the DoorConstruction class from the specified JSON object.

public DoorConstruction(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The System.Text.Json.Nodes.JsonObject containing the data used to initialize this instance.

FaceFloor Class

Represents a building floor that is defined by a 3D face geometry.

public class FaceFloor : DiGi.Analytical.Building.Classes.Floor<DiGi.Geometry.Spatial.Interfaces.IFace3D>, DiGi.Analytical.Building.Interfaces.IFaceFloor, DiGi.Analytical.Building.Interfaces.IFloor, DiGi.Analytical.Building.Interfaces.IPhysicalComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingFaceObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<DiGi.Geometry.Spatial.Interfaces.IFace3D>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<DiGi.Geometry.Spatial.Interfaces.IFace3D>, DiGi.Analytical.Building.Interfaces.IComponent<DiGi.Geometry.Spatial.Interfaces.IFace3D>

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObjectComponentPhysicalComponentDiGi.Analytical.Building.Classes.PhysicalComponent<DiGi.Geometry.Spatial.Interfaces.IFace3D>DiGi.Analytical.Building.Classes.Floor<DiGi.Geometry.Spatial.Interfaces.IFace3D> → FaceFloor

Implements DiGi.Analytical.Building.Interfaces.IFaceFloor, DiGi.Analytical.Building.Interfaces.IFloor, DiGi.Analytical.Building.Interfaces.IPhysicalComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable, DiGi.Analytical.Building.Interfaces.IBuildingFaceObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject<DiGi.Geometry.Spatial.Interfaces.IFace3D>, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject<DiGi.Geometry.Spatial.Interfaces.IFace3D>, DiGi.Analytical.Building.Interfaces.IComponent<DiGi.Geometry.Spatial.Interfaces.IFace3D>

Constructors

FaceFloor(FaceFloor) Constructor

Initializes a new instance of the FaceFloor class using an existing FaceFloor instance.

public FaceFloor(DiGi.Analytical.Building.Classes.FaceFloor? faceFloor);

Parameters

faceFloor FaceFloor

The source FaceFloor instance to copy from.

FaceFloor(IFloor, IFace3D) Constructor

Initializes a new instance of the FaceFloor class using the specified floor and geometry.

public FaceFloor(DiGi.Analytical.Building.Interfaces.IFloor? floor, DiGi.Geometry.Spatial.Interfaces.IFace3D? geometry);

Parameters

floor DiGi.Analytical.Building.Interfaces.IFloor

The source floor object to initialize from.

geometry DiGi.Geometry.Spatial.Interfaces.IFace3D

The 3D face geometry associated with this floor.

FaceFloor(IFace3D) Constructor

Initializes a new instance of the FaceFloor class using the specified geometry.

public FaceFloor(DiGi.Geometry.Spatial.Interfaces.IFace3D? geometry);

Parameters

geometry DiGi.Geometry.Spatial.Interfaces.IFace3D

The 3D face geometry to associate with this floor instance.

FaceFloor(Guid, FaceFloor) Constructor

Initializes a new instance of the FaceFloor class with a specified unique identifier and an existing FaceFloor object.

public FaceFloor(System.Guid guid, DiGi.Analytical.Building.Classes.FaceFloor? faceFloor);

Parameters

guid System.Guid

The unique identifier for the floor face.

faceFloor FaceFloor

An optional FaceFloor instance to initialize from.

FaceFloor(JsonObject) Constructor

Initializes a new instance of the FaceFloor class from the specified JSON object.

public FaceFloor(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The System.Text.Json.Nodes.JsonObject containing the data used to initialize this instance.

Methods

FaceFloor.GetBoundingBox() Method

Gets the axis-aligned bounding box of the face floor.

public override DiGi.Geometry.Spatial.Classes.BoundingBox3D? GetBoundingBox();

Implements GetBoundingBox()

Returns

DiGi.Geometry.Spatial.Classes.BoundingBox3D
The three-dimensional bounding box encompassing the face floor, or null if it cannot be determined.

Floor<T> Class

Represents an abstract base class for a floor component within a building's analytical model.

public abstract class Floor<T> : DiGi.Analytical.Building.Classes.PhysicalComponent<T>, DiGi.Analytical.Building.Interfaces.IFloor, DiGi.Analytical.Building.Interfaces.IPhysicalComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable
    where T : DiGi.Geometry.Spatial.Interfaces.IGeometry3D

Type parameters

T

The type of 3D geometry associated with the floor, which must implement DiGi.Geometry.Spatial.Interfaces.IGeometry3D.

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingGeometry3DObjectComponentPhysicalComponentDiGi.Analytical.Building.Classes.PhysicalComponent<T> → Floor<T>

Derived
FaceFloor

Implements DiGi.Analytical.Building.Interfaces.IFloor, DiGi.Analytical.Building.Interfaces.IPhysicalComponent, DiGi.Analytical.Building.Interfaces.IComponent, DiGi.Analytical.Building.Interfaces.IBuildingBoundable3D, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject, DiGi.Analytical.Building.Interfaces.IBuildingGeometryObject, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Geometry.Object.Core.Interfaces.IGeometryObject, DiGi.Geometry.Object.Spatial.Interfaces.IGeometry3DObject, DiGi.Analytical.Building.Interfaces.IConstructable

Constructors

Floor(Floor<T>) Constructor

Initializes a new instance of the Floor<T> class using an existing Floor<T> instance.

public Floor(DiGi.Analytical.Building.Classes.Floor<T>? floor);

Parameters

floor DiGi.Analytical.Building.Classes.Floor<T>

The source Floor<T> instance to copy from.

Floor(IFloor, T) Constructor

Initializes a new instance of the Floor<T> class using an existing floor implementation and specified geometry.

public Floor(DiGi.Analytical.Building.Interfaces.IFloor? floor, T? geometry);

Parameters

floor DiGi.Analytical.Building.Interfaces.IFloor

The source floor object used to initialize the current instance.

geometry T

The 3D geometry associated with this floor.

Floor(Guid, Floor<T>) Constructor

Initializes a new instance of the Floor<T> class with a specified unique identifier and an optional source floor.

public Floor(System.Guid guid, DiGi.Analytical.Building.Classes.Floor<T>? floor);

Parameters

guid System.Guid

The unique identifier for the floor.

floor DiGi.Analytical.Building.Classes.Floor<T>

An existing Floor<T> instance to initialize from.

Floor(JsonObject) Constructor

Initializes a new instance of the Floor<T> class using the specified JSON object.

public Floor(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object containing the data used to initialize the instance.

Floor(T) Constructor

Initializes a new instance of the Floor<T> class with the specified geometry.

public Floor(T? geometry);

Parameters

geometry T

The geometry to associate with the floor instance.

FloorConstruction Class

Represents the construction details and properties of a floor component within the analytical building model.

public class FloorConstruction : DiGi.Analytical.Building.Classes.ComponentConstruction<DiGi.Analytical.Building.Interfaces.IFloor>, DiGi.Analytical.Building.Interfaces.IFloorConstruction, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction<DiGi.Analytical.Building.Interfaces.IFloor>, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction, DiGi.Analytical.Building.Interfaces.IConstruction, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Analytical.Building.Interfaces.IBuildingDescribableObject, DiGi.Core.Interfaces.IDescribableObject, DiGi.Analytical.Building.Interfaces.IConstruction<DiGi.Analytical.Building.Interfaces.IFloor>

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObjectBuildingNamedObjectPhysicalComponentConstructionDiGi.Analytical.Building.Classes.ComponentConstruction<DiGi.Analytical.Building.Interfaces.IFloor> → FloorConstruction

Implements DiGi.Analytical.Building.Interfaces.IFloorConstruction, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction<DiGi.Analytical.Building.Interfaces.IFloor>, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction, DiGi.Analytical.Building.Interfaces.IConstruction, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Analytical.Building.Interfaces.IBuildingDescribableObject, DiGi.Core.Interfaces.IDescribableObject, DiGi.Analytical.Building.Interfaces.IConstruction<DiGi.Analytical.Building.Interfaces.IFloor>

Constructors

FloorConstruction() Constructor

Initializes a new instance of the FloorConstruction class.

public FloorConstruction();

FloorConstruction(FloorConstruction) Constructor

Initializes a new instance of the FloorConstruction class using the specified existing construction.

public FloorConstruction(DiGi.Analytical.Building.Classes.FloorConstruction? floorConstruction);

Parameters

floorConstruction FloorConstruction

The source FloorConstruction instance to copy from.

FloorConstruction(Guid, FloorConstruction) Constructor

Initializes a new instance of the FloorConstruction class with a specified unique identifier and an optional existing construction.

public FloorConstruction(System.Guid guid, DiGi.Analytical.Building.Classes.FloorConstruction? floorConstruction);

Parameters

guid System.Guid

The unique global identifier for the floor construction.

floorConstruction FloorConstruction

An optional FloorConstruction instance to initialize from.

FloorConstruction(JsonObject) Constructor

Initializes a new instance of the FloorConstruction class using the specified JSON object.

public FloorConstruction(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to initialize the floor construction properties. This value can be null.

FrameOpeningConstructionStructureLayersRelation Class

Represents the relation between a frame opening construction and its associated structure layers.

public class FrameOpeningConstructionStructureLayersRelation : DiGi.Analytical.Building.Classes.OpeningConstructionStructureLayersRelation

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Relation.Classes.RelationDiGi.Core.Relation.Classes.Relation<DiGi.Analytical.Building.Interfaces.IOpeningConstruction,DiGi.Analytical.Building.Interfaces.IStructureLayer>DiGi.Core.Relation.Classes.OneToManyRelation<DiGi.Analytical.Building.Interfaces.IOpeningConstruction,DiGi.Analytical.Building.Interfaces.IStructureLayer>DiGi.Core.Relation.Classes.OneToManyBidirectionalRelation<DiGi.Analytical.Building.Interfaces.IOpeningConstruction,DiGi.Analytical.Building.Interfaces.IStructureLayer>DiGi.Analytical.Building.Classes.ConstructionStructureLayersRelation<DiGi.Analytical.Building.Interfaces.IOpeningConstruction>OpeningConstructionStructureLayersRelation → FrameOpeningConstructionStructureLayersRelation

Constructors

FrameOpeningConstructionStructureLayersRelation(FrameOpeningConstructionStructureLayersRelation) Constructor

Initializes a new instance of the FrameOpeningConstructionStructureLayersRelation class using an existing instance.

public FrameOpeningConstructionStructureLayersRelation(DiGi.Analytical.Building.Classes.FrameOpeningConstructionStructureLayersRelation? frameOpeningConstructionStructureLayersRelation);

Parameters

frameOpeningConstructionStructureLayersRelation FrameOpeningConstructionStructureLayersRelation

The source relation instance to copy.

FrameOpeningConstructionStructureLayersRelation(IOpeningConstruction, IStructureLayer) Constructor

Initializes a new instance of the FrameOpeningConstructionStructureLayersRelation class.

public FrameOpeningConstructionStructureLayersRelation(DiGi.Analytical.Building.Interfaces.IOpeningConstruction? openingConstruction, DiGi.Analytical.Building.Interfaces.IStructureLayer? structureLayer);

Parameters

openingConstruction DiGi.Analytical.Building.Interfaces.IOpeningConstruction

The opening construction associated with this relation.

structureLayer DiGi.Analytical.Building.Interfaces.IStructureLayer

The structure layer associated with this relation.

FrameOpeningConstructionStructureLayersRelation(IOpeningConstruction, IEnumerable<IStructureLayer>) Constructor

Initializes a new instance of the FrameOpeningConstructionStructureLayersRelation class.

public FrameOpeningConstructionStructureLayersRelation(DiGi.Analytical.Building.Interfaces.IOpeningConstruction? openingConstruction, System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.IStructureLayer>? structureLayers);

Parameters

openingConstruction DiGi.Analytical.Building.Interfaces.IOpeningConstruction

The opening construction associated with this relation.

structureLayers System.Collections.Generic.IEnumerable<DiGi.Analytical.Building.Interfaces.IStructureLayer>

The collection of structure layers associated with this relation.

FrameOpeningConstructionStructureLayersRelation(JsonObject) Constructor

Initializes a new instance of the FrameOpeningConstructionStructureLayersRelation class from the specified JSON object.

public FrameOpeningConstructionStructureLayersRelation(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The JSON object used to populate the properties of the relation.

InternalCondition Class

Represents the internal condition of a building object, containing descriptive information about its current state.

public class InternalCondition : DiGi.Analytical.Building.Classes.BuildingObject, DiGi.Analytical.Building.Interfaces.IInternalCondition, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Core.Parameter.Interfaces.IParametrizedObject

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.Parameter.Classes.ParametrizedObjectDiGi.Core.Parameter.Classes.ParametrizedGuidObjectBuildingObject → InternalCondition

Implements DiGi.Analytical.Building.Interfaces.IInternalCondition, DiGi.Analytical.Building.Interfaces.IBuildingGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingSerializableObject, DiGi.Analytical.Building.Interfaces.IBuildingObject, DiGi.Analytical.Interfaces.IAnalyticalObject, DiGi.Core.Interfaces.IObject, DiGi.Core.Interfaces.ISerializableObject, DiGi.Core.Interfaces.ICloneableObject<DiGi.Core.Interfaces.ISerializableObject>, DiGi.Core.Interfaces.ICloneableObject, DiGi.Analytical.Interfaces.IAnalyticalGuidObject, DiGi.Analytical.Interfaces.IAnalyticalUniqueObject, DiGi.Core.Interfaces.IUniqueObject, DiGi.Core.Interfaces.IGuidObject, DiGi.Analytical.Building.Interfaces.IBuildingNamedObject, DiGi.Core.Interfaces.INamedObject, DiGi.Core.Parameter.Interfaces.IParametrizedObject

Constructors

InternalCondition(InternalCondition) Constructor

Initializes a new instance of the InternalCondition class using an existing InternalCondition instance.

public InternalCondition(DiGi.Analytical.Building.Classes.InternalCondition? internalCondition);

Parameters

internalCondition InternalCondition

The source InternalCondition instance to copy values from.

InternalCondition(string) Constructor

Initializes a new instance of the InternalCondition class with the specified name.

public InternalCondition(string? name);

Parameters

name System.String

The name of the internal condition.

InternalCondition(Guid, InternalCondition) Constructor

Initializes a new instance of the InternalCondition class using a specified unique identifier and an optional existing condition to copy values from.

public InternalCondition(System.Guid guid, DiGi.Analytical.Building.Classes.InternalCondition? internalCondition);

Parameters

guid System.Guid

The unique global identifier for the internal condition.

internalCondition InternalCondition

An optional InternalCondition instance used to initialize the properties of the new instance.

InternalCondition(JsonObject) Constructor

Initializes a new instance of the InternalCondition class using the specified System.Text.Json.Nodes.JsonObject.

public InternalCondition(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

jsonObject System.Text.Json.Nodes.JsonObject

The System.Text.Json.Nodes.JsonObject containing the data used to initialize this instance.

Properties

InternalCondition.Description Property

Gets or sets the description of the internal condition.

public string? Description { get; set; }

Implements Description

Property Value

System.String

InternalCondition.Name Property

Gets or sets the name of the internal condition.

public string? Name { get; set; }

Implements Name

Property Value

System.String

InternalConditionsFile Class

Represents a storage file specifically designed to manage and persist a collection of internal conditions.

public class InternalConditionsFile : DiGi.Core.IO.File.Classes.StorageFile<DiGi.Analytical.Building.Interfaces.IInternalCondition>

Inheritance System.ObjectDiGi.Core.Classes.ObjectDiGi.Core.Classes.SerializableObjectDiGi.Core.IO.File.Classes.FileDiGi.Core.IO.File.Classes.StorageFile<DiGi.Analytical.Building.Interfaces.IInternalCondition> → InternalConditionsFile

Constructors

InternalConditionsFile(InternalConditionsFile) Constructor

Initializes a new instance of the InternalConditionsFile class using an existing InternalConditionsFile instance.

public InternalConditionsFile(DiGi.Analytical.Building.Classes.InternalConditionsFile? internalConditionsFile);

Parameters

internalConditionsFile InternalConditionsFile

The source InternalConditionsFile instance to copy from.

InternalConditionsFile(string) Constructor

Initializes a new instance of the InternalConditionsFile class using the specified file path.

public InternalConditionsFile(string? path);

Parameters

path System.String

The path to the internal conditions file.

InternalConditionsFile(JsonObject) Constructor

Initializes a new instance of the InternalConditionsFile class using the specified JSON object.

public InternalConditionsFile(System.Text.Json.Nodes.JsonObject? jsonObject);

Parameters

<a name='DiGi.

Clone this wiki locally