DHART
Loading...
Searching...
No Matches
view_analysis.h File Reference

Contains definitions for the ViewAnalysis namespace. More...

#include <vector>
#include <array>
#include <cmath>
#include <iostream>
#include <assert.h>
#include <limits>
+ Include dependency graph for view_analysis.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  HF
 Perform human scale analysis on 3D environments.
 
namespace  HF::SpatialStructures
 Contains standard fundamental data structures for representing space used throughout DHARTAPI.
 
namespace  HF::RayTracer
 Cast rays to determine if and where they intersect geometry.
 
namespace  HF::ViewAnalysis
 Analyze space from the perspective of observers within a 3D environment.
 

Enumerations

enum class  HF::ViewAnalysis::AGGREGATE_TYPE {
  HF::ViewAnalysis::COUNT = 0 , HF::ViewAnalysis::SUM = 1 , HF::ViewAnalysis::AVERAGE = 2 , HF::ViewAnalysis::MAX = 3 ,
  HF::ViewAnalysis::MIN = 4
}
 The type of aggregation to use for ViewAnalysisAggregate More...
 

Functions

vector< std::array< float, 3 > > HF::ViewAnalysis::FibbonacciDistributePoints (int num_points, float upwards_fov=50.0f, float downward_fov=70.0f)
 Evenly distribute a set of points around a sphere centered at the origin. More...
 
void HF::ViewAnalysis::Aggregate (float &out_total, float new_value, const AGGREGATE_TYPE agg_type, int count=0)
 
template<typename RES , typename RT , typename N >
std::vector< RES > HF::ViewAnalysis::SphericalViewAnalysis (RT &ray_tracer, const std::vector< N > &Nodes, int num_rays, float upward_limit=50.0f, float downward_limit=70.0f, float height=1.7f)
 Conduct view analysis with any Raytracer in parallel. More...
 
template<typename RT , typename N >
std::vector< float > HF::ViewAnalysis::SphericalRayshootWithAnyRTForDistance (RT &ray_tracer, const std::vector< N > &Nodes, int num_rays, float upward_limit=50.0f, float downward_limit=70.0f, float height=1.7f, const AGGREGATE_TYPE aggregation=AGGREGATE_TYPE::SUM)
 Conduct view analysis and recieve a summarized set of results for each node. More...
 

Detailed Description

Contains definitions for the ViewAnalysis namespace.

Author
TBA
Date
26 Jun 2020

Definition in file view_analysis.h.