Class for aggregate several color map in one Color maps are aggregated according order. More...
#include <MRColorMapAggregator.h>
Classes | |
struct | PartialColorMap |
partial color map More... | |
Public Types | |
enum class | AggregateMode { Overlay , Blending } |
color map aggregating mode More... | |
using | ColorMap = Vector<Color, Id<Tag>> |
using | ElementBitSet = TaggedBitSet<Tag> |
Public Member Functions | |
ColorMapAggregator ()=default | |
MRMESH_API void | setDefaultColor (const Color &color) |
set default (background) color | |
MRMESH_API void | pushBack (const PartialColorMap &partitialColorMap) |
add color map after all (more priority) | |
MRMESH_API void | insert (int i, const PartialColorMap &partitialColorMap) |
insert color map before element #i (0 - minimum priority) | |
MRMESH_API void | replace (int i, const PartialColorMap &partitialColorMap) |
replace color map in #i position | |
MRMESH_API void | reset () |
reset all accumulated color map | |
size_t | getColorMapNumber () |
get number of accumulated color maps | |
const PartialColorMap & | getPartialColorMap (int i) |
get partial color map map by index | |
MRMESH_API void | erase (int i, int n=1) |
erase n color map from #i | |
MRMESH_API void | setMode (AggregateMode mode) |
set color map aggregating mode | |
MRMESH_API ColorMap | aggregate (const ElementBitSet &elementBitSet) |
get aggregated color map for active elements | |
Class for aggregate several color map in one Color maps are aggregated according order.
using MR::ColorMapAggregator< Tag >::ColorMap = Vector<Color, Id<Tag>> |
using MR::ColorMapAggregator< Tag >::ElementBitSet = TaggedBitSet<Tag> |
|
strong |
color map aggregating mode
Enumerator | |
---|---|
Overlay | |
Blending | result element color is element color of more priority color map (or default color, if there isn't color map for this element) result element color is blending colors of all color map in this element and default color (https://en.wikipedia.org/wiki/Alpha_compositing) |
|
default |
MRMESH_API ColorMap MR::ColorMapAggregator< Tag >::aggregate | ( | const ElementBitSet & | elementBitSet | ) |
get aggregated color map for active elements
MRMESH_API void MR::ColorMapAggregator< Tag >::erase | ( | int | i, |
int | n = 1 ) |
erase n color map from #i
|
inline |
get number of accumulated color maps
|
inline |
get partial color map map by index
MRMESH_API void MR::ColorMapAggregator< Tag >::insert | ( | int | i, |
const PartialColorMap & | partitialColorMap ) |
insert color map before element #i (0 - minimum priority)
MRMESH_API void MR::ColorMapAggregator< Tag >::pushBack | ( | const PartialColorMap & | partitialColorMap | ) |
add color map after all (more priority)
MRMESH_API void MR::ColorMapAggregator< Tag >::replace | ( | int | i, |
const PartialColorMap & | partitialColorMap ) |
replace color map in #i position
MRMESH_API void MR::ColorMapAggregator< Tag >::reset | ( | ) |
reset all accumulated color map
MRMESH_API void MR::ColorMapAggregator< Tag >::setDefaultColor | ( | const Color & | color | ) |
set default (background) color
MRMESH_API void MR::ColorMapAggregator< Tag >::setMode | ( | AggregateMode | mode | ) |
set color map aggregating mode