Skip to content

BH.oM.Environment.Climate.Sun

An environment object used to define the position of the sun (in azimuth and elevation)

Class structure

Implemented interfaces and base types

The Sun is inheriting from the following base type(s) and implements the following interfaces:

Properties

Defining properties

The following properties are defined on the class

Name Type Description Quantity
Azimuth double The azimuth position of the sun (in degrees clockwise from North; where 0 is North, 90 is East, etc.) -
Altitude double The altitude position of the sun (in degrees above the horizon) -

Inherited properties

The following properties are inherited from the base class of the object

Name Type Description Quantity
BHoM_Guid Guid - -
Name string - -
Fragments FragmentSet - -
Tags HashSet<string> - -
CustomData Dictionary<string, object> - -

Derived properties

The following properties are defined as extension methods in one of the BHoM_Engines

Name Type Description Quantity Engine
Altitude double Returns the minimum altitude of an Environment Object as the minimum z value from the bounding box of the geometry - Environment_Engine
AltitudeRange double Returns the range of altitude of an Environment Object taken as the maximum z value minus minimum z value from the bounding box of the geometry - Environment_Engine
Bottom ICurve Returns the bottom of a given environment object. - Environment_Engine
ExplodeToParts Output<List<ICurve>, List<ICurve>, List<ICurve>> Returns the sides, top and bottom of a given environment object. - Environment_Engine
Height double Returns the height of a generic Environment Object - Environment_Engine
Inclination double Returns the inclination of a generic Environment Object - Environment_Engine
Orientation Nullable<double> Returns the angle to north of a given environmental object on an xyPlane - Environment_Engine
Polyline Polyline Returns the external boundary from a generic Environment Object - Environment_Engine
Sides List<ICurve> Returns the sides of a given environment object. - Environment_Engine
Tilt double Returns the tilt of an Environment Object - Environment_Engine
ToLines List<Line> Returns the external boundary from a generic Environment Object - Environment_Engine
Top ICurve Returns the top of a given environment object. - Environment_Engine
Width double Returns the width of a generic Environment Object - Environment_Engine

Code and Schema

C# implementation

C#
public class Sun : BH.oM.Base.BHoMObject,
BH.oM.Base.IBHoMObject,
BH.oM.Base.IObject,
BH.oM.Environment.IClimateObject,
BH.oM.Environment.IEnvironmentObject

Assembly: Environment_oM.dll

The C# class definition is available on github:

All history and changes of the class can be found by inspection the history.

JSON Schema implementation

The object is defined as a JSON schema. You can validate a JSON instance against this schema by reference. To do this, use the schema reference below in a validator like this one.

JSON Schema
{
 "$ref" : "https://raw.githubusercontent.com/BHoM/BHoM_JSONSchema/develop/Environment_oM/Climate/Sun.json"
}

The JSON Schema is available on github here: