honeybee_radiance.modifier.material.glow module

Radiance Glow Material.

http://radsite.lbl.gov/radiance/refer/ray.html#Glow

class honeybee_radiance.modifier.material.glow.Glow(identifier, r_emittance=0.0, g_emittance=0.0, b_emittance=0.0, max_radius=0.0, modifier=None, dependencies=None)[source]

Bases: Material

Create glow material.

Parameters
  • identifier – Text string for a unique Material ID. Must not contain spaces or special characters. This will be used to identify the object across a model and in the exported Radiance files.

  • r_emittance – A positive value for the Red channel of the glow (default: 0).

  • g_emittance – A positive value for the Green channel of the glow (default: 0).

  • b_emittance – A positive value for the Blue channel of the glow (default: 0).

  • max_radius – Maximum radius for shadow testing (default: 0). If maxrad is zero, then the surface will never be tested for shadow, although it may participate in an interreflection calculation. If maxrad is negative, then the surface will never contribute to scene illumination. Glow sources will never illuminate objects on the other side of an illum surface. This provides a convenient way to illuminate local light fixture geometry without overlighting nearby objects.

  • modifier – Material modifier (Default: None).

  • dependencies – A list of primitives that this primitive depends on. This argument is only useful for defining advanced primitives where the primitive is defined based on other primitives. (Default: [])

Properties:
  • identifier

  • display_name

  • r_emittance

  • g_emittance

  • b_emittance

  • max_radius

  • values

  • modifier

  • dependencies

  • is_modifier

  • is_material

ToString()

Overwrite .NET ToString.

add_dependent(dep)

Add dependent.

duplicate()

Get a copy of this object.

static filter_dict_input(input_dict)

Filter a dictionary of a Primitive to get modifier and dependency objects.

classmethod from_dict(data)[source]

Initialize Glow from a dictionary.

Parameters

data – A dictionary in the format below.

{
"type": "Glow",  # primitive type
"identifier": "",  # Material identifier
"display_name": "",  # Material display name
"r_emittance": float,  # A positive value for the Red channel of the glow
"g_emittance": float,  # A positive value for the Green channel of the glow
"b_emittance": float,  # A positive value for the Blue channel of the glow
"max_radius": float,  # Maximum radius for shadow testing
"modifier": {}  # primitive modifier (Default: None)
"dependencies: []
}
classmethod from_primitive_dict(primitive_dict)[source]

Initialize Glow from a primitive dict.

Parameters

data – A dictionary in the format below.

{
"modifier": {}  # primitive modifier (Default: None)
"type": "glow",  # primitive type
"identifier": "",  # primitive identifier
"display_name": "",  # primitive display name
"values": [],  # values
"dependencies": []
}
classmethod from_single_value(identifier, rgb=0, max_radius=0, modifier=None, dependencies=None)[source]

Create glow material with single value.

Parameters
  • identifier – Text string for a unique Material ID. Must not contain spaces

  • across (or special characters. This will be used to identify the object) –

  • files. (a model and in the exported Radiance) –

  • rgb – Input for r_emittance, g_emittance and b_emittance. The value should be between 0 and 1 (Default: 0).

  • modifier – Material modifier (Default: None).

  • max_radius – Maximum radius for shadow testing (default: 0). If maxrad is zero, then the surface will never be tested for shadow, although it may participate in an interreflection calculation. If maxrad is negative, then the surface will never contribute to scene illumination. Glow sources will never illuminate objects on the other side of an illum surface. This provides a convenient way to illuminate local light fixture geometry without overlighting nearby objects.

  • dependencies – A list of primitives that this primitive depends on. This argument is only useful for defining advanced primitives where the primitive is defined based on other primitives. (Default: [])

Usage:

sample_glow = Glow.from_single_value("sample_glow", 100)
print(sample_glow)
classmethod from_string(primitive_string)

Create a Radiance primitive from a string.

If the primitive modifier is not void or it has other dependencies, the modifier and/or dependencies must also be part of the input string.

lock()
to_dict()[source]

Translate this object to a dictionary.

to_radiance(minimal=False, include_modifier=True, include_dependencies=True)

Return full radiance definition.

Parameters
  • minimal – Boolean to note whether the radiance string should be written in a minimal format (with spaces instead of line breaks). Default: False.

  • include_modifier – Boolean to note whether the modifier of this primitive should be included in the string. Default: True.

  • include_dependencies – Boolean to note whether the dependencies of this primitive should be included in the string. Default: True.

unlock()
GEOMETRYTYPES = {'bubble', 'cone', 'cup', 'cylinder', 'instance', 'mesh', 'polygon', 'ring', 'source', 'sphere', 'tube'}
MATERIALTYPES = {'BRTDfunc', 'BSDF', 'aBSDF', 'antimatter', 'ashik2', 'dielectric', 'glass', 'glow', 'illum', 'interface', 'light', 'metal', 'metal2', 'metdata', 'metfunc', 'mirror', 'mist', 'mixedfunc', 'plasdata', 'plasfunc', 'plastic', 'plastic2', 'prism1', 'prism2', 'spotlight', 'trans', 'trans2', 'transdata', 'transfunc'}
MIXTURETYPES = {'mixdata', 'mixfunc', 'mixpict', 'mixtext'}
MODIFIERTYPES = {'BRTDfunc', 'BSDF', 'aBSDF', 'antimatter', 'ashik2', 'brightdata', 'brightfunc', 'brighttext', 'colordata', 'colorfunc', 'colorpict', 'colortext', 'dielectric', 'glass', 'glow', 'illum', 'interface', 'light', 'metal', 'metal2', 'metdata', 'metfunc', 'mirror', 'mist', 'mixdata', 'mixedfunc', 'mixfunc', 'mixpict', 'mixtext', 'plasdata', 'plasfunc', 'plastic', 'plastic2', 'prism1', 'prism2', 'spotlight', 'texdata', 'texfunc', 'trans', 'trans2', 'transdata', 'transfunc'}
NONEOPAQUETYPES = {'BRTDfunc', 'BSDF', 'aBSDF', 'dielectric', 'glass', 'mist', 'mixfunc', 'prism1', 'prism2', 'trans', 'trans2', 'transdata', 'transfunc'}
PATTERNTYPES = {'brightdata', 'brightfunc', 'brighttext', 'colordata', 'colorfunc', 'colorpict', 'colortext'}
TEXTURETYPES = {'texdata', 'texfunc'}
TYPES = {'BRTDfunc', 'BSDF', 'aBSDF', 'antimatter', 'ashik2', 'brightdata', 'brightfunc', 'brighttext', 'bubble', 'colordata', 'colorfunc', 'colorpict', 'colortext', 'cone', 'cup', 'cylinder', 'dielectric', 'glass', 'glow', 'illum', 'instance', 'interface', 'light', 'mesh', 'metal', 'metal2', 'metdata', 'metfunc', 'mirror', 'mist', 'mixdata', 'mixedfunc', 'mixfunc', 'mixpict', 'mixtext', 'plasdata', 'plasfunc', 'plastic', 'plastic2', 'polygon', 'prism1', 'prism2', 'ring', 'source', 'sphere', 'spotlight', 'texdata', 'texfunc', 'trans', 'trans2', 'transdata', 'transfunc', 'tube'}
property b_emittance

Get or set a positive value for the Blue channel of the glow.

The value must be positive (Default: 0).

property dependencies

Get list of dependencies for this primitive.

Additional dependencies can be added with the add_dependent method.

property display_name

Get or set a string for the object name without any character restrictions.

If not set, this will be equal to the identifier.

property g_emittance

Get or set a positive value for the Green channel of the glow.

The value must be positive (Default: 0).

property identifier

Get or set a text string for the unique primitive identifier.

property is_geometry

Get a boolean noting whether this object is a Radiance geometry.

property is_material

Get a boolean noting whether this object is a material modifier.

property is_mixture

Get a boolean noting whether this object is a mixture modifier.

property is_modifier

Get a boolean indicating whether this object is a Radiance modifier.

Modifiers include materials, mixtures, textures and patterns.

property is_opaque

Get or set a boolean to indicate whether this primitive is opaque.

This property is used to separate opaque and non-opaque geometries as well as modifiers.

property is_pattern

Get a boolean noting whether this object is a pattern modifier.

property is_texture

Get a boolean noting whether this object is a texture modifier.

property is_void

Only true for a void.

property max_radius

0).

If maxrad is zero, then the surface will never be tested for shadow, although it may participate in an interreflection calculation. If maxrad is negative, then the surface will never contribute to scene illumination. Glow sources will never illuminate objects on the other side of an illum surface. This provides a convenient way to illuminate local light fixture geometry without overlighting nearby objects.

Type

Get or set the maximum radius for shadow testing. (Default

property modifier

Get or set an object for the primitive modifier.

property r_emittance

Get or set a positive value for the Red channel of the glow.

The value must be positive (Default: 0).

property type

Get or set a string for the primitive type.

This should always be lower case in order to match the radiance convention.

property values

Get or set the values of the current primitive as a list of three lists.

Each sub-list represents a line of the primitive’s radiance representation and contain the properties that define the primitive.

Usage:

# This will erase all values except the first line, which has 9 custom items
primitive.values = [
    [0.5, 0.5, 0.5, "/usr/oak.pic", ".", "frac(U)", "frac(V)", "-s", 1.1667],
    [],
    []
]