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:
- BH.oM.Base.BHoMObject
- BH.oM.Base.IBHoMObject
- BH.oM.Base.IObject
- BH.oM.Environment.IClimateObject
- BH.oM.Environment.IEnvironmentObject
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: