API Reference space

space

PH ‘Space’ and Related Sub-object Classes (FloorSegments, etc).

Source: honeybee_ph/space.py


SpaceFloorSegment

A single floor area polygon within a PH Space.

Inherits from: _base._Base

Attributes

AttributeTypeDescription
geometryOptional[LBFace3D]The planar 3D geometry of this segment. None if not yet assigned.
weighting_factorfloatMultiplier for iCFA/TFA area calculation. Default: 1.0 (no reduction).
net_area_factorfloatMultiplier for net usable area calculation. Default: 1.0 (full area counts).
reference_pointOptional[Point3D]Point used for spatial containment testing (is this segment inside an HB-Room?). Usually the face centroid, but adjusted for non-convex shapes (L, U).

Properties

PropertyTypeDescription
weighted_floor_areafloatThe floor area of the floor segment weighted by any reduction factors (iFCA, TFA)
floor_areafloatThe floor area of the floor segment UN-weighted by any reduction factors (iFCA, TFA)
net_floor_areafloatThe net area of the floor segment
weighted_net_floor_areafloatThe net area of the floor segment weighted by any reduction factors (iFCA, TFA)

Methods

duplicate_geometry()

Returns: LBFace3D

move(moving_vec3D)

Move the SpaceFloorSegment along a vector.

ArgTypeDescription
moving_vec3DVector3DThe direction and distance to move.

Returns: SpaceFloorSegment

rotate(axis_vec3D, angle_degrees, origin_pt3D)

Rotate the SpaceFloorSegment by a certain angle around an axis and origin.

ArgTypeDescription
axis_vec3DVector3DThe axis of rotation.
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: SpaceFloorSegment

rotate_xy(angle_degrees, origin_pt3D)

Rotate the SpaceFloorSegment counterclockwise in the XY plane.

ArgTypeDescription
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: SpaceFloorSegment

reflect(normal_vec3D, origin_pt3D)

Reflect the SpaceFloorSegment across a plane.

ArgTypeDescription
normal_vec3DVector3DThe normal vector for the reflection plane. Must be normalized.
origin_pt3DPoint3DThe origin of the reflection plane.

Returns: SpaceFloorSegment

scale(scale_factor, origin_pt3D)

Scale the SpaceFloorSegment by a factor from an origin point.

ArgTypeDescription
scale_factorfloatThe scaling factor.
origin_pt3DOptional[Point3D]The origin from which to scale. If None, scales from the World origin (0, 0, 0).

Returns: SpaceFloorSegment


SpaceFloor

A collection of SpaceFloorSegments representing one floor level.

Inherits from: _base._Base

Attributes

AttributeTypeDescription
geometryOptional[LBFace3D]The merged 3D face for this floor level. None if not yet assigned.

Properties

PropertyTypeDescription
reference_pointsReturns a list of the Floor’s FloorSegment reference points.
weighted_floor_areafloatThe total floor area of all floor segments, weighted by any reduction factors (iFCA, TFA)
floor_areafloatThe total floor area of all floor segments, UN-weighted by any reduction factors (iFCA, TFA)
net_floor_areafloatThe total net floor area of all floor segments
weighted_net_floor_areafloatThe total net floor area of all floor segments, weighted by any reduction factors (iFCA, TFA)
floor_segmentslist[SpaceFloorSegment]

Methods

add_floor_segment(_floor_seg)

Add a new SpaceFloorSegment to the SpaceFloor.

ArgTypeDescription
_floor_segSpaceFloorSegmentThe SpaceFloorSegment to add to the SpaceFloor.

Returns: None

clear_floor_segments()

duplicate_geometry()

Returns: LBFace3D

move(moving_vec3D)

Move the SpaceFloor along a vector.

ArgTypeDescription
moving_vec3DVector3DThe direction and distance to move.

Returns: SpaceFloor

rotate(axis_vec3D, angle_degrees, origin_pt3D)

Rotate the SpaceFloor by a certain angle around an axis and origin.

ArgTypeDescription
axis_vec3DVector3DThe axis of rotation.
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: SpaceFloor

rotate_xy(angle_degrees, origin_pt3D)

Rotate the SpaceFloor counterclockwise in the XY plane.

ArgTypeDescription
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: SpaceFloor

reflect(normal_vec3D, origin_pt3D)

Reflect the SpaceFloor across a plane.

ArgTypeDescription
normal_vec3DVector3DThe normal vector for the reflection plane. Must be normalized.
origin_pt3DPoint3DThe origin of the reflection plane.

Returns: SpaceFloor

scale(scale_factor, origin_pt3D)

Scale the SpaceFloor by a factor from an origin point.

ArgTypeDescription
scale_factorfloatThe scaling factor.
origin_pt3DOptional[Point3D]The origin from which to scale. If None, scales from the World origin (0, 0, 0).

Returns: SpaceFloor


SpaceVolume

A 3D volume within a PH Space, defined by a floor and ceiling height.

Inherits from: _base._Base

Attributes

AttributeTypeDescription
avg_ceiling_heightfloatAverage clear ceiling height in meters. Default: 2.5.
floorSpaceFloorThe floor level for this volume.
geometryList[LBFace3D]The enclosing 3D face geometry.

Properties

PropertyTypeDescription
net_volumefloatThe Interior Net Volume (Vn50).
weighted_floor_areafloatThe total floor area of all floor segments in the Volume, weighted by any reduction factors (iFCA, TFA)
floor_areafloatThe total floor area of all floor segments in the Volume, UN-weighted by any reduction factors (iFCA, TFA)
net_floor_areafloatThe total net floor area of all floor segments in the Volume
weighted_net_floor_areafloatThe total net floor area of all floor segments in the Volume, weighted by any reduction factors (iFCA, TFA)
reference_pointsReturns the Volume’s FloorSegment reference points (center).
floor_segment_surfacesList[Optional[LBFace3D]]
floor_segmentsList[SpaceFloorSegment]

Methods

clear_volume_geometry()

Delete all the geometry from the SpaceVolume.

Returns: None

move(moving_vec3D)

Move the SpaceVolume along a vector.

ArgTypeDescription
moving_vec3DVector3DThe direction and distance to move.

Returns: SpaceVolume

rotate(axis_vec3D, angle_degrees, origin_pt3D)

Rotate the SpaceVolume by a certain angle around an axis and origin.

ArgTypeDescription
axis_vec3DVector3DThe axis of rotation.
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: SpaceVolume

rotate_xy(angle_degrees, origin_pt3D)

Rotate the SpaceVolume counterclockwise in the XY plane.

ArgTypeDescription
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: SpaceVolume

reflect(normal_vec3D, origin_pt3D)

Reflect the SpaceVolume across a plane.

ArgTypeDescription
normal_vec3DVector3DThe normal vector for the reflection plane. Must be normalized.
origin_pt3DPoint3DThe origin of the reflection plane.

Returns: SpaceVolume

scale(scale_factor, origin_pt3D)

Scale the SpaceVolume by a factor from an origin point.

ArgTypeDescription
scale_factorfloatThe scaling factor.
origin_pt3DOptional[Point3D]The origin from which to scale. If None, scales from the World origin (0, 0, 0).

Returns: SpaceVolume


Space

A Passive House Space representing an occupiable floor area.

Inherits from: _base._Base

Attributes

AttributeTypeDescription
quantityintNumber of identical spaces (for repetition). Default: 1.
wufi_typeintWUFI-Passive space type code. Default: 99 (User-Defined).
namestrUser-facing space name.
numberstrSpace number or identifier string.
hostThe parent Honeybee Room hosting this space.
propertiesSpaceProperties

Properties

PropertyTypeDescription
display_namestr
full_namestr
net_volumefloatThe total interior net volume of all Volumes in the Space.
avg_clear_heightfloatReturns the average floor-area-weighted height of all the Volumes in the Space
weighted_floor_areafloatThe total floor area of all floor segments in the Space, weighted by any reduction factors (iFCA, TFA)
floor_areafloatThe total floor area of all floor segments in the Space, UN-weighted by any reduction factors (iFCA, TFA)
net_floor_areafloatThe total net floor area of all floor segments in the Space
weighted_net_floor_areafloatThe total net floor area of all floor segments in the Space, weighted by any reduction factors (iFCA, TFA)
average_floor_weighting_factorfloatReturns the average weighting factor (TFA/iCFA) for the Space’s floor-segments.
average_floor_net_area_factorfloatReturns the average net area factor for the Space’s floor-segments.
reference_pointslist[Point3D]Returns a list of the Space’s Volume reference Points (center of the floor segments).
volumesList[SpaceVolume]
floor_segment_surfacesList[List[Optional[LBFace3D]]]
floor_segmentsList[SpaceFloorSegment]

Methods

add_new_volumes(_new_volumes)

Add a new SpaceVolume or list of SpaceVolumes to the Space.

ArgTypeDescription
_new_volumesUnion[SpaceVolumeA list of the SpaceVolumes to add.

Returns: None

clear_volumes()

Delete all the Volumes from the Space.

Returns: None

move(moving_vec3D)

Move the Space and its Volumes along a vector.

ArgTypeDescription
moving_vec3DVector3DThe direction and distance to move.

Returns: Space

rotate(axis_vec3D, angle_degrees, origin_pt3D)

Rotate the Space and its Volumes around an axis and origin.

ArgTypeDescription
axis_vec3DVector3DThe axis of rotation.
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: Space

rotate_xy(angle_degrees, origin_pt3D)

Rotate the Space and its Volumes counterclockwise in the XY plane.

ArgTypeDescription
angle_degreesfloatThe rotation angle in degrees.
origin_pt3DPoint3DThe origin around which to rotate.

Returns: Space

reflect(normal_vec3D, origin_pt3D)

Reflect the Space and its Volumes across a plane.

ArgTypeDescription
normal_vec3DVector3DThe normal vector for the reflection plane. Must be normalized.
origin_pt3DPoint3DThe origin of the reflection plane.

Returns: Space

scale(scale_factor, origin_pt3D)

Scale the Space and its Volumes by a factor from an origin point.

ArgTypeDescription
scale_factorfloatThe scaling factor.
origin_pt3DOptional[Point3D]The origin from which to scale. If None, scales from the World origin (0, 0, 0).

Returns: Space