16 #ifndef _COLOUR_3D_PLOT_H_ 17 #define _COLOUR_3D_PLOT_H_ 21 #include "data/model/DenseThreeDimensionalModel.h" 71 void setModel(
const DenseThreeDimensionalModel *model);
81 int *min,
int *max,
int *deflt)
const;
85 virtual void setProperty(
const PropertyName &,
int value);
149 bool &logarithmic, QString &unit)
const;
155 float &, QString &)
const;
164 virtual void toXml(QTextStream &stream, QString indent =
"",
165 QString extraAttributes =
"")
const;
215 DenseThreeDimensionalModel::Column
getColumn(
int col)
const;
225 void fillCache(
int firstBin,
int lastBin)
const;
virtual int getVerticalZoomSteps(int &defaultStep) const
Get the number of vertical zoom steps available for this layer.
virtual PropertyList getProperties() const
bool getNormalizeHybrid() const
bool shouldPaintDenseIn(const View *) const
True if we have the opaque or smooth flag set, or if the cells are so small you can't see their borde...
virtual PropertyType getPropertyType(const PropertyName &) const
virtual bool getYScaleValue(const View *, int, float &, QString &) const
Return the value and unit at the given y coordinate in the given view.
void fillCache(int firstBin, int lastBin) const
virtual bool setDisplayExtents(float min, float max)
Set the displayed minimum and maximum values for the y axis to the given range, if supported.
virtual ColourSignificance getLayerColourSignificance() const
This should return the degree of meaning associated with colour in this layer.
void setNormalizeHybrid(bool n)
Normalize each column to its maximum value, and then scale by the log of the (absolute) maximum value...
float getYForBin(View *, float bin) const
Return the y coordinate at which the given bin "starts" (i.e.
int getColourScaleWidth(QPainter &) const
virtual int getPropertyRangeAndValue(const PropertyName &, int *min, int *max, int *deflt) const
This is a view that displays dense 3-D data (time, some sort of binned y-axis range,...
virtual const Model * getSliceableModel() const
void setColourMap(int map)
virtual bool getValueExtents(float &min, float &max, bool &logarithmic, QString &unit) const
Return the minimum and maximum values for the y axis of the model in this layer, as well as whether t...
ColourScale m_colourScale
void setInvertVertical(bool i)
virtual void paintVerticalScale(View *v, bool, QPainter &paint, QRect rect) const
virtual QString getPropertyGroupName(const PropertyName &) const
bool getNormalizeColumns() const
virtual void toXml(QTextStream &stream, QString indent="", QString extraAttributes="") const
Convert the layer's data (though not those of the model it refers to) into XML for file output.
void setModel(const DenseThreeDimensionalModel *model)
virtual int getCompletion(View *) const
Return the proportion of background work complete in drawing this view, as a percentage – in most cas...
ColourScale getColourScale() const
void modelChangedWithin(int, int)
void setGain(float gain)
Set the gain multiplier for sample values in this view.
void setNormalizeVisibleArea(bool n)
Normalize each value against the maximum in the visible region.
virtual RangeMapper * getNewPropertyRangeMapper(const PropertyName &) const
virtual int getVerticalScaleWidth(View *v, bool, QPainter &) const
virtual QString getFeatureDescription(View *v, QPoint &) const
virtual const Model * getModel() const
virtual bool getDisplayExtents(float &min, float &max) const
Return the minimum and maximum values within the displayed range for the y axis, if only a subset of ...
virtual QString getPropertyLabel(const PropertyName &) const
virtual void setVerticalZoomStep(int)
Set the vertical zoom step.
void setNormalizeColumns(bool n)
Normalize each column to its maximum value, independent of its neighbours.
virtual const ZoomConstraint * getZoomConstraint() const
Return a zoom constraint object defining the supported zoom levels for this layer.
virtual RangeMapper * getNewVerticalZoomRangeMapper() const
Create and return a range mapper for vertical zoom step values.
virtual void setProperty(const PropertyName &, int value)
virtual bool isLayerScrollable(const View *v) const
This should return true if the layer can safely be scrolled automatically by a given view (simply cop...
bool getNormalizeVisibleArea() const
void setBinScale(BinScale)
Specify the scale for the y axis.
virtual void setLayerDormant(const View *v, bool dormant)
Indicate that a layer is not currently visible in the given view and is not expected to become visibl...
const DenseThreeDimensionalModel * m_model
View is the base class of widgets that display one or more overlaid views of data against a horizonta...
Base class for layers that can be sliced, that is, that contain models appropriate for use in a Slice...
void setColourScale(ColourScale)
virtual void setProperties(const QXmlAttributes &)
Set the particular properties of a layer (those specific to the subclass) from a set of XML attribute...
bool m_normalizeVisibleArea
DenseThreeDimensionalModel::Column getColumn(int col) const
bool getInvertVertical() const
virtual QString getPropertyIconName(const PropertyName &) const
virtual int getCurrentVerticalZoomStep() const
Get the current vertical zoom step.
void paintDense(View *v, QPainter &paint, QRect rect) const
virtual bool snapToFeatureFrame(View *v, int &frame, int &resolution, SnapType snap) const
Adjust the given frame to snap to the nearest feature, if possible.
virtual QString getPropertyValueLabel(const PropertyName &, int value) const
float getBinForY(View *, float y) const
Return the bin number, possibly fractional, at the given y coordinate.
virtual void paint(View *v, QPainter &paint, QRect rect) const
Paint the given rectangle of this layer onto the given view using the given painter,...
BinScale getBinScale() const