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

Header file for conducting view analysis via the C Interface. More...

#include <cinterface_utils.h>
#include <vector>
#include <raytracer_C.h>
+ Include dependency graph for view_analysis_C.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.
 

Macros

#define C_INTERFACE   extern "C" __declspec(dllexport) int
 

Enumerations

enum class  AGGREGATE_TYPE {
  COUNT = 0 , SUM = 1 , AVERAGE = 2 , MAX = 3 ,
  MIN = 4
}
 Determines how to aggregate edges from the results of view analysis. More...
 

Functions

C_INTERFACE SphereicalViewAnalysisAggregate (HF::RayTracer::EmbreeRayTracer *ERT, HF::SpatialStructures::Node *node_ptr, int node_size, int max_rays, float upward_fov, float downward_fov, float height, AGGREGATE_TYPE AT, std::vector< float > **out_scores, float **out_scores_ptr, int *out_scores_size)
 Conduct view analysis, then aggregate the results. More...
 
C_INTERFACE SphereicalViewAnalysisAggregateFlat (HF::RayTracer::EmbreeRayTracer *ERT, const float *node_ptr, int node_size, int max_rays, float upward_fov, float downward_fov, float height, AGGREGATE_TYPE AT, std::vector< float > **out_scores, float **out_scores_ptr, int *out_scores_size)
 Conduct view analysis, and aggregate the results. More...
 
C_INTERFACE SphericalViewAnalysisNoAggregate (HF::RayTracer::EmbreeRayTracer *ERT, const HF::SpatialStructures::Node *node_ptr, int node_size, int *max_rays, float upward_fov, float downward_fov, float height, std::vector< RayResult > **out_results, RayResult **out_results_ptr)
 Perform view analysis, then get the distance and meshid for each individual ray casted. More...
 
C_INTERFACE SphericalViewAnalysisNoAggregateFlat (HF::RayTracer::EmbreeRayTracer *ERT, const float *node_ptr, int node_size, int *max_rays, float upward_fov, float downward_fov, float height, std::vector< RayResult > **out_results, RayResult **out_results_ptr)
 Perform view analysis, and get the distance and meshid for each individual ray casted. More...
 
C_INTERFACE SphericalDistribute (int *num_rays, std::vector< float > **out_direction_vector, float **out_direction_data, float upward_fov, float downward_fov)
 Equally distribute points around a unit sphere. More...
 

Detailed Description

Header file for conducting view analysis via the C Interface.

Author
TBA
Date
11 Aug 2020

Definition in file view_analysis_C.h.

Macro Definition Documentation

◆ C_INTERFACE

#define C_INTERFACE   extern "C" __declspec(dllexport) int

Definition at line 16 of file view_analysis_C.h.

Enumeration Type Documentation

◆ AGGREGATE_TYPE

enum class AGGREGATE_TYPE
strong

Determines how to aggregate edges from the results of view analysis.

Enumerator
COUNT 

Number of rays that hit.

SUM 

Sum of distances from the origin to each of its hit points.

AVERAGE 

Average distance of origin to its hit points.

MAX 

Maximum distance from origin to its hit points.

MIN 

Minimum distance from origin to its hit points.

Definition at line 29 of file view_analysis_C.h.