Coverage for bim2sim/utilities/types.py: 100%
37 statements
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-12 17:09 +0000
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-12 17:09 +0000
1from enum import Enum, auto
4class IFCDomain(Enum):
5 """Enumeration for ifc file domains. """
6 arch = auto()
7 ventilation = auto()
8 hydraulic = auto()
9 sanitary = auto()
10 mixed = auto()
11 unknown = auto()
14class LOD(Enum):
15 """Level of detail in form of an enumeration. The different meaning depends
16 on the specific simulation settings."""
17 ignore = 0
18 low = 1
19 medium = 2
20 full = 3
23class ZoningCriteria(Enum):
24 """Criteria for grouping thermal zones within a building.
26 This enum defines different strategies for combining thermal zones based on
27 various architectural and functional characteristics.
29 Attributes:
30 external: Groups zones based on their contact with the building
31 exterior. Separates zones with exterior contact from
32 interior-only zones.
34 usage: Groups zones based on their functional usage/purpose within the
35 building.
37 external_orientation: Groups zones based on both exterior contact and
38 facade orientation (North, East, South, West).
40 external_orientation_usage: Combines grouping based on exterior contact
41 , orientation, and usage.
43 all_criteria: Most comprehensive grouping that considers:
44 - Exterior contact
45 - Facade orientation
46 - Usage
47 - Glass percentage
48 - Physical adjacency between zones
50 individual_spaces: Every space is converted into a thermal zone.
52 combined_single_zone: All spaces are converted into a single thermal zone.
53 """
55 external = auto()
56 usage = auto()
57 external_orientation = auto()
58 external_orientation_usage = auto()
59 all_criteria = auto()
60 individual_spaces = auto()
61 combined_single_zone = auto()
64class AttributeDataSource(Enum):
65 """Enumerator for data_source of attributes.
67 This Enumerator defines various sources from which attribute data can be
68 derived. It categorizes the origin of attributes used in a given
69 context, allowing for standardized reference and handling of these data
70 sources in the application.
72 Following enumerations exist:
73 ifc_attr: Represents real IFC attributes derived directly from the IFC
74 objects attributes.
75 default_ps: Indicates attributes sourced from default property sets.
76 default_association: Attributes obtained from default associations.
77 finder: Attributes found through the finder searching mechanism.
78 patterns: Attributes identified through pattern recognition.
79 function: Attributes determined through functions of the attribute
80 evaluation or calculations.
81 default: Represents the default attribute source when no specific
82 source is defined.
83 decision: Attributes derived from answered decisions.
84 manual_overwrite: Attributes that were manually overwritten during the
85 process without the definition of a specific data source.
86 enrichment: Attributes enriched or supplemented with additional
87 information.
88 space_boundary: Attributes derived from space boundary definitions.
89 """
90 ifc_attr = auto()
91 default_ps = auto()
92 default_association = auto()
93 finder = auto()
94 patterns = auto()
95 function = auto()
96 default = auto()
97 decision = auto()
98 manual_overwrite = auto()
99 enrichment = auto()
100 space_boundary = auto()
103class BoundaryOrientation(Enum):
104 """
105 Enumeration for boundary orientations.
107 top: Ceilings, roofs (normal points upward)
108 bottom: Floors, slabs (normal points downward)
109 vertical: Walls (normal perpendicular to vertical)
110 """
111 top = auto()
112 bottom = auto()
113 vertical = auto()