MeshLib C++ Docs
Loading...
Searching...
No Matches
MRSolarRadiation.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMeshFwd.h"
4#include "MRVector3.h"
5
6namespace MR
7{
10
11
13[[nodiscard]] MRMESH_API std::vector<Vector3f> sampleHalfSphere();
14
17{
19 Vector3f dir;
21 float radiation = 0;
22};
23
30[[nodiscard]] MRMESH_API VertScalars computeSkyViewFactor( const Mesh & terrain,
31 const VertCoords & samples, const VertBitSet & validSamples,
32 const std::vector<SkyPatch> & skyPatches,
33 BitSet * outSkyRays = nullptr, std::vector<MeshIntersectionResult>* outIntersections = nullptr );
34
39[[nodiscard]] MRMESH_API BitSet findSkyRays( const Mesh & terrain,
40 const VertCoords & samples, const VertBitSet & validSamples,
41 const std::vector<SkyPatch> & skyPatches, std::vector<MeshIntersectionResult>* outIntersections = nullptr );
42
43}
Definition MRBitSet.h:24
MRMESH_API BitSet findSkyRays(const Mesh &terrain, const VertCoords &samples, const VertBitSet &validSamples, const std::vector< SkyPatch > &skyPatches, std::vector< MeshIntersectionResult > *outIntersections=nullptr)
float radiation
radiation of the patch depending on Sun's position, sky clearness and brightness, etc
Definition MRSolarRadiation.h:21
MRMESH_API VertScalars computeSkyViewFactor(const Mesh &terrain, const VertCoords &samples, const VertBitSet &validSamples, const std::vector< SkyPatch > &skyPatches, BitSet *outSkyRays=nullptr, std::vector< MeshIntersectionResult > *outIntersections=nullptr)
MRMESH_API std::vector< Vector3f > sampleHalfSphere()
returns quasi-uniform 145 samples on unit half-sphere z>0
Vector3f dir
direction toward the center of the patch
Definition MRSolarRadiation.h:19
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRMesh.h:23
this class represents a portion of the sky, and its radiation
Definition MRSolarRadiation.h:17