@devang and @wim replies are correct. The direction of the surface is what Ladybug uses to generate the test points. The result that you get is for each test point (aka sensor). Each sensor has a location (x, y, z) and a direction (x, y, z).
Let’s talk about a simple surface and see what happens when you run a simple radiation analysis with Ladybug.
- The component divides each surface based on the
gridSize input, and uses the center point of each grid as the test point. Each center point represents the whole face.
- It moves the test point away from the base surface by
disFromBase. We need the test point to away from the surface not to intersect with the surface itself. The direction of the move is based on the normal direction of the point which is based on the normal direction of the center of each grid.
Here is when your example fails. If the surface normal is downwards then the direction of points will be downwards and also the points will be moved behind the test surface. That’s why you would get the value of 0.
Here is how a sphere will be represented in a radiation analysis:
- Finally, it calculate the amount of radiation that each test points receives from the sky (and not the sun). When you use the
genCumulativeSkyMtx component ladybug uses Radiance’s
gendaymtx to calculate the cumulative sky. Cumulative sky is not continuous and is divided into patches and the value for each patch is broken down to diffuse and direct values. Ladybug uses the center point of each sky patch for the calculation. You can change the density of the sky using the
skyDensity input. The default is 0 which generate the Tregenza sky with 145 path.
- For calculating the total value the value for each point is multiplied by the area of each grid. The component outputs both the raw value for each point and the total radiation.
In short, the calculation is for each test point and it will be different based on the direction of the surface/test point.
This component has two main limitations and should only be used for outdoor studies. The limitations are:
- Component doesn’t calculate secondary reflections from the surfaces.
- Component doesn’t accept transparent or translucent materials.
If those are required for your study then you should use Honeybee’s grid-based recipe which uses Radiance for ray-tracing and doesn’t have any of these limitations.