-
Notifications
You must be signed in to change notification settings - Fork 0
DiGi.Analytical.Building
public static class CreateInheritance System.Object → Create
Creates a BuildingModel(this IEnumerable<IPolyhedron>) from the specified collection of polyhedrons.
public static DiGi.Analytical.Building.Classes.BuildingModel? BuildingModel(this System.Collections.Generic.IEnumerable<DiGi.Geometry.Spatial.Interfaces.IPolyhedron> polyhedrons);polyhedrons System.Collections.Generic.IEnumerable<DiGi.Geometry.Spatial.Interfaces.IPolyhedron>
The collection of DiGi.Geometry.Spatial.Interfaces.IPolyhedron objects to be used for creating the building model.
BuildingModel
A new instance of BuildingModel(this IEnumerable<IPolyhedron>) if the provided collection is not null; otherwise, null.
Creates a new CurveWall based on the provided segment, height, and direction.
public static DiGi.Analytical.Building.Classes.CurveWall? CurveWall(this DiGi.Geometry.Spatial.Classes.Segment3D? segment3D, double height, DiGi.Geometry.Spatial.Classes.Vector3D? direction, double tolerance=1E-06);segment3D DiGi.Geometry.Spatial.Classes.Segment3D
The DiGi.Geometry.Spatial.Classes.Segment3D that defines the base of the wall.
height System.Double
The height of the wall.
direction DiGi.Geometry.Spatial.Classes.Vector3D
The DiGi.Geometry.Spatial.Classes.Vector3D representing the direction in which the wall is extruded.
tolerance System.Double
The distance tolerance used for geometric validation.
CurveWall
A new CurveWall instance if the parameters are valid; otherwise, null.
Creates a curved wall based on a 3D segment using the world Z-axis as the default direction.
public static DiGi.Analytical.Building.Classes.CurveWall? CurveWall(this DiGi.Geometry.Spatial.Classes.Segment3D? segment3D, double height, double tolerance=1E-06);segment3D DiGi.Geometry.Spatial.Classes.Segment3D
The 3D segment that defines the base of the curve wall.
height System.Double
The height of the wall to be created.
tolerance System.Double
The distance tolerance used for geometric validation.
CurveWall
A new CurveWall instance if the creation is successful; otherwise, null.
Creates a FaceFloor(this IPolygonalFace3D, double) from the specified polygonal face, provided its area is valid and exceeds the given tolerance.
public static DiGi.Analytical.Building.Classes.FaceFloor? FaceFloor(this DiGi.Geometry.Spatial.Interfaces.IPolygonalFace3D? polygonalFace3D, double tolerance=1E-06);polygonalFace3D DiGi.Geometry.Spatial.Interfaces.IPolygonalFace3D
The polygonal face to be converted into a face floor.
tolerance System.Double
The minimum area threshold required to create the face floor. Defaults to DiGi.Core.Constants.Tolerance.Distance.
FaceFloor
A new FaceFloor(this IPolygonalFace3D, double) instance if the face is not null and its area is greater than or equal to the tolerance; otherwise, null.
Create.StructureLayer(this ConstructionRelationCluster, IOpeningConstruction, OpeningConstructionPart, IMaterial, double) Method
Creates a new structure layer and associates it with an opening construction part and a material within the specified relation cluster.
public static DiGi.Analytical.Classes.StructureLayer? StructureLayer(this DiGi.Analytical.Building.Classes.ConstructionRelationCluster? constructionRelationCluster, DiGi.Analytical.Building.Interfaces.IOpeningConstruction? openinigConstruction, DiGi.Analytical.Building.Enums.OpeningConstructionPart openingConstructionPart, DiGi.Analytical.Interfaces.IMaterial? material, double thickness);constructionRelationCluster ConstructionRelationCluster
The construction relation cluster to which the structure layer and its relations are added.
openinigConstruction DiGi.Analytical.Building.Interfaces.IOpeningConstruction
The opening construction associated with the new structure layer.
openingConstructionPart OpeningConstructionPart
The specific part of the opening construction for the structure layer.
material DiGi.Analytical.Interfaces.IMaterial
The material to be assigned to the structure layer.
thickness System.Double
The thickness of the structure layer.
StructureLayer
The created DiGi.Analytical.Building.Classes.StructureLayer if successful; otherwise, null.
Create.StructureLayer(this ConstructionRelationCluster, IPhysicalComponentConstruction, IMaterial, double) Method
Creates and adds a new DiGi.Analytical.Building.Classes.StructureLayer to the specified construction relation cluster.
public static DiGi.Analytical.Classes.StructureLayer? StructureLayer(this DiGi.Analytical.Building.Classes.ConstructionRelationCluster? constructionRelationCluster, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction? physicalComponentConstruction, DiGi.Analytical.Interfaces.IMaterial? material, double thickness);constructionRelationCluster ConstructionRelationCluster
The construction relation cluster where the structure layer will be created and stored.
physicalComponentConstruction DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction
The physical component construction associated with the structure layer.
material DiGi.Analytical.Interfaces.IMaterial
The material to be assigned to the structure layer.
thickness System.Double
The thickness of the structure layer.
StructureLayer
A new DiGi.Analytical.Building.Classes.StructureLayer instance if successfully created and added; otherwise, null.
Creates a SurfaceRoof(this IPolygonalFace3D, double) from the specified polygonal face, provided its area is valid and exceeds the given tolerance.
public static DiGi.Analytical.Building.Classes.SurfaceRoof? SurfaceRoof(this DiGi.Geometry.Spatial.Interfaces.IPolygonalFace3D? polygonalFace3D, double tolerance=1E-06);polygonalFace3D DiGi.Geometry.Spatial.Interfaces.IPolygonalFace3D
The polygonal face to be converted into a surface roof.
tolerance System.Double
The minimum area threshold required to create the surface roof. Defaults to DiGi.Core.Constants.Tolerance.Distance.
SurfaceRoof
A new SurfaceRoof(this IPolygonalFace3D, double) instance if the face is not null and its area is greater than or equal to the tolerance; otherwise, null.
Creates a SurfaceWall(this IPolygonalFace3D, double) from the specified polygonal face, provided its area is valid and exceeds the given tolerance.
public static DiGi.Analytical.Building.Classes.SurfaceWall? SurfaceWall(this DiGi.Geometry.Spatial.Interfaces.IPolygonalFace3D? polygonalFace3D, double tolerance=1E-06);polygonalFace3D DiGi.Geometry.Spatial.Interfaces.IPolygonalFace3D
The polygonal face to be converted into a surface wall.
tolerance System.Double
The minimum area threshold required to create the surface wall. Defaults to DiGi.Core.Constants.Tolerance.Distance.
SurfaceWall
A new SurfaceWall(this IPolygonalFace3D, double) instance if the face is not null and its area is greater than or equal to the tolerance; otherwise, null.
public static class QueryInheritance System.Object → Query
Extracts the 3D geometry from the specified building geometry object as a specific type.
public static TGeometry3D? Geometry3D<TGeometry3D>(this DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject? buildingGeometry3DObject)
where TGeometry3D : DiGi.Geometry.Spatial.Interfaces.IGeometry3D;TGeometry3D
The type of 3D geometry to return, which must implement DiGi.Geometry.Spatial.Interfaces.IGeometry3D.
buildingGeometry3DObject DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject
The building geometry object from which the 3D geometry is extracted.
TGeometry3D
The extracted 3D geometry of type TGeometry3D, or null if the object is null or the geometry cannot be converted.
Determines whether the specified sphere is located inside the given building geometry object.
public static bool Inside(this DiGi.Geometry.Spatial.Classes.Sphere? sphere, DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject? buildingGeometry3DObject, double tolerance=1E-06);sphere DiGi.Geometry.Spatial.Classes.Sphere
The sphere to check for containment.
buildingGeometry3DObject DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject
The 3D building geometry object to evaluate against.
tolerance System.Double
The distance tolerance used for the geometric operation.
System.Boolean
True if the sphere is inside the building geometry; otherwise, false.
Creates a DiGi.Geometry.Spatial.Classes.Mesh3D from the specified building geometry object by triangulating it.
public static DiGi.Geometry.Spatial.Classes.Mesh3D? Mesh3D(this DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject? buildingGeometryObject, double tolerance=1E-06);buildingGeometryObject DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject
The building geometry object to convert into a mesh.
tolerance System.Double
The distance tolerance used during the triangulation process.
DiGi.Geometry.Spatial.Classes.Mesh3D
A DiGi.Geometry.Spatial.Classes.Mesh3D representing the triangulated geometry, or null if the object is null or cannot be triangulated.
Query.NextStructureLayerIndex(this ConstructionRelationCluster, IOpeningConstruction, OpeningConstructionPart) Method
Calculates the next available structure layer index for a specific part of an opening construction.
public static int NextStructureLayerIndex(this DiGi.Analytical.Building.Classes.ConstructionRelationCluster? constructionRelationCluster, DiGi.Analytical.Building.Interfaces.IOpeningConstruction? openingConstruction, DiGi.Analytical.Building.Enums.OpeningConstructionPart openingConstructionPart);constructionRelationCluster ConstructionRelationCluster
The relation cluster used to retrieve the structure layer relations.
openingConstruction DiGi.Analytical.Building.Interfaces.IOpeningConstruction
The opening construction instance.
openingConstructionPart OpeningConstructionPart
The part of the opening construction (e.g., pane or frame) for which the index is calculated.
System.Int32
The next available structure layer index; 0 if no relations are found, or -1 if any input parameter is null or undefined.
Query.NextStructureLayerIndex(this ConstructionRelationCluster, IPhysicalComponentConstruction) Method
Calculates the next structure layer index for a specified physical component construction within the provided construction relation cluster.
public static int NextStructureLayerIndex(this DiGi.Analytical.Building.Classes.ConstructionRelationCluster? constructionRelationCluster, DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction? physicalComponentConstruction);constructionRelationCluster ConstructionRelationCluster
The construction relation cluster used to retrieve relations and structure layers.
physicalComponentConstruction DiGi.Analytical.Building.Interfaces.IPhysicalComponentConstruction
The physical component construction for which the next structure layer index is determined.
System.Int32
The maximum structure layer index found; 0 if no associated structure layers exist; or -1 if either the constructionRelationCluster or physicalComponentConstruction is null.
Extracts the 3D surface representation of the specified building component.
Surface based components (e.g. SurfaceRoof, SurfaceWall) return their geometry directly, face based components (e.g. FaceFloor) return their planar face and curve based walls (e.g. CurveWall) return the surface created by extruding the base curve by the wall vector.
public static DiGi.Geometry.Spatial.Interfaces.ISurface3D? Surface3D(this DiGi.Analytical.Building.Interfaces.IComponent? component);component DiGi.Analytical.Building.Interfaces.IComponent
The building component. This value can be null.
DiGi.Geometry.Spatial.Interfaces.ISurface3D
The DiGi.Geometry.Spatial.Interfaces.ISurface3D representing the component, or null if the component has no supported surface geometry.
Triangulates the specified 3D building geometry object into a set of triangles.
public static System.Collections.Generic.List<DiGi.Geometry.Spatial.Classes.Triangle3D>? Triangulate(this DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject? buildingGeometry3DObject, double tolerance=1E-06);buildingGeometry3DObject DiGi.Analytical.Building.Interfaces.IBuildingGeometry3DObject
The building geometry object to triangulate.
tolerance System.Double
The distance tolerance used during triangulation.
System.Collections.Generic.List<DiGi.Geometry.Spatial.Classes.Triangle3D>
A list of DiGi.Geometry.Spatial.Classes.Triangle3D objects representing the triangulated geometry, or null if the object is null or cannot be triangulated.