honeybee.properties module

Extension properties for Model, Room, Face, Shade, Aperture, Door.

These objects hold all attributes assigned by extensions like honeybee-radiance and honeybee-energy. Note that these Property objects are not intended to exist on their own but should have a host object.

class honeybee.properties.ApertureProperties(host)[source]

Bases: _Properties

Honeybee Aperture Properties.

This class will be extended by extensions.

Usage:

aperture = Aperture('Window to My Soul', geometry)
aperture.properties -> ApertureProperties
aperture.properties.radiance -> ApertureRadianceProperties
aperture.properties.energy -> ApertureEnergyProperties
ToString()

Overwrite .NET ToString method.

add_prefix(prefix)[source]

Change the identifier extension attributes unique to this object by adding a prefix.

Notably, this method only adds the prefix to extension attributes that must be unique to the Aperture and does not add the prefix to attributes that are shared across several Apertures.

Parameters

prefix – Text that will be inserted at the start of extension attribute identifiers.

is_equivalent(other_properties)

Get a dictionary noting the equivalency of these properties to other ones.

The keys of this dictionary will note the name of each extension (eg. energy, radiance) and the values will be a boolean for whether the extension properties are equivalent or not.

Parameters

other_properties – Properties of another object for which equivalency will be tested.

move(moving_vec)

Apply a move transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be moved alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be moved if the host aperture is moved.

Parameters

moving_vec – A ladybug_geometry Vector3D with the direction and distance to move the face.

reflect(plane)

Apply a reflection transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be reflected alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be reflected if the host aperture is reflected.

Parameters

plane – A ladybug_geometry Plane across which the object will be reflected.

reset_to_default()[source]

Reset the extension properties assigned to this Aperture to default.

This typically means erasing any Constructions or Modifiers assigned to this Aperture (having them instead assigned by ConstructionSets and ModifierSets).

rotate(axis, angle, origin)

Apply a rotation transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • axis – A ladybug_geometry Vector3D axis representing the axis of rotation.

  • angle – An angle for rotation in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

rotate_xy(angle, origin)

Apply a rotation in the XY plane to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • angle – An angle in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

scale(factor, origin=None)

Apply a scale transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be scaled alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be scaled if the host aperture is scaled.

Parameters
  • factor – A number representing how much the object should be scaled.

  • origin – A ladybug_geometry Point3D representing the origin from which to scale. If None, it will be scaled from the World origin (0, 0, 0).

to_dict(abridged=False, include=None)[source]

Convert properties to dictionary.

Parameters
  • abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True). Default: False.

  • include – A list of keys to be included in dictionary. If None all the available keys will be included.

property host

Get the object hosting these properties.

class honeybee.properties.DoorProperties(host)[source]

Bases: _Properties

Honeybee Door Properties.

This class will be extended by extensions.

Usage:

door = Door('Front Door', geometry)
door.properties -> DoorProperties
door.properties.radiance -> DoorRadianceProperties
door.properties.energy -> DoorEnergyProperties
ToString()

Overwrite .NET ToString method.

add_prefix(prefix)[source]

Change the identifier extension attributes unique to this object by adding a prefix.

Notably, this method only adds the prefix to extension attributes that must be unique to the Door and does not add the prefix to attributes that are shared across several Doors.

Parameters

prefix – Text that will be inserted at the start of extension attribute identifiers.

is_equivalent(other_properties)

Get a dictionary noting the equivalency of these properties to other ones.

The keys of this dictionary will note the name of each extension (eg. energy, radiance) and the values will be a boolean for whether the extension properties are equivalent or not.

Parameters

other_properties – Properties of another object for which equivalency will be tested.

move(moving_vec)

Apply a move transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be moved alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be moved if the host aperture is moved.

Parameters

moving_vec – A ladybug_geometry Vector3D with the direction and distance to move the face.

reflect(plane)

Apply a reflection transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be reflected alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be reflected if the host aperture is reflected.

Parameters

plane – A ladybug_geometry Plane across which the object will be reflected.

reset_to_default()[source]

Reset the extension properties assigned to this Door to default.

This typically means erasing any Constructions or Modifiers assigned to this Door (having them instead assigned by ConstructionSets and ModifierSets).

rotate(axis, angle, origin)

Apply a rotation transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • axis – A ladybug_geometry Vector3D axis representing the axis of rotation.

  • angle – An angle for rotation in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

rotate_xy(angle, origin)

Apply a rotation in the XY plane to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • angle – An angle in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

scale(factor, origin=None)

Apply a scale transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be scaled alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be scaled if the host aperture is scaled.

Parameters
  • factor – A number representing how much the object should be scaled.

  • origin – A ladybug_geometry Point3D representing the origin from which to scale. If None, it will be scaled from the World origin (0, 0, 0).

to_dict(abridged=False, include=None)[source]

Convert properties to dictionary.

Parameters
  • abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True). Default: False.

  • include – A list of keys to be included in dictionary. If None all the available keys will be included.

property host

Get the object hosting these properties.

class honeybee.properties.FaceProperties(host)[source]

Bases: _Properties

Honeybee Face Properties.

This class will be extended by extensions.

Usage:

face = Face('South Bedroom Wall', geometry)
face.properties -> FaceProperties
face.properties.radiance -> FaceRadianceProperties
face.properties.energy -> FaceEnergyProperties
ToString()

Overwrite .NET ToString method.

add_prefix(prefix)[source]

Change the identifier extension attributes unique to this object by adding a prefix.

Notably, this method only adds the prefix to extension attributes that must be unique to the Face and does not add the prefix to attributes that are shared across several Faces.

Parameters

prefix – Text that will be inserted at the start of extension attribute identifiers.

is_equivalent(other_properties)

Get a dictionary noting the equivalency of these properties to other ones.

The keys of this dictionary will note the name of each extension (eg. energy, radiance) and the values will be a boolean for whether the extension properties are equivalent or not.

Parameters

other_properties – Properties of another object for which equivalency will be tested.

move(moving_vec)

Apply a move transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be moved alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be moved if the host aperture is moved.

Parameters

moving_vec – A ladybug_geometry Vector3D with the direction and distance to move the face.

reflect(plane)

Apply a reflection transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be reflected alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be reflected if the host aperture is reflected.

Parameters

plane – A ladybug_geometry Plane across which the object will be reflected.

reset_to_default()[source]

Reset the extension properties assigned at the level of this Face to default.

This typically means erasing any Constructions or Modifiers assigned to this Face (having them instead assigned by ConstructionSets and ModifierSets).

rotate(axis, angle, origin)

Apply a rotation transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • axis – A ladybug_geometry Vector3D axis representing the axis of rotation.

  • angle – An angle for rotation in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

rotate_xy(angle, origin)

Apply a rotation in the XY plane to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • angle – An angle in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

scale(factor, origin=None)

Apply a scale transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be scaled alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be scaled if the host aperture is scaled.

Parameters
  • factor – A number representing how much the object should be scaled.

  • origin – A ladybug_geometry Point3D representing the origin from which to scale. If None, it will be scaled from the World origin (0, 0, 0).

to_dict(abridged=False, include=None)[source]

Convert properties to dictionary.

Parameters
  • abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True). Default: False.

  • include – A list of keys to be included in dictionary besides Face type and boundary_condition. If None all the available keys will be included.

property host

Get the object hosting these properties.

class honeybee.properties.ModelProperties(host)[source]

Bases: _Properties

Honeybee Model Properties.

This class will be extended by extensions.

Usage:

model = Model('New Elementary School', list_of_rooms)
model.properties -> ModelProperties
model.properties.radiance -> ModelRadianceProperties
model.properties.energy -> ModelEnergyProperties
ToString()

Overwrite .NET ToString method.

apply_properties_from_dict(data)[source]

Apply extension properties from a Model dictionary to the host Model.

Parameters

data – A dictionary representation of an entire honeybee-core Model.

is_equivalent(other_properties)

Get a dictionary noting the equivalency of these properties to other ones.

The keys of this dictionary will note the name of each extension (eg. energy, radiance) and the values will be a boolean for whether the extension properties are equivalent or not.

Parameters

other_properties – Properties of another object for which equivalency will be tested.

move(moving_vec)

Apply a move transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be moved alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be moved if the host aperture is moved.

Parameters

moving_vec – A ladybug_geometry Vector3D with the direction and distance to move the face.

reflect(plane)

Apply a reflection transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be reflected alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be reflected if the host aperture is reflected.

Parameters

plane – A ladybug_geometry Plane across which the object will be reflected.

rotate(axis, angle, origin)

Apply a rotation transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • axis – A ladybug_geometry Vector3D axis representing the axis of rotation.

  • angle – An angle for rotation in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

rotate_xy(angle, origin)

Apply a rotation in the XY plane to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • angle – An angle in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

scale(factor, origin=None)

Apply a scale transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be scaled alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be scaled if the host aperture is scaled.

Parameters
  • factor – A number representing how much the object should be scaled.

  • origin – A ladybug_geometry Point3D representing the origin from which to scale. If None, it will be scaled from the World origin (0, 0, 0).

to_dict(include=None)[source]

Convert properties to dictionary.

Parameters

include – A list of keys to be included in dictionary. If None all the available keys will be included.

property host

Get the object hosting these properties.

class honeybee.properties.RoomProperties(host)[source]

Bases: _Properties

Honeybee Room Properties.

This class will be extended by extensions.

Usage:

room = Room('Bedroom', geometry)
room.properties -> RoomProperties
room.properties.radiance -> RoomRadianceProperties
room.properties.energy -> RoomEnergyProperties
ToString()

Overwrite .NET ToString method.

add_prefix(prefix)[source]

Change the identifier extension attributes unique to this object by adding a prefix.

Notably, this method only adds the prefix to extension attributes that must be unique to the Room (eg. single-room HVAC systems) and does not add the prefix to attributes that are shared across several Rooms (eg. ConstructionSets).

Parameters

prefix – Text that will be inserted at the start of extension attribute identifiers.

is_equivalent(other_properties)

Get a dictionary noting the equivalency of these properties to other ones.

The keys of this dictionary will note the name of each extension (eg. energy, radiance) and the values will be a boolean for whether the extension properties are equivalent or not.

Parameters

other_properties – Properties of another object for which equivalency will be tested.

move(moving_vec)

Apply a move transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be moved alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be moved if the host aperture is moved.

Parameters

moving_vec – A ladybug_geometry Vector3D with the direction and distance to move the face.

reflect(plane)

Apply a reflection transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be reflected alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be reflected if the host aperture is reflected.

Parameters

plane – A ladybug_geometry Plane across which the object will be reflected.

reset_to_default()[source]

Reset the extension properties assigned at the level of this Room to default.

This typically means erasing any ConstructionSets or ModifierSets assigned to this Room among other properties.

rotate(axis, angle, origin)

Apply a rotation transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • axis – A ladybug_geometry Vector3D axis representing the axis of rotation.

  • angle – An angle for rotation in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

rotate_xy(angle, origin)

Apply a rotation in the XY plane to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • angle – An angle in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

scale(factor, origin=None)

Apply a scale transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be scaled alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be scaled if the host aperture is scaled.

Parameters
  • factor – A number representing how much the object should be scaled.

  • origin – A ladybug_geometry Point3D representing the origin from which to scale. If None, it will be scaled from the World origin (0, 0, 0).

to_dict(abridged=False, include=None)[source]

Convert properties to dictionary.

Parameters
  • abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True). Default: False.

  • include – A list of keys to be included in dictionary. If None all the available keys will be included.

property host

Get the object hosting these properties.

class honeybee.properties.ShadeMeshProperties(host)[source]

Bases: _Properties

Honeybee ShadeMesh Properties.

This class will be extended by extensions.

Usage:

shade = ShadeMesh('Hilly Terrain', geometry)
shade.properties -> ShadeMeshProperties
shade.properties.radiance -> ShadeMeshRadianceProperties
shade.properties.energy -> ShadeMeshEnergyProperties
ToString()

Overwrite .NET ToString method.

add_prefix(prefix)[source]

Change the identifier extension attributes unique to this object by adding a prefix.

Notably, this method only adds the prefix to extension attributes that must be unique to the ShadeMesh and does not add the prefix to attributes that are shared across several ShadeMeshes (eg. modifier).

Parameters

prefix – Text that will be inserted at the start of extension attribute identifiers.

is_equivalent(other_properties)

Get a dictionary noting the equivalency of these properties to other ones.

The keys of this dictionary will note the name of each extension (eg. energy, radiance) and the values will be a boolean for whether the extension properties are equivalent or not.

Parameters

other_properties – Properties of another object for which equivalency will be tested.

move(moving_vec)

Apply a move transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be moved alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be moved if the host aperture is moved.

Parameters

moving_vec – A ladybug_geometry Vector3D with the direction and distance to move the face.

reflect(plane)

Apply a reflection transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be reflected alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be reflected if the host aperture is reflected.

Parameters

plane – A ladybug_geometry Plane across which the object will be reflected.

reset_to_default()[source]

Reset the extension properties assigned to this ShadeMesh to default.

This typically means erasing any Constructions or Modifiers assigned to this ShadeMesh.

rotate(axis, angle, origin)

Apply a rotation transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • axis – A ladybug_geometry Vector3D axis representing the axis of rotation.

  • angle – An angle for rotation in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

rotate_xy(angle, origin)

Apply a rotation in the XY plane to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • angle – An angle in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

scale(factor, origin=None)

Apply a scale transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be scaled alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be scaled if the host aperture is scaled.

Parameters
  • factor – A number representing how much the object should be scaled.

  • origin – A ladybug_geometry Point3D representing the origin from which to scale. If None, it will be scaled from the World origin (0, 0, 0).

to_dict(abridged=False, include=None)[source]

Convert properties to dictionary.

Parameters
  • abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True). Default: False.

  • include – A list of keys to be included in dictionary. If None all the available keys will be included.

property host

Get the object hosting these properties.

class honeybee.properties.ShadeProperties(host)[source]

Bases: _Properties

Honeybee Shade Properties.

This class will be extended by extensions.

Usage:

shade = Shade('Deep Overhang', geometry)
shade.properties -> ShadeProperties
shade.properties.radiance -> ShadeRadianceProperties
shade.properties.energy -> ShadeEnergyProperties
ToString()

Overwrite .NET ToString method.

add_prefix(prefix)[source]

Change the identifier extension attributes unique to this object by adding a prefix.

Notably, this method only adds the prefix to extension attributes that must be unique to the Shade and does not add the prefix to attributes that are shared across several Shades.

Parameters

prefix – Text that will be inserted at the start of extension attribute identifiers.

is_equivalent(other_properties)

Get a dictionary noting the equivalency of these properties to other ones.

The keys of this dictionary will note the name of each extension (eg. energy, radiance) and the values will be a boolean for whether the extension properties are equivalent or not.

Parameters

other_properties – Properties of another object for which equivalency will be tested.

move(moving_vec)

Apply a move transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be moved alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be moved if the host aperture is moved.

Parameters

moving_vec – A ladybug_geometry Vector3D with the direction and distance to move the face.

reflect(plane)

Apply a reflection transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be reflected alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be reflected if the host aperture is reflected.

Parameters

plane – A ladybug_geometry Plane across which the object will be reflected.

reset_to_default()[source]

Reset the extension properties assigned at the level of this Shade to default.

This typically means erasing any Constructions or Modifiers assigned to this Shade (having them instead assigned by ConstructionSets and ModifierSets).

rotate(axis, angle, origin)

Apply a rotation transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • axis – A ladybug_geometry Vector3D axis representing the axis of rotation.

  • angle – An angle for rotation in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

rotate_xy(angle, origin)

Apply a rotation in the XY plane to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be rotated alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be rotated if the host aperture is rotated.

Parameters
  • angle – An angle in degrees.

  • origin – A ladybug_geometry Point3D for the origin around which the object will be rotated.

scale(factor, origin=None)

Apply a scale transform to extension attributes.

This is useful in cases where extension attributes possess geometric data that should be scaled alongside the host object. For example, dynamic geometry within the honeybee-radiance state of an aperture should be scaled if the host aperture is scaled.

Parameters
  • factor – A number representing how much the object should be scaled.

  • origin – A ladybug_geometry Point3D representing the origin from which to scale. If None, it will be scaled from the World origin (0, 0, 0).

to_dict(abridged=False, include=None)[source]

Convert properties to dictionary.

Parameters
  • abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True). Default: False.

  • include – A list of keys to be included in dictionary. If None all the available keys will be included.

property host

Get the object hosting these properties.