honeybee_ph.properties.room module¶
HB-Room Passive House (PH) Properties.
- class honeybee_ph.properties.room.PhSpecificHeatCapacity(_value: str | int = 1)[source]¶
Bases:
CustomEnum- ToString()¶
- classmethod from_dict(_dict: dict[str, Any]) CustomEnum¶
- to_dict() dict[str, Any]¶
- allowed: list[str] = ['1-LIGHTWEIGHT', '2-MIXED', '3-MASSIVE', '4', '5', '6-USER_DEFINED']¶
- property allowed_upper: list[str]¶
- property number: int¶
Returns the index pos of self.value (usually 1-based)
- property value: str¶
- class honeybee_ph.properties.room.RoomPhProperties(_host: Room | None)[source]¶
Bases:
object- add_foundation(_ph_foundation: PhFoundation) None[source]¶
- add_new_space(_new_space: Space) None[source]¶
Adds a new PH-Space to the RoomProperties collection.
- apply_properties_from_dict(room_prop_dict: Dict[str, Any], bldg_segments: Dict[str, BldgSegment]) None[source]¶
Apply properties from a RoomPhPropertiesAbridged dictionary.
Arguments:¶
- room_prop_dict (dict): A RoomPhPropertiesAbridged dictionary loaded from
the room object itself. Unabridged. In Abridged form, this dict will just include the ‘ph_bldg_segment_id’ reference instead of the the entire properties data dict.
- bldg_segments (dict[str: BldgSegment]): A dict of the BldgSegment
objects found at the Model level. Segment-id is used as the key.
Returns:¶
None
- duplicate(new_host: Any | None = None, include_spaces: bool = True) RoomPhProperties[source]¶
- classmethod from_dict(_input_dict: Dict[str, Any], host: Any) RoomPhProperties[source]¶
- merge_new_space(_new_space: Space) None[source]¶
Try and merge a new Space with the existing Space.
If there is no existing Space, will set this as the Room’s Space.
- move(moving_vec3D: Vector3D) None[source]¶
Move the RoomPhProperties and its Volumes along a vector.
- Parameters:
moving_vec3D – A Vector3D with the direction and distance to move the ray.
- reflect(plane: Plane) None[source]¶
Reflected the RoomPhProperties and its Volumes across a plane with the input normal vector and origin_pt3D.
- Parameters:
plane – A Plane representing the plane across which the object will be reflected.
- rotate(axis_vec3D: Vector3D, angle_degrees: float, origin_pt3D: Point3D) None[source]¶
Rotate the RoomPhProperties and its Volumes by a certain angle around an axis_vec3D and origin_pt3D.
Right hand rule applies: If axis_vec3D has a positive orientation, rotation will be clockwise. If axis_vec3D has a negative orientation, rotation will be counterclockwise.
- Parameters:
axis_vec3D – A Vector3D axis_vec3D representing the axis_vec3D of rotation.
angle_degrees – An angle for rotation in degrees.
origin_pt3D – A Point3D for the origin_pt3D around which the object will be rotated.
- rotate_xy(angle_degrees: float, origin_pt3D: Point3D) None[source]¶
Rotate the RoomPhProperties and its Volumes counterclockwise in the XY plane by a certain angle.
- Parameters:
angle_degrees – An angle in degrees.
origin_pt3D – A Point3D for the origin_pt3D around which the object will be rotated.
- scale(scale_factor: float, origin_pt3D: Point3D | None = None) None[source]¶
Scale the RoomPhProperties and its Volumes by a factor from an origin_pt3D point.
- Parameters:
scale_factor – A number representing how much the line segment should be scaled.
origin_pt3D – A Point3D representing the origin_pt3D from which to scale. If None, it will be scaled from the World origin_pt3D (0, 0, 0).
- property host¶
- property ph_foundations: List[PhFoundation]¶
- property total_space_floor_area: float¶
The total unweighted floor-area of all spaces hosted by the honeybee-Room.
- honeybee_ph.properties.room.get_ph_prop_from_room(_room: Room) RoomPhProperties[source]¶
Get the RoomPhProperties of a HB-Room object.