|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
| void MayaFlux::Portal::Forma::internal::Atelier::place_adornments | ( | Surface & | surface, |
| const Plot::SeriesSpec & | spec, | ||
| uint32_t | relate_to, | ||
| const std::shared_ptr< Buffers::FormaBuffer > & | batch = {} |
||
| ) |
Create and place every adornment declared on spec.
Makes a target for each axis label, tick label, legend swatch, and legend label, then hands each to the corresponding Plot placement function. Each adornment is related to relate_to so removal and visibility cascade from the series element.
Lives here rather than in Plot because it constructs buffers, which requires the BufferManager. Plot composes placement from arguments it is given.
| surface | Surface to place on. |
| spec | Series spec carrying the adornment declarations. |
| relate_to | Element id the adornments are related to. |
| batch | Shared plot buffer for swatches and labels. With labels, it needs a text slot and forma_plot.frag. When empty, one buffer is created for all adornments. |
Definition at line 183 of file Atelier.cpp.
References MayaFlux::Portal::Graphics::RenderConfig::additional_textures, create_buffer(), MayaFlux::Portal::Graphics::RenderConfig::fragment_shader, label, MayaFlux::Portal::Forma::Plot::SeriesSpec::labels, MayaFlux::Portal::Forma::Plot::layout_legend(), MayaFlux::Portal::Forma::Plot::SeriesSpec::legend, MayaFlux::Portal::Forma::Plot::place_label(), MayaFlux::Portal::Forma::Plot::place_rect(), MayaFlux::Portal::Forma::Plot::plot_tick_labels(), MayaFlux::Portal::Forma::Surface::render_config(), MayaFlux::Portal::Forma::FormaTarget::slice_of(), MayaFlux::Portal::Forma::Plot::SeriesSpec::tick_labels, topology, MayaFlux::Portal::Graphics::TRIANGLE_LIST, and MayaFlux::Portal::Graphics::TRIANGLE_STRIP.
Referenced by MayaFlux::Portal::Forma::plot().
Here is the call graph for this function:
Here is the caller graph for this function: