honeybee.radiance.geometry package

Submodules

honeybee.radiance.geometry.bubble module

Radiance Bubble.

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

class honeybee.radiance.geometry.bubble.Bubble(name, center_pt=None, radius=None, modifier=None)[source]

Bases: honeybee.radiance.geometry.sphere.Sphere

Radiance Bubble.

A bubble is simply a sphere whose surface normal points inward.

mod bubble id 0 0 4 xcent ycent zcent radius

honeybee.radiance.geometry.cone module

Radiance Cone.

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

class honeybee.radiance.geometry.cone.Cone(name, center_pt_start=None, radius_start=None, center_pt_end=None, radius_end=None, modifier=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Cone.

A cone is a megaphone-shaped object. It is truncated by two planes perpendicular to its axis, and one of its ends may come to a point. It is given as two axis endpoints, and the starting and ending radii:

mod cone id 0 0 8

x0 y0 z0 x1 y1 z1 r0 r1
center_pt_end = None
center_pt_start = None
classmethod from_json(geo_json)[source]

Make radiance material from json {

“type”: “cone”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “center_pt_start”: {“x”: float, “y”: float, “z”: float}, “radius_start”: float, “center_pt_end”: {“x”: float, “y”: float, “z”: float}, “radius_end”: float

}

classmethod from_string(geometry_string, modifier=None)[source]

Create a Radiance material from a string.

If the material has a modifier the modifier material should also be part of the string or should be provided using modifier argument.

radius_end = None
radius_start = None
to_json()[source]

Translate radiance material to json {

“type”: “cone”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “center_pt_start”: {“x”: float, “y”: float, “z”: float}, “radius_start”: float, “center_pt_end”: {“x”: float, “y”: float, “z”: float}, “radius_end”: float

}

honeybee.radiance.geometry.cup module

Radiance Cup.

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

class honeybee.radiance.geometry.cup.Cone(name, modifier=None, values=None, is_opaque=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Cup.

A cup is an inverted cone (i.e., has an inward surface normal).

A cone is a megaphone-shaped object. It is truncated by two planes perpendicular to its axis, and one of its ends may come to a point. It is given as two axis endpoints, and the starting and ending radii:

mod cone id 0 0 8

x0 y0 z0 x1 y1 z1 r0 r1

honeybee.radiance.geometry.cylinder module

Radiance Cylinder.

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

class honeybee.radiance.geometry.cylinder.Cylinder(name, center_pt_start=None, center_pt_end=None, radius=None, modifier=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Cylinder.

A cylinder is like a cone, but its starting and ending radii are equal.

mod cylinder id 0 0 7

x0 y0 z0 x1 y1 z1 rad
center_pt_end = None
center_pt_start = None
classmethod from_json(geo_json)[source]

Make radiance material from json {

“type”: “cylinder”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “center_pt_start”: {“x”: float, “y”: float, “z”: float}, “center_pt_end”: {“x”: float, “y”: float, “z”: float}, “radius”: float

}

classmethod from_string(geometry_string, modifier=None)[source]

Create a Radiance geometry from a string.

If the geometry has a modifier the modifier material should also be part of the string or should be provided using modifier argument.

radius = None
to_json()[source]

Translate radiance material to json {

“type”: “cylinder”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “center_pt_start”: {“x”: float, “y”: float, “z”: float}, “center_pt_end”: {“x”: float, “y”: float, “z”: float}, “radius”: float

}

honeybee.radiance.geometry.geometrybase module

Base Radiance Surfaces class (e.g source, sphere, etc.).

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

class honeybee.radiance.geometry.geometrybase.RadianceGeometry(name, modifier=None, values=None, is_opaque=None)[source]

Bases: honeybee.radiance.primitive.Primitive

Base class for Radiance geometries.

name

Geometry name as a string. Do not use white space and special character.

modifier

Modifier. It can be material, mixture, texture or pattern. Honeybee currently only supports materials. For other types use Generic primitive class (Default: “void”).

isRadianceGeometry

Indicate that this object is a Radiance Geometry.

honeybee.radiance.geometry.instance module

Radiance Transfunc Instance.

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

class honeybee.radiance.geometry.instance.Instance(name, modifier=None, values=None, is_opaque=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Instance.

An instance is a compound surface, given by the contents of an octree file (created by oconv).

mod instance id 1+ octree transform 0 0

If the modifier is “void”, then surfaces will use the modifiers given in the original description. Otherwise, the modifier specified is used in their place. The transform moves the octree to the desired location in the scene. Multiple instances using the same octree take little extra memory, hence very complex descriptions can be rendered using this primitive.

There are a number of important limitations to be aware of when using instances. First, the scene description used to generate the octree must stand on its own, without referring to modifiers in the parent description. This is necessary for oconv to create the octree. Second, light sources in the octree will not be incorporated correctly in the calculation, and they are not recommended. Finally, there is no advantage (other than convenience) to using a single instance of an octree, or an octree containing only a few surfaces. An xform command on the subordinate description is prefered in such cases.

honeybee.radiance.geometry.mesh module

Radiance Transfunc Mesh.

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

class honeybee.radiance.geometry.mesh.Mesh(name, modifier=None, values=None, is_opaque=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Mesh.

A mesh is a compound surface, made up of many triangles and an octree data structure to accelerate ray intersection. It is typically converted from a Wavefront .OBJ file using the obj2mesh program.

mod mesh id 1+ meshfile transform 0 0

If the modifier is “void”, then surfaces will use the modifiers given in the original mesh description. Otherwise, the modifier specified is used in their place. The transform moves the mesh to the desired location in the scene. Multiple instances using the same meshfile take little extra memory, and the compiled mesh itself takes much less space than individual polygons would. In the case of an unsmoothed mesh, using the mesh primitive reduces memory requirements by a factor of 30 relative to individual triangles. If a mesh has smoothed surfaces, we save a factor of 50 or more, permitting very detailed geometries that would otherwise exhaust the available memory. In addition, the mesh primitive can have associated (u,v) coordinates for pattern and texture mapping. These are made available to function files via the Lu and Lv variables.

honeybee.radiance.geometry.polygon module

Radiance Polygon.

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

class honeybee.radiance.geometry.polygon.Polygon(name, points, modifier=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Polygon.

A polygon is given by a list of three-dimensional vertices, which are ordered counter-clockwise as viewed from the front side (into the surface normal). The last vertex is automatically connected to the first. Holes are represented in polygons as interior vertices connected to the outer perimeter by coincident edges (seams).

mod polygon id 0 0 3n

x1 y1 z1 x2 y2 z2 … xn yn zn
classmethod from_json(geo_json)[source]

Make radiance material from json {

“type”: “polygon”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “points”: [{“x”: float, “y”: float, “z”: float}, …]

}

classmethod from_string(geometry_string, modifier=None)[source]

Create a Radiance material from a string.

If the material has a modifier the modifier material should also be part of the string or should be provided using modifier argument.

to_json()[source]

Translate radiance material to json {

“type”: “polygon”, // Geometry type “modifier”: {} or void, // Modifier “name”: “”, // Geometry Name “points”: [{“x”: float, “y”: float, “z”: float}, …]

}

honeybee.radiance.geometry.ring module

Radiance Ring.

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

class honeybee.radiance.geometry.ring.Ring(name, center_pt=None, radius_inner=None, surface_normal=None, radius_outer=None, modifier=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Ring.

A ring is a circular disk given by its center, surface normal, and inner and outer radii:

mod ring id 0 0 8

xcent ycent zcent xdir ydir zdir r0 r1
center_pt = None
classmethod from_json(geo_json)[source]

Make radiance material from json {

“type”: “ring”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “center_pt”: {“x”: float, “y”: float, “z”: float}, “surface_normal”: {“x”: float, “y”: float, “z”: float}, “radius_inner”: float, “radius_outer”: float

}

classmethod from_string(geometry_string, modifier=None)[source]

Create a Radiance geometry from a string.

If the geometry has a modifier the modifier material should also be part of the string or should be provided using modifier argument.

radius_inner = None
radius_outer = None
surface_normal = None
to_json()[source]

Translate radiance material to json {

“type”: “ring”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “center_pt”: {“x”: float, “y”: float, “z”: float}, “surface_normal”: {“x”: float, “y”: float, “z”: float}, “radius_inner”: float, “radius_outer”: float

}

honeybee.radiance.geometry.source module

Radiance Source.

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

class honeybee.radiance.geometry.source.Source(name, direction=None, angle=None, modifier=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Source.

A source is not really a surface, but a solid angle. It is used for specifying light sources that are very distant. The direction to the center of the source and the number of degrees subtended by its disk are given as follows:

mod source id 0 0 4 xdir ydir zdir angle

angle = None
direction = None
classmethod from_json(geo_json)[source]

Make radiance material from json {

“type”: “source”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “direction”: {“x”: float, “y”: float, “z”: float}, “angle”: float

}

classmethod from_string(geometry_string, modifier=None)[source]

Create a Radiance material from a string.

If the material has a modifier the modifier material should also be part of the string or should be provided using modifier argument.

to_json()[source]

Translate radiance material to json {

“type”: “source”, // Geometry type “modifier”: {} or void, // Modifier “name”: “”, // Geometry Name “direction”: {“x”: float, “y”: float, “z”: float}, “angle”: float

}

honeybee.radiance.geometry.sphere module

Radiance Sphere.

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

class honeybee.radiance.geometry.sphere.Sphere(name, center_pt=None, radius=None, modifier=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Sphere.

mod sphere id 0 0 4 xcent ycent zcent radius

center_pt = None
classmethod from_json(geo_json)[source]

Make radiance material from json {

“type”: “sphere”, // Geometry type “modifier”: {} or “void”, “name”: “”, // Geometry Name “center_pt”: {“x”: float, “y”: float, “z”: float}, “radius”: float

}

classmethod from_string(geometry_string, modifier=None)[source]

Create a Radiance material from a string.

If the material has a modifier the modifier material should also be part of the string or should be provided using modifier argument.

radius = None
to_json()[source]

Translate radiance material to json {

“type”: “sphere”, // Geometry type “modifier”: {} or void, // Modifier “name”: “”, // Geometry Name “center_pt”: {“x”: float, “y”: float, “z”: float}, “radius”: float

}

honeybee.radiance.geometry.tube module

Radiance Tube.

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

class honeybee.radiance.geometry.tube.Tube(name, modifier=None, values=None, is_opaque=None)[source]

Bases: honeybee.radiance.geometry.geometrybase.RadianceGeometry

Radiance Tube. A tube is an inverted cylinder. A cylinder is like a cone, but its starting and ending radii are equal.

mod tube id 0 0 7

x0 y0 z0 x1 y1 z1 rad

Module contents

Radiance Geometry.

In Radiance manual geometries are named as Surfaces. Read more at: http://radsite.lbl.gov/radiance/refer/ray.html#Surfaces