Inviwo 0.9.12-pre
Inviwo documentation
Loading...
Searching...
No Matches
inviwo::plot::PersistenceDiagramPlotGL Class Reference

base class for plotting a persistence diagram using OpenGL More...

#include <persistencediagramplotgl.h>

Classes

class  Properties
 

Public Types

enum class  Type { Death , Persistence }
 
using ToolTipFunc = void(PickingEvent*, size_t)
 
using ToolTipCallbackHandle = std::shared_ptr<std::function<ToolTipFunc>>
 
using SelectionFunc = void(const BitSet&)
 
using SelectionCallbackHandle = std::shared_ptr<std::function<SelectionFunc>>
 

Public Member Functions

 PersistenceDiagramPlotGL (Processor *processor=nullptr)
 
void plot (Image &dest, IndexBuffer *indices=nullptr, bool useAxisRanges=false)
 
void plot (Image &dest, const Image &src, IndexBuffer *indices=nullptr, bool useAxisRanges=false)
 
void plot (ImageOutport &dest, IndexBuffer *indices=nullptr, bool useAxisRanges=false)
 
void plot (ImageOutport &dest, ImageInport &src, IndexBuffer *indices=nullptr, bool useAxisRanges=false)
 
void plot (const ivec2 &start, const ivec2 &size, IndexBuffer *indices=nullptr, bool useAxisRanges=false)
 
void setXAxisLabel (const std::string &label)
 
void setYAxisLabel (const std::string &label)
 
void setXAxis (std::shared_ptr< const Column > col)
 
void setYAxis (std::shared_ptr< const Column > col, Type type=Type::Death)
 
void setXAxisData (std::shared_ptr< const BufferBase > buffer)
 
void setYAxisData (std::shared_ptr< const BufferBase > buffer)
 
void setColorData (std::shared_ptr< const BufferBase > buffer)
 
void setIndexColumn (std::shared_ptr< const TemplateColumn< uint32_t > > indexcol)
 
void setSelectedIndices (const BitSet &indices)
 
ToolTipCallbackHandle addToolTipCallback (std::function< ToolTipFunc > callback)
 
SelectionCallbackHandle addSelectionChangedCallback (std::function< SelectionFunc > callback)
 

Public Attributes

Properties properties_
 
Shader pointShader_
 
Shader lineShader_
 

Protected Member Functions

void plot (const size2_t &dims, IndexBuffer *indices, bool useAxisRanges)
 
void renderLines (const size2_t &dims, const std::vector< uint32_t > &diagonalIndices, const std::vector< uint32_t > &indices)
 
void renderPoints (const size2_t &dims, const std::vector< uint32_t > &indices)
 
void renderAxis (const size2_t &dims)
 
void objectPicked (PickingEvent *p)
 
uint32_t getGlobalPickId (uint32_t localIndex) const
 

Protected Attributes

Type type = Type::Death
 
std::shared_ptr< const BufferBasexAxis_
 
std::shared_ptr< const BufferBaseyAxis_
 
std::shared_ptr< const BufferBasecolor_
 
std::shared_ptr< const TemplateColumn< uint32_t > > indexColumn_
 
vec2 minmaxX_
 
vec2 minmaxY_
 
vec2 minmaxC_
 
vec2 minmaxR_
 
std::array< AxisRenderer, 2 > axisRenderers_
 
PickingMapper picking_
 
BitSet selectedIndices_
 
std::set< uint32_t > hoveredIndices_
 
Processorprocessor_
 
Dispatcher< ToolTipFunc > tooltipCallback_
 
Dispatcher< SelectionFunc > selectionChangedCallback_
 

Detailed Description

base class for plotting a persistence diagram using OpenGL


The documentation for this class was generated from the following file: