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

Go to the source code of this file.

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Portal
 
namespace  MayaFlux::Portal::Forma
 
namespace  MayaFlux::Portal::Forma::Geometry
 

Functions

Form< glm::vec2 > MayaFlux::Portal::Forma::Geometry::crosshair (float arm_len=0.04F, glm::vec3 color=glm::vec3(0.9F), float thickness=1.F, float hit_radius=0.05F)
 Geometry function for a crosshair indicator in NDC space.
 
template<typename T >
auto MayaFlux::Portal::Forma::Geometry::drag_with (std::function< T(glm::vec2)> project, IO::MouseButtons btn=IO::MouseButtons::Left)
 Produce a Form::wire that registers a drag writing a projected cursor position.
 
Form< std::vector< float > > MayaFlux::Portal::Forma::Geometry::drawable_canvas (Kinesis::AABB2D bounds, glm::vec3 color=glm::vec3(0.8F), float thickness=1.5F)
 Geometry function for a drawable curve canvas in NDC space.
 
auto MayaFlux::Portal::Forma::Geometry::follow_move ()
 Produce a Form::wire that writes the cursor position on hover.
 
Form< float > MayaFlux::Portal::Forma::Geometry::horizontal_fader (Kinesis::AABB2D bounds, float handle_w, glm::vec3 track_color=glm::vec3(0.3F), glm::vec3 handle_color=glm::vec3(0.9F))
 Geometry function for a horizontal fader in NDC space.
 
Form< float > MayaFlux::Portal::Forma::Geometry::level_meter (Kinesis::AABB2D bounds, bool horizontal=true, glm::vec3 fill_color=glm::vec3(0.2F, 0.7F, 0.3F), glm::vec3 track_color=glm::vec3(0.15F))
 Geometry function for a level meter in NDC space.
 
auto MayaFlux::Portal::Forma::Geometry::paint_over (Kinesis::AABB2D bounds)
 Produce a Form::wire that registers canvas painting over bounds.
 
Form< glm::vec2 > MayaFlux::Portal::Forma::Geometry::point (glm::vec3 color=glm::vec3(1.0F), float size=10.0F, float hit_radius=0.04F)
 Geometry function for a positioned point in NDC space.
 
Form< glm::vec2 > MayaFlux::Portal::Forma::Geometry::position_picker (Kinesis::AABB2D bounds, glm::vec3 color=glm::vec3(0.9F), float size=8.0F)
 Geometry function for a 2D position picker in NDC space.
 
auto MayaFlux::Portal::Forma::Geometry::press_flip (IO::MouseButtons btn=IO::MouseButtons::Left)
 Produce a Form::wire that registers a press flipping a bool state.
 
Form< float > MayaFlux::Portal::Forma::Geometry::radial (Kinesis::AABB2D region, float angle_start, float angle_end, glm::vec3 color=glm::vec3(0.9F))
 Geometry function for a radial indicator in NDC space.
 
Form< float > MayaFlux::Portal::Forma::Geometry::stroke_slider (std::span< const glm::vec2 > path, std::shared_ptr< Buffers::FormaBuffer > handle_buf, float half_thickness=0.02F, glm::vec3 track_color=glm::vec3(0.3F), glm::vec3 fill_color=glm::vec3(0.2F, 0.6F, 1.0F), glm::vec3 handle_color=glm::vec3(0.95F), float handle_size=10.0F)
 Geometry function for a value scrubber along an arbitrary polyline.
 
Form< bool > MayaFlux::Portal::Forma::Geometry::toggle (Kinesis::AABB2D region, glm::vec3 color_off=glm::vec3(0.25F), glm::vec3 color_on=glm::vec3(0.2F, 0.7F, 0.4F))
 Geometry function for a boolean toggle in NDC space.
 
Form< float > MayaFlux::Portal::Forma::Geometry::vertical_fader (Kinesis::AABB2D bounds, float handle_h, glm::vec3 track_color=glm::vec3(0.3F), glm::vec3 handle_color=glm::vec3(0.9F))
 Geometry function for a vertical fader in NDC space.
 
void MayaFlux::Portal::Forma::Geometry::wire_canvas_drag (Context &ctx, uint32_t id, std::shared_ptr< MappedState< std::vector< float > > > state, Kinesis::AABB2D bounds)
 Wire drag interaction for a drawable canvas element.
 
template<typename T >
void MayaFlux::Portal::Forma::Geometry::wire_drag (Context &ctx, uint32_t id, std::shared_ptr< MappedState< T > > state, std::function< T(glm::vec2)> project, IO::MouseButtons btn=IO::MouseButtons::Left)
 Register a drag handler writing a projected cursor position to state.