ifcopenshell.api.geometry.add_door_representation
¶
Module Contents¶
- class ifcopenshell.api.geometry.add_door_representation.DoorLiningProperties¶
- initialize_properties(unit_scale: float) None ¶
- CasingDepth: float | None = None¶
Casing cover wall faces around the opening on the left, right and upper sides Casing should be either on both sides of the wall or no casing If LiningOffset is present then therefore casing is not possible on outer wall therefore there will be no casing on inner wall either. Optional, defaults to 5mm.
- CasingThickness: float | None = None¶
Casing thickness by Z-axis. Optional, defaults to 75mm.
- LiningDepth: float | None = None¶
Optional, defaults to 50mm.
- LiningOffset: float | None = None¶
Offset from the outer side of the wall (by Y-axis). Optional, defaults to 0.0.
- LiningThickness: float | None = None¶
Optional, defaults to 50mm.
- LiningToPanelOffsetX: float | None = None¶
Offset from the wall. Optional, defaults to 25mm.
- LiningToPanelOffsetY: float | None = None¶
Offset from the X-axis (unlike windows). Optional, defaults to 25mm.
- ShapeAspectStyle: None = None¶
Optional. Deprecated argument.
- ThresholdDepth: float | None = None¶
Threshold covers the bottom side of the opening. Optional, defaults to 100mm.
- ThresholdOffset: float | None = None¶
Threshold offset by Y-axis. Optional, defaults to 0.0.
- ThresholdThickness: float | None = None¶
Theshold thickness by Z-axis. Optional, defaults to 25mm.
- TransomOffset: float | None = None¶
Distance from the bottom door opening to the beginning of the transom unlike windows TransomOffset which goes to the center of the transom. Optional, defaults 1.525m.
- TransomThickness: float | None = None¶
Vertical distance between door and window panels. Optional, defaults to 0.0.
- class ifcopenshell.api.geometry.add_door_representation.DoorPanelProperties¶
- initialize_properties(unit_scale: float) None ¶
- FrameDepth: float | None = None¶
Frame thickness by Y axis. Optional, defaults to 35 mm.
- FrameThickness: float | None = None¶
Frame thickness by X axis. Optional, defaults to 35 mm.
- PanelDepth: float | None = None¶
Frame thickness by Y axis. Optional, defaults to 35 mm.
- PanelOperation: None = None¶
Optional, value is never used. Defines the basic ways to describe how door panels operate.
- PanelPosition: None = None¶
Optional, value is never used
- PanelWidth: float = 1.0¶
Ratio to the clear door opening. Optional, defaults to 1.0.
- ShapeAspectStyle: None = None¶
Optional. Deprecated argument.
- class ifcopenshell.api.geometry.add_door_representation.Usecase¶
- convert_si_to_unit(value)¶
- execute()¶
- ifcopenshell.api.geometry.add_door_representation.add_door_representation(file: ifcopenshell.file, *, context: ifcopenshell.entity_instance, overall_height: float | None = None, overall_width: float | None = None, operation_type: Literal['SINGLE_SWING_LEFT', 'SINGLE_SWING_RIGHT', 'DOUBLE_SWING_RIGHT', 'DOUBLE_SWING_LEFT', 'DOUBLE_DOOR_SINGLE_SWING', 'DOUBLE_DOOR_DOUBLE_SWING', 'SLIDING_TO_LEFT', 'SLIDING_TO_RIGHT', 'DOUBLE_DOOR_SLIDING'] = 'SINGLE_SWING_LEFT', lining_properties: DoorLiningProperties | dict[str, Any] | None = None, panel_properties: DoorPanelProperties | dict[str, Any] | None = None, unit_scale: float | None = None) ifcopenshell.entity_instance ¶
units in usecase_settings expected to be in ifc project units
- Parameters:
context (ifcopenshell.entity_instance) – IfcGeometricRepresentationContext for the representation.
overall_height (float, optional) – Overall door height. Defaults to 2m.
overall_width (float, optional) – Overall door width. Defaults to 0.9m.
operation_type (str, optional) – Type of the door. Defaults to SINGLE_SWING_LEFT.
lining_properties (Union[DoorLiningProperties, dict[str, Any]]]) – DoorLiningProperties or a dictionary to create one. See DoorLiningProperties description for details.
panel_properties (Union[DoorPanelProperties, dict[str, Any]]]) – DoorPanelProperties or a dictionary to create one. See DoorPanelProperties description for details.
unit_scale (float, optional) – The unit scale as calculated by ifcopenshell.util.unit.calculate_unit_scale. If not provided, it will be automatically calculated for you.
- Returns:
IfcShapeRepresentation for a door.
- Return type:
ifcopenshell.entity_instance
- ifcopenshell.api.geometry.add_door_representation.create_ifc_box(builder: ifcopenshell.util.shape_builder.ShapeBuilder, size: mathutils.Vector, position: mathutils.Vector = V(0, 0, 0).freeze()) ifcopenshell.entity_instance ¶
- ifcopenshell.api.geometry.add_door_representation.create_ifc_door_lining(builder: ifcopenshell.util.shape_builder.ShapeBuilder, size: mathutils.Vector, thickness: list, position: mathutils.Vector = V(0, 0, 0).freeze()) ifcopenshell.entity_instance ¶
thickness of the profile is defined as list in the following order: (SIDE, TOP)
thickness can be also defined just as 1 float value.
- ifcopenshell.api.geometry.add_door_representation.mm(x: float) float ¶
mm to meters shortcut for readability
- ifcopenshell.api.geometry.add_door_representation.SUPPORTED_DOOR_TYPES = ('SINGLE_SWING_LEFT', 'SINGLE_SWING_RIGHT', 'DOUBLE_SWING_RIGHT', 'DOUBLE_SWING_LEFT',...¶