MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
Bounds.hpp File Reference
+ Include dependency graph for Bounds.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  MayaFlux::Kinesis::AABB2D
 Axis-aligned bounding rectangle in a 2D coordinate space. More...
 
struct  MayaFlux::Kinesis::AABB3D
 Axis-aligned bounding box in 3D world space. More...
 
struct  MayaFlux::Kinesis::BoundingSphere
 Spherical fast-reject hint in world space. More...
 

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Kinesis
 

Functions

std::function< bool(glm::vec2)> MayaFlux::Kinesis::circular_bounds (glm::vec2 center, float radius) noexcept
 Containment test for a circle.
 
std::function< bool(glm::vec3)> MayaFlux::Kinesis::circular_bounds (glm::vec3 center, float radius) noexcept
 Containment test for a sphere.
 
std::function< bool(glm::vec3)> MayaFlux::Kinesis::convex_region (std::span< const std::pair< glm::vec3, float > > planes)
 Containment test for a convex volume defined by inward-facing half-planes.
 
std::function< bool(glm::vec3)> MayaFlux::Kinesis::extruded_polygon_region (std::span< const glm::vec2 > footprint, float y_min, float y_max)
 Containment test for a vertically extruded 2D polygon.
 
std::function< bool(glm::vec2)> MayaFlux::Kinesis::intersect_bounds (std::function< bool(glm::vec2)> a, std::function< bool(glm::vec2)> b)
 Intersection of two containment tests.
 
std::function< bool(glm::vec3)> MayaFlux::Kinesis::intersect_bounds (std::function< bool(glm::vec3)> a, std::function< bool(glm::vec3)> b)
 Intersection of two 3D containment tests.
 
glm::uvec2 MayaFlux::Kinesis::ndc_size_to_pixels (const AABB2D &region, uint32_t width, uint32_t height)
 Convert an NDC AABB's extent to integer pixel dimensions.
 
std::function< bool(glm::vec2)> MayaFlux::Kinesis::polygon_bounds (std::span< const glm::vec2 > vertices)
 Containment test for a convex or concave polygon.
 
std::function< bool(glm::vec2)> MayaFlux::Kinesis::stroke_bounds (std::span< const glm::vec2 > points, float half_thickness)
 Containment test for a polyline with a uniform half-thickness.
 
std::function< bool(glm::vec2)> MayaFlux::Kinesis::subtract_bounds (std::function< bool(glm::vec2)> a, std::function< bool(glm::vec2)> b)
 Difference of two containment tests.
 
std::function< bool(glm::vec3)> MayaFlux::Kinesis::subtract_bounds (std::function< bool(glm::vec3)> a, std::function< bool(glm::vec3)> b)
 Difference of two 3D containment tests.
 
std::function< bool(glm::vec2)> MayaFlux::Kinesis::union_bounds (std::function< bool(glm::vec2)> a, std::function< bool(glm::vec2)> b)
 Union of two containment tests.
 
std::function< bool(glm::vec3)> MayaFlux::Kinesis::union_bounds (std::function< bool(glm::vec3)> a, std::function< bool(glm::vec3)> b)
 Union of two 3D containment tests.