Views
Charts Package API Reference Guide
Product Documentation:
Views Documentation Home
List of all members | Public Types | Public Member Functions | Friends
IlvChartGraphic Class Reference

Base class for graphic objects displaying charts. More...

#include <ilviews/charts/graphic.h>

Inheritance diagram for IlvChartGraphic:
IlvSimpleGraphic IlvGraphic IlvValueInterface IlvCartesianChart IlvPolarChart IlvPieChartGraphic IlvRadarChart

Public Types

enum  FillMode { FillNone, FillDataArea, FillGraphArea, FillDataAndGraphArea }
 Available chart fill modes. More...
 
enum  ScrollMode { IlvScrollModeStop, IlvScrollModeShift, IlvScrollModeCycle }
 Available scrolling modes. More...
 

Public Member Functions

 IlvChartGraphic (IlvDisplay *display, const IlvRect &bbox, IlvPalette *palette=0)
 Constructor. More...
 
virtual ~IlvChartGraphic ()
 Destructor. More...
 
IlvAbstractChartCursoraddAbscissaCursor (IlDouble value, IlvPalette *palette=0, IlBoolean reDraw=IlTrue)
 Adds a cursor on the abscissa axis. More...
 
IlvAbstractGridDisplayeraddAbscissaGrid (IlvPalette *majorPalette=0, IlvPalette *minorPalette=0, IlBoolean reDraw=IlTrue)
 Adds a grid on the abscissa axis. More...
 
virtual IlBoolean addDisplayer (IlvAbstractChartDisplayer *displayer, IlUInt count, IlvChartDataSet *const *dataSets, IlvCoordinateInfo *ordinateInfo=0, IlUInt position=IlvLastPositionIndex)
 Adds a displayer connected to several data sets. More...
 
IlBoolean addDisplayer (IlvAbstractChartDisplayer *displayer, IlvChartDataSet *dataSet=0, IlvCoordinateInfo *ordinateInfo=0, IlUInt position=IlvLastPositionIndex)
 Adds a displayer connected to one data set. More...
 
IlvAbstractChartCursoraddOrdinateCursor (IlDouble value, IlvPalette *palette=0, IlUInt index=0, IlBoolean reDraw=IlTrue)
 Adds a cursor on an ordinate axis. More...
 
IlvAbstractGridDisplayeraddOrdinateGrid (IlvPalette *majorPalette=0, IlvPalette *minorPalette=0, IlUInt index=0, IlBoolean reDraw=IlTrue)
 Adds a grid to an ordinate axis. More...
 
void addOrdinateScale (IlvAbstractScaleDisplayer *scale)
 Adds an ordinate scale. More...
 
virtual void dataPointsAdded (const IlvChartDataSet *ds, IlUInt iMin, IlUInt iMax, IlBoolean reDraw=IlTrue)
 Performs the automatic update when new data are added. More...
 
IlBoolean dataPointsToDisplay (IlUInt count, const IlvDoublePoint *dataPoints, IlvPoint *points, const IlvCoordinateInfo *ordinateInfo, IlBoolean shiftOfCycleLength, const IlvTransformer *t=0) const
 Converts data points to screen coordinates. More...
 
IlBoolean displayToDataPoints (IlUInt count, const IlvPoint *points, IlvDoublePoint *dataPoints, const IlvCoordinateInfo *ordinateInfo, IlBoolean shiftOfCycleLength, const IlvTransformer *t=0) const
 Converts screen coordinates to data points. More...
 
void enableFastScroll (IlBoolean enable)
 Enables a very efficient refresh in Shift scroll mode. More...
 
IlvAbstractGridDisplayergetAbscissaGrid () const
 Returns the abscissa grid. More...
 
IlvCoordinateInfogetAbscissaInfo () const
 Returns the coordinate information object of the abscissa. More...
 
IlvSingleScaleDisplayergetAbscissaScale () const
 Returns the abscissa scale. More...
 
const IlvAxisCrossinggetAxisCrossing (IlInt index) const
 Gets crossing between coordinate axes. More...
 
IlvAbstractChartCursorgetCycleCursor () const
 Returns the cycle cursor. More...
 
IlvAbstractChartDatagetData () const
 Returns the chart data object that manages the data sets displayed by the current object. More...
 
void getDataDisplayArea (const IlvCoordinateInfo *coordInfo, IlvRect &dataDisplayArea, const IlvTransformer *t=0) const
 Returns the rectangle where the data values of a coordinate are projected. More...
 
void getDataDisplayArea (IlvRect &dataDisplayArea, const IlvTransformer *t=0) const
 Returns the data display area of the chart. More...
 
IlvChartDataSetgetDataSet (IlUInt dataSetIndex) const
 Returns a given data set. More...
 
IlUInt getDataSetIndex (const IlvChartDataSet *dataSet) const
 Returns the index of a given data set. More...
 
IlvChartDataSet *const * getDataSets (IlUInt &dataSetCount) const
 Returns the data sets. More...
 
IlUInt getDataSetsCount () const
 Returns the number of data sets. More...
 
IlvAbstractChartDisplayergetDisplayer (IlUInt displayerIndex) const
 Gets one specific displayer by index. More...
 
IlvAbstractChartDisplayergetDisplayerByName (const char *name) const
 Gets one specific displayer by name. More...
 
IlUInt getDisplayerIndex (const IlvAbstractChartDisplayer *displayer) const
 Returns the index of a displayer. More...
 
IlUInt getDisplayersCount () const
 Returns the number of displayers. More...
 
IlUInt getDisplayItem (IlvAbstractChartDisplayer *&displayer, IlvChartDataSet *&dataSet, const IlvPoint &viewPoint, const IlvTransformer *t) const
 Returns the data point whose representation on the chart includes a given screen point of the chart graphic. More...
 
IlBoolean getDrawingArea (IlvRect &drawingArea, const IlvTransformer *t=0) const
 Returns the drawing area of the chart. More...
 
void getGraphArea (IlvRect &graphArea, const IlvTransformer *t=0) const
 Returns the graph area of the chart. More...
 
IlvChartLayoutgetLayout () const
 Returns the chart layout object. More...
 
IlvChartLegendgetLegend () const
 Returns the legend. More...
 
IlUInt getNearestPoint (IlvAbstractChartDisplayer *&displayer, IlvChartDataSet *&dataSet, const IlvPoint &viewPoint, IlvDim distance, IlvPoint &point, const IlvTransformer *t) const
 Returns the nearest data point from a screen point of the chart graphic. More...
 
IlvAbstractGridDisplayergetOrdinateGrid (IlUInt index=0) const
 Gets an ordinate grid by index. More...
 
IlUInt getOrdinateGridIndex (const IlvAbstractGridDisplayer *grid) const
 Returns the index of an ordinate grid. More...
 
IlvCoordinateInfogetOrdinateInfo (IlUInt index=0) const
 Returns the coordinate information object of an ordinate axis. More...
 
IlUInt getOrdinateInfoCount () const
 Returns the number of ordinate coordinate information objects. More...
 
IlUInt getOrdinateInfoIndex (const IlvCoordinateInfo *info) const
 Returns the index of an ordinate coordinate information object. More...
 
IlvAbstractScaleDisplayergetOrdinateScale (IlUInt index=0) const
 Gets an ordinate scale by index. More...
 
IlUInt getOrdinateScaleIndex (const IlvAbstractScaleDisplayer *scale) const
 Returns the index of an ordinate scale. More...
 
IlUInt getOrdinateScalesCount () const
 Returns the number of ordinate scales. More...
 
IlvSingleScaleDisplayergetOrdinateSingleScale (IlUInt index=0) const
 Gets a single ordinate scale by index. More...
 
IlvPalettegetProjectedPointsPalette () const
 Returns the palette used to display the out-of-bounds data points that are projected. More...
 
IlvAbstractProjectorgetProjector () const
 Returns the projector. More...
 
void getProjectorArea (const IlvAbstractScaleDisplayer *scale, IlvProjectorArea &projArea, const IlvTransformer *t=0) const
 Returns the description of the projecting area associated with a scale. More...
 
void getProjectorArea (const IlvCoordinateInfo *coordInfo, IlvProjectorArea &projArea, const IlvTransformer *t) const
 Returns the description of the projecting area associated with a coordinate. More...
 
IlvSingleScaleDisplayergetScaleForCursor (const IlvAbstractChartCursor *cursor) const
 Returns the scale for a cursor. More...
 
IlvAbstractChartCursorgetScrollCursor () const
 Returns the scrolling cursor. More...
 
ScrollMode getScrollMode () const
 Returns the scrolling mode. More...
 
IlDouble getScrollRatio () const
 Returns the scrolling ratio. More...
 
virtual void insertOrdinateScale (IlvAbstractScaleDisplayer *scale, IlUInt index=0)
 Inserts an ordinate scale. More...
 
IlBoolean isFastScrollEnabled () const
 Queries for the Fast Scroll mode. More...
 
IlBoolean isReDrawnWhenNotified () const
 Indicates whether an automatic redraw is performed. More...
 
void moveCursor (IlvAbstractChartCursor *cursor, IlDouble newValue, IlBoolean reDraw=IlTrue)
 Moves a cursor. More...
 
virtual void moveDisplayer (IlUInt displayerIndex, IlUInt newIndex)
 Changes the stacking order of a displayer. More...
 
IlBoolean projectHorizontally () const
 Indicates whether there is a horizontal projection of out-of-bounds data points. More...
 
IlBoolean projectVertically () const
 Indicates whether there is a vertical projection of out-of-bounds data points. More...
 
void reDrawWhenNotified (IlBoolean reDraw)
 Specifies whether an automatic redraw is performed. More...
 
IlvAbstractChartCursorremoveAbscissaCursor (IlvAbstractChartCursor *cursor, IlBoolean reDraw=IlTrue)
 Removes a cursor from the abscissa axis. More...
 
void removeAbscissaGrid (IlBoolean reDraw=IlTrue)
 Removes the grid from the abscissa axis. More...
 
virtual void removeAbscissaScale ()
 Removes the abscissa scale. More...
 
virtual IlBoolean removeDisplayer (IlUInt displayerIndex)
 Removes a displayer. More...
 
virtual void removeDisplayers ()
 Removes all displayers.
 
IlvAbstractChartCursorremoveOrdinateCursor (IlvAbstractChartCursor *cursor, IlUInt index=0, IlBoolean reDraw=IlTrue)
 Removes a cursor from an ordinate axis. More...
 
void removeOrdinateGrid (IlUInt index=0, IlBoolean reDraw=IlTrue)
 Removes the grid from an ordinate axis. More...
 
virtual void removeOrdinateGrids ()
 Removes all the ordinate grids. More...
 
virtual void removeOrdinateScale (IlUInt index)
 Removes an ordinate scale. More...
 
virtual void removeOrdinateScales ()
 Removes all the ordinate scales. More...
 
virtual IlBoolean replaceDisplayer (IlvAbstractChartDisplayer *oldDisplayer, IlvAbstractChartDisplayer *newDisplayer, IlBoolean copyPalettes=IlFalse)
 Replaces one displayer by another. More...
 
virtual void setAbscissaGrid (IlvAbstractGridDisplayer *grid)
 Sets the abscissa grid. More...
 
virtual void setAbscissaScale (IlvSingleScaleDisplayer *scale)
 Sets the abscissa scale. More...
 
void setAxisCrossing (IlInt index, IlDouble val)
 Specifies the crossing between coordinate axes at a fixed value. More...
 
void setAxisCrossing (IlInt index, IlvAxisCrossing *)
 Specifies the crossing between coordinate axes. More...
 
void setCursorVisible (IlvAbstractChartCursor *cursor, IlBoolean visible)
 Shows or hides a cursor. More...
 
virtual void setData (IlvAbstractChartData *data)
 Sets the chart data object that manages the data sets displayed by the current object. More...
 
void setDrawOrder (IlvDrawOrder drawOrder)
 Sets the drawing order for all the scales and grids defined. More...
 
virtual void setLayout (IlvChartLayout *layout)
 Sets the chart layout object. More...
 
void setLegend (IlvChartLegend *legend)
 Sets the legend. More...
 
virtual void setOrdinateGrid (IlUInt index, IlvAbstractGridDisplayer *grid)
 Adds or replaces an ordinate grid. More...
 
virtual void setOrdinateScale (IlUInt index, IlvAbstractScaleDisplayer *scale)
 Adds or replaces an ordinate scale. More...
 
void setProjectedPointsPalette (IlvPalette *palette)
 Sets the palette used to display the out-of-bounds data points that are projected. More...
 
void setProjectHorizontally (IlBoolean projectHorizontally)
 Specifies whether there is a horizontal projection of out-of-bounds data points. More...
 
virtual IlBoolean setProjector (IlvAbstractProjector *projector)
 Sets the projector. More...
 
void setProjectVertically (IlBoolean projectVertically)
 Specifies whether there is a vertical projection of out-of-bounds data points. More...
 
void setScrollMode (ScrollMode mode, IlBoolean createCursor=IlFalse)
 Sets the scrolling mode. More...
 
void setScrollRatio (IlDouble ratio)
 Sets the scrolling ratio. More...
 
void stackScales (IlUInt count, const IlvSingleScaleDisplayer *const *scales, IlDouble offsetRatio)
 Stack several ordinate scales. More...
 
virtual void translateCharts (IlDouble deltaAbscissa, IlDouble deltaOrdinate, IlUInt ordinateAxisIndex=0, IlBoolean redraw=IlTrue, IlBoolean clipToAutoRange=IlTrue)
 Translates the graphical representations of data. More...
 
virtual void update ()
 Updates the current object. More...
 
void updateAndReDraw ()
 Updates and redraws the current object. More...
 
IlBoolean zoomCharts (const IlvCoordInterval &abscissaRange, const IlvCoordInterval &ordinateRange, IlUInt ordinateAxisIndex=0, IlBoolean redraw=IlTrue, IlBoolean clipToAutoRange=IlTrue)
 Zooms the graphical representations of data. More...
 
virtual IlBoolean zoomCharts (const IlvCoordInterval &abscissaRange, IlBoolean redraw=IlTrue, IlBoolean clipToAutoRange=IlTrue)
 Zooms the graphical representations of data on the abscissa axis. More...
 
virtual IlBoolean zoomCharts (const IlvCoordInterval &ordinateRange, IlUInt ordinateAxisIndex, IlBoolean redraw=IlTrue, IlBoolean clipToAutoRange=IlTrue)
 Zooms the graphical representations of data on an ordinate axis. More...
 

Friends

class IlvAbscissaAxisElement
 
class IlvAxisElement
 

Detailed Description

Base class for graphic objects displaying charts.

Library: ilvcharts

An instance of IlvChartGraphic makes it possible to display a chart. A chart can display a chart data object (an instance of IlvAbstractChartData), that is responsible to handle as many data sets (instances of IlvChartDataSet) that are needed. Each data set can have several graphical representations that are managed by instances of IlvAbstractChartDisplayer.

The way the data is projected to the screen is handled by a projector, which is an object of the IlvAbstractProjector type.

The chart can have one scale to represent the abscissa coordinate, and several scales (instance of IlvAbstractScaleDisplayer) for different ordinate coordinate systems. Specific information is stored for each coordinate that is represented by a different scale by the means of IlvCoordinateInfo objects.

The location and sizes of the different areas maintained by a chart graphic (where the actual data is represented, where the scales should be displayed, and so on) is maintained by a chart layout object, which is an instance of the class IlvChartLayout.

A chart graphic is able to automatically manage the scrolling of the charts when new data come in.

See also
IlvAbstractChartData, IlvChartDataSet, IlvAbstractChartDisplayer, IlvAbstractProjector, IlvAbstractScaleDisplayer, IlvCoordinateInfo, IlvChartLayout.

Member Enumeration Documentation

◆ FillMode

Available chart fill modes.

This enumeration type indicates which areas are filled within the bounding box of the chart.

Enumerator
FillNone 

No areas within the chart are filled.

FillDataArea 

The data display area is filled.

(See the IlvChartLayout class for more details about the different areas defined within the bounding box of a chart).

FillGraphArea 

The graph area is filled.

(See the IlvChartLayout class for more details about the different areas defined within the bounding box of a chart).

FillDataAndGraphArea 

The data display area and the graph area are filled.

(See the IlvChartLayout class for more details about the different areas defined within the bounding box of a chart).

◆ ScrollMode

Available scrolling modes.

This enumeration type indicates what kind of scrolling is wanted when new data come to the data sets.

Enumerator
IlvScrollModeStop 

Enumeration value indicating that a stop scroll mode is applied.

The chart does not scroll. When new data come in, the chart is refreshed only if those data points have a visual impact.

IlvScrollModeShift 

Enumeration value indicating that a shift scroll mode is applied.

The chart is updated by simply adding the new data point. If that data point is outside the visible area, then the chart scrolls along the abscissa axis, in the direction of the decreasing values, and is updated afterwards. The chart scrolls by a number of scroll ratios that are necessary to be able to draw the data point in the visible area.

IlvScrollModeCycle 

Enumeration value indicating that a cyclic scroll mode is applied.

If the chart needs to scroll (see the description of when this occurs above), the new data point is displayed in the area where the minimum values are displayed, thus erasing these values as the scrolling goes on. The chart scrolls by a number of scroll ratios that are necessary to be able to draw the data point in the visible area.

Constructor & Destructor Documentation

◆ IlvChartGraphic()

IlvChartGraphic::IlvChartGraphic ( IlvDisplay display,
const IlvRect bbox,
IlvPalette palette = 0 
)

Constructor.

Initializes a new IlvChartGraphic object. In its initial state, this new object is connected to an empty instance of IlvMemoryChartData. It has a default layout (instance of IlvChartLayout), no legend, no scales and no displayers.

Parameters
displayThe display connection that will handle the drawing of the current object.
bboxThe bounding box of the current object.
paletteThe palette used by the current object.

◆ ~IlvChartGraphic()

virtual IlvChartGraphic::~IlvChartGraphic ( )
virtual

Destructor.

The destructor destroys the displayers that display the graphical representations of data. Then it releases the chart data object that is stored in this object (by calling its IlvAbstractChartData::unLock method), then destroys the layout that was used.
Finally, the projector and the scales are destroyed.
Note that the destructor will not destroy the legend, if there was one.

Member Function Documentation

◆ addAbscissaCursor()

IlvAbstractChartCursor* IlvChartGraphic::addAbscissaCursor ( IlDouble  value,
IlvPalette palette = 0,
IlBoolean  reDraw = IlTrue 
)

Adds a cursor on the abscissa axis.

Cursors that make it possible to focus on precise abscissa values can be added to a chart graphic, using this method.

Parameters
valueThe abscissa value where the cursor must be located.
paletteThe palette that this cursor must use. If this parameter is omitted or set to 0, the palette that this cursor will be using is the one of the abscissa scale.
reDrawIf set to IlFalse, the display will not be immediately refreshed.
Returns
A pointer to the newly created cursor object.

◆ addAbscissaGrid()

IlvAbstractGridDisplayer* IlvChartGraphic::addAbscissaGrid ( IlvPalette majorPalette = 0,
IlvPalette minorPalette = 0,
IlBoolean  reDraw = IlTrue 
)

Adds a grid on the abscissa axis.

Parameters
majorPaletteThe palette that will be used to draw the major lines of the grid. If this parameter is omitted or set to 0, the palette that will be used is the palette of the abscissa scale.
minorPaletteThe palette that will be used to draw the minor lines of the grid. If this parameter is omitted or set to 0, the palette that will be used is the palette of the abscissa scale.
reDrawIf set to IlFalse, the display will not be immediately refreshed.
Returns
A pointer to the newly created grid object.

◆ addDisplayer() [1/2]

virtual IlBoolean IlvChartGraphic::addDisplayer ( IlvAbstractChartDisplayer displayer,
IlUInt  count,
IlvChartDataSet *const *  dataSets,
IlvCoordinateInfo ordinateInfo = 0,
IlUInt  position = IlvLastPositionIndex 
)
virtual

Adds a displayer connected to several data sets.

A displayer is used to render one or several data sets that are part of the chart data object used by the current chart graphic. A chart graphic can be rendered using multiple displayers.

Parameters
displayerThe displayer to add to this chart graphic.
countThe number of data sets that this displayer must render.
dataSetsAn array of count pointers to the data sets that must be displayed by displayer. Note that all the indicated data sets must belong to the chart data object used by the current chart graphic.
ordinateInfoThe coordinate information object associated with the ordinate scale that this displayer must follow. If this parameter is omitted or set to 0, the displayer will be connected to the main (the first) ordinate scale. If this parameter is not 0, then ordinateInfo must be one of the coordinate information objects associated with an ordinate scale of the chart graphic.
positionThe index of the new displayer. If this parameter is not specified, or set to IlvLastPositionIndex, this displayer becomes the last of that chart graphic. A value of 0 indicates that the displayer becomes the bottom-most displayer (that is, the first to be displayed).
Returns
A Boolean value that indicates, if IlTrue, that the new displayer was successfully added. If this method returns IlFalse, then there was a problem, and an error message was produced.

Reimplemented in IlvRadarChart.

◆ addDisplayer() [2/2]

IlBoolean IlvChartGraphic::addDisplayer ( IlvAbstractChartDisplayer displayer,
IlvChartDataSet dataSet = 0,
IlvCoordinateInfo ordinateInfo = 0,
IlUInt  position = IlvLastPositionIndex 
)

Adds a displayer connected to one data set.

A displayer is used to render one or several data sets that are part of the chart data object used by the current chart graphic. A chart graphic can be rendered using multiple displayers.

Parameters
displayerThe displayer to add to this chart graphic.
dataSetThe data set that is displayed by displayer. If this parameter is omitted or set to 0, the displayer will not be associated with any data set. If this parameter is not 0, then dataSet must be one of the data sets stored in the chart data object used by the current chart graphic.
ordinateInfoThe coordinate information object associated with the ordinate scale that this displayer must follow. If this parameter is omitted or set to 0, the displayer will be connected to the main (the first) ordinate scale. If this parameter is not 0, then ordinateInfo must be one of the coordinate information objects associated with an ordinate scale of the chart graphic.
positionThe index of the new displayer. If this parameter is not specified or set to IlvLastPositionIndex, this displayer becomes the last of this chart graphic. A value of 0 indicates that the displayer becomes the bottom-most displayer (that is, the first to be displayed).
Returns
A Boolean value that indicates, if IlTrue, that the new displayer was successfully added. If this method returns IlFalse, then there has been a problem, and an error message was produced.

◆ addOrdinateCursor()

IlvAbstractChartCursor* IlvChartGraphic::addOrdinateCursor ( IlDouble  value,
IlvPalette palette = 0,
IlUInt  index = 0,
IlBoolean  reDraw = IlTrue 
)

Adds a cursor on an ordinate axis.

Cursors that make it possible to focus on precise ordinate values can be added on a specific ordinate axis, using this method.

Parameters
valueThe ordinate value where the cursor must be located.
indexThe index of the ordinate axis that is referred to.
paletteThe palette that this cursor must use. If this parameter is omitted or set to 0, the palette that this cursor will be using is the one of the indicated ordinate scale.
reDrawIf set to IlFalse, the display will not be immediately refreshed.
Returns
A pointer to the newly created cursor object.

◆ addOrdinateGrid()

IlvAbstractGridDisplayer* IlvChartGraphic::addOrdinateGrid ( IlvPalette majorPalette = 0,
IlvPalette minorPalette = 0,
IlUInt  index = 0,
IlBoolean  reDraw = IlTrue 
)

Adds a grid to an ordinate axis.

Parameters
indexThe index of the ordinate axis that is referred to.
majorPaletteThe palette that will be used to draw the major lines of the grid. If this parameter is omitted or set to 0, the palette that will be used is the palette of the indicated ordinate scale.
minorPaletteThe palette that will be used to draw the minor lines of the grid. If this parameter is omitted or set to 0, the palette that will be used is the palette of the indicated ordinate scale.
reDrawIf set to IlFalse, the display will not be immediately refreshed.
Returns
A pointer to the newly created grid object.

◆ addOrdinateScale()

void IlvChartGraphic::addOrdinateScale ( IlvAbstractScaleDisplayer scale)

Adds an ordinate scale.

This method adds a ordinate scale at the end of the list of ordinate scales. It is equivalent to insertOrdinateScale(scale, IlvLastPositionIndex).

Parameters
scaleThe scale to be added.

◆ dataPointsAdded()

virtual void IlvChartGraphic::dataPointsAdded ( const IlvChartDataSet ds,
IlUInt  iMin,
IlUInt  iMax,
IlBoolean  reDraw = IlTrue 
)
virtual

Performs the automatic update when new data are added.

Called whenever a value has been added to a data set referenced by the chart. It performs the update of the chart, depending on the scroll mode. In order to disable the notification, you can:

Parameters
dsThe data set that has been modified.
iMinThe index in the data set of the first added point.
iMaxThe index in the data set of the last added point.
reDrawA Boolean value indicating whether a reDraw operation must be performed.

◆ dataPointsToDisplay()

IlBoolean IlvChartGraphic::dataPointsToDisplay ( IlUInt  count,
const IlvDoublePoint dataPoints,
IlvPoint points,
const IlvCoordinateInfo ordinateInfo,
IlBoolean  shiftOfCycleLength,
const IlvTransformer t = 0 
) const

Converts data points to screen coordinates.

Parameters
countThe number of data points to be projected.
dataPointsThe array of count data points.
pointsThe output array where the projected points will be stored. This must be a pointer to at least count IlvPoint objects. These points are transformed by t.
ordinateInfoA pointer to the coordinate information object of the ordinate axis that must be used for the projection.
shiftOfCycleLengthA Boolean value indicating, if IlTrue, that the data points must be shifted by the length of the cycle.
tThe transformer that is applied to chart graphic.
Returns
A Boolean value that indicates, when IlTrue, that the operation was successful. If not, the returned value is IlFalse.

◆ displayToDataPoints()

IlBoolean IlvChartGraphic::displayToDataPoints ( IlUInt  count,
const IlvPoint points,
IlvDoublePoint dataPoints,
const IlvCoordinateInfo ordinateInfo,
IlBoolean  shiftOfCycleLength,
const IlvTransformer t = 0 
) const

Converts screen coordinates to data points.

This method lets you convert screen coordinates to data points.

Parameters
countThe number of data points to be projected.
pointsThe array where the screen points are stored. These points are considered to be already transformed by t.
dataPointsThe output array where the data points will be stored. This must be a pointer to at least count IlvDoublePoint objects.
ordinateInfoA pointer to the coordinate information object of the ordinate axis that must be used for the projection.
shiftOfCycleLengthA Boolean value indicating, if IlTrue that the data points must be shifted by the length of the cycle.
tThe transformer that is applied to the chart graphic.
Returns
A Boolean value that indicates, when IlTrue, that the operation was successful. If not, the returned value is IlFalse.

◆ enableFastScroll()

void IlvChartGraphic::enableFastScroll ( IlBoolean  enable)

Enables a very efficient refresh in Shift scroll mode.

This method is meaningful only if the chart graphic is in the IlvChartGraphic::IlvScrollModeShift scroll mode.

If enabled, the Fast Scroll mode makes it possible to expect excellent performance of the chart visual update. This technique directly draws on the destination port when data points are updated. It has several limitations:

  • There must be no other graphical objects underneath the chart graphic.
  • Using displayers that display filled polygonal representations, such as polygon and stair displayers, should be avoided since an additional vertical line is drawn for each polygonal representation of an added data point.
Parameters
enableIf set to IlTrue, this parameter enables the Fast Scroll mode of the chart. The mode is disabled if enable is set to IlFalse.

◆ getAbscissaGrid()

IlvAbstractGridDisplayer* IlvChartGraphic::getAbscissaGrid ( ) const

Returns the abscissa grid.

Returns
The abscissa grid used by this object.

◆ getAbscissaInfo()

IlvCoordinateInfo* IlvChartGraphic::getAbscissaInfo ( ) const

Returns the coordinate information object of the abscissa.

Returns
The coordinate information of the abscissa.

◆ getAbscissaScale()

IlvSingleScaleDisplayer* IlvChartGraphic::getAbscissaScale ( ) const

Returns the abscissa scale.

Returns
The abscissa scale used by this object.

◆ getAxisCrossing()

const IlvAxisCrossing* IlvChartGraphic::getAxisCrossing ( IlInt  index) const

Gets crossing between coordinate axes.

See also
setAxisCrossing

◆ getCycleCursor()

IlvAbstractChartCursor* IlvChartGraphic::getCycleCursor ( ) const

Returns the cycle cursor.

This method is meaningful only if the method setScrollMode(IlvChartGraphic::IlvScrollModeCycle, IlTrue) has been called.

Returns
The cycle cursor.
See also
setScrollMode.

◆ getData()

IlvAbstractChartData* IlvChartGraphic::getData ( ) const

Returns the chart data object that manages the data sets displayed by the current object.

Returns
The chart data object used by this object.

◆ getDataDisplayArea() [1/2]

void IlvChartGraphic::getDataDisplayArea ( const IlvCoordinateInfo coordInfo,
IlvRect dataDisplayArea,
const IlvTransformer t = 0 
) const

Returns the rectangle where the data values of a coordinate are projected.

Parameters
coordInfoThe considered coordinate.
dataDisplayAreaThe returned rectangle.
tThe transformer applied to the returned rectangle.

◆ getDataDisplayArea() [2/2]

void IlvChartGraphic::getDataDisplayArea ( IlvRect dataDisplayArea,
const IlvTransformer t = 0 
) const

Returns the data display area of the chart.

This call is equivalent to getLayout()->getDataDisplayArea(dataDisplayArea, t). It returns the global rectangle where data are projected and displayed.

Parameters
dataDisplayAreaThe returned chart data display area.
tThe transformer applied to the returned data display area.
See also
IlvChartLayout.

◆ getDataSet()

IlvChartDataSet* IlvChartGraphic::getDataSet ( IlUInt  dataSetIndex) const

Returns a given data set.

This call is equivalent to getData()->getDataSet(dataSetIndex).

Parameters
dataSetIndexThe index of the data set that is requested.
Returns
A pointer to the indicated data set, or 0 if the index is invalid.

◆ getDataSetIndex()

IlUInt IlvChartGraphic::getDataSetIndex ( const IlvChartDataSet dataSet) const

Returns the index of a given data set.

This call is equivalent to getData()->getDataSetIndex(dataSet).

Parameters
dataSetA pointer to the data set for which the index is requested.
Returns
The index of this data set in the chart data object used by the current object, or the value IlvBadIndex if the data set could not be located.

◆ getDataSets()

IlvChartDataSet* const* IlvChartGraphic::getDataSets ( IlUInt dataSetCount) const

Returns the data sets.

This call is equivalent to getData()->getDataSets(dataSetCount).

Note
The array is stored in an IlPoolOf(Pointer) and should not be deleted or modified.
Parameters
dataSetCountThe number of returned data sets.
Returns
An array of pointers to the data sets of the chart data object used by the current object.

◆ getDataSetsCount()

IlUInt IlvChartGraphic::getDataSetsCount ( ) const

Returns the number of data sets.

This call is equivalent to getData()->getDataSetsCount().

Returns
The number of data sets of the chart data object used by the current object.

◆ getDisplayer()

IlvAbstractChartDisplayer* IlvChartGraphic::getDisplayer ( IlUInt  displayerIndex) const

Gets one specific displayer by index.

Parameters
displayerIndexThe index of the displayer to be retrieved.
Returns
A pointer to the displayer at the indicated index if this index is valid and 0 otherwise.

◆ getDisplayerByName()

IlvAbstractChartDisplayer* IlvChartGraphic::getDisplayerByName ( const char *  name) const

Gets one specific displayer by name.

Parameters
nameThe name of the displayer to be retrieved.
Returns
A pointer to the displayer that has a name identical to name. If no such displayer exists, this method returns 0.

◆ getDisplayerIndex()

IlUInt IlvChartGraphic::getDisplayerIndex ( const IlvAbstractChartDisplayer displayer) const

Returns the index of a displayer.

Parameters
displayerThe displayer for which the user wants to retrieve the index.
Returns
The index of the displayer displayer if this displayer is used by the current object, or the value IlvBadIndex if it could not be located.

◆ getDisplayersCount()

IlUInt IlvChartGraphic::getDisplayersCount ( ) const

Returns the number of displayers.

Returns
The number of displayers used by this chart graphic to display graphical representations of data.

◆ getDisplayItem()

IlUInt IlvChartGraphic::getDisplayItem ( IlvAbstractChartDisplayer *&  displayer,
IlvChartDataSet *&  dataSet,
const IlvPoint viewPoint,
const IlvTransformer t 
) const

Returns the data point whose representation on the chart includes a given screen point of the chart graphic.

This method finds which data point a screen point corresponds to, taking into account the geometry of the displayer (bar, line, and so on).

Parameters
displayerA reference to a pointer to the displayer that we want to perform the test against. If this parameter is set to 0, then all displayers will be tested, and the reference will be set to a pointer to the closest displayer to viewPoint.
dataSetA reference to a pointer to the data set that we want to perform the test against. If this parameter is set to 0, then all data sets displayed by the displayer displayer will be tested (or all data sets displayed by all displayers, if displayer was 0), and the reference will be set to the data set, displayed by the returned displayer, which contains the closest data point to viewPoint.
viewPointThe reference point, given in the coordinates system of the displayed chart graphic.
tThe transformer that is applied to the chart graphic.
Returns
The index of the data point corresponding to the screen point which is the closest to the reference point, or the value IlvBadIndex if no data point could be found.

◆ getDrawingArea()

IlBoolean IlvChartGraphic::getDrawingArea ( IlvRect drawingArea,
const IlvTransformer t = 0 
) const

Returns the drawing area of the chart.

This call is equivalent to getLayout()->getDrawingArea(drawingArea, t).

Parameters
drawingAreaThe returned chart drawing area.
tThe transformer to be used to compute the drawing area.
Returns
Always IlTrue.
See also
IlvChartLayout.

◆ getGraphArea()

void IlvChartGraphic::getGraphArea ( IlvRect graphArea,
const IlvTransformer t = 0 
) const

Returns the graph area of the chart.

This call is equivalent to getLayout()->getGraphArea(graphArea, t).

Parameters
graphAreaThe returned chart graph area.
tThe transformer applied to the returned graph area.
See also
IlvChartLayout.

◆ getLayout()

IlvChartLayout* IlvChartGraphic::getLayout ( ) const

Returns the chart layout object.

Returns
The chart layout object used by this chart graphic.

◆ getLegend()

IlvChartLegend* IlvChartGraphic::getLegend ( ) const

Returns the legend.

Returns
The legend used by this object.

◆ getNearestPoint()

IlUInt IlvChartGraphic::getNearestPoint ( IlvAbstractChartDisplayer *&  displayer,
IlvChartDataSet *&  dataSet,
const IlvPoint viewPoint,
IlvDim  distance,
IlvPoint point,
const IlvTransformer t 
) const

Returns the nearest data point from a screen point of the chart graphic.

This method finds the closest displayer and data set provided a point in the display coordinates system (that is, in the coordinates system of the chart graphic).

Parameters
displayerA reference to a pointer to the displayer that we want to perform the test against. If this parameter is set to 0, then all displayers will be tested, and the reference will be set to a pointer to the closest displayer to viewPoint.
dataSetA reference to a pointer to the data set that we want to perform the test against. If this parameter is set to 0, then all data sets displayed by the displayer displayer will be tested (or all data sets displayed by all displayers, if displayer was 0), and the reference will be set to the data set, displayed by the returned displayer, which contains the closest data point to viewPoint.
viewPointThe reference point, given in the coordinates system of the displayed chart graphic.
distanceThe threshold value over which no data point will be considered. Setting this parameter to 0 will ensure there will always be a closest point.
pointA reference to an IlvPoint that will be set to the exact coordinates of the point on the display that was considered the closest.
tThe transformer that is applied to the chart graphic.
Returns
The index of the data point corresponding to the screen point which is the closest to the reference point, or the value IlvBadIndex if no data point could be found.

◆ getOrdinateGrid()

IlvAbstractGridDisplayer* IlvChartGraphic::getOrdinateGrid ( IlUInt  index = 0) const

Gets an ordinate grid by index.

Parameters
indexThe index of the ordinate grid that is queried.
Returns
The index th ordinate grid of this object, or 0 if index is invalid.

◆ getOrdinateGridIndex()

IlUInt IlvChartGraphic::getOrdinateGridIndex ( const IlvAbstractGridDisplayer grid) const

Returns the index of an ordinate grid.

Parameters
gridThe ordinate grid for which we want to query the index.
Returns
The index of the indicated grid, or the value IlvBadIndex if it could not be located.

◆ getOrdinateInfo()

IlvCoordinateInfo* IlvChartGraphic::getOrdinateInfo ( IlUInt  index = 0) const

Returns the coordinate information object of an ordinate axis.

Parameters
indexThe index of the ordinate axis for which the information is queried.
Returns
The coordinate information of the index th ordinate axis, or 0 if index is not a valid parameter.

◆ getOrdinateInfoCount()

IlUInt IlvChartGraphic::getOrdinateInfoCount ( ) const

Returns the number of ordinate coordinate information objects.

Returns
The number of ordinate coordinate information objects.

◆ getOrdinateInfoIndex()

IlUInt IlvChartGraphic::getOrdinateInfoIndex ( const IlvCoordinateInfo info) const

Returns the index of an ordinate coordinate information object.

Parameters
infoThe ordinate coordinate information object for which the index is queried.
Returns
The index of that coordinate information object, or the value IlvBadIndex indicating that info is not known as a coordinate information object for an ordinate axis of this chart graphic.

◆ getOrdinateScale()

IlvAbstractScaleDisplayer* IlvChartGraphic::getOrdinateScale ( IlUInt  index = 0) const

Gets an ordinate scale by index.

Parameters
indexThe index of the ordinate scale that is queried.
Returns
The index th ordinate scale of this object, or 0 if index is invalid.

◆ getOrdinateScaleIndex()

IlUInt IlvChartGraphic::getOrdinateScaleIndex ( const IlvAbstractScaleDisplayer scale) const

Returns the index of an ordinate scale.

Parameters
scaleThe ordinate scale for which we want to query the index.
Returns
The index of the indicated scale, or the value IlvBadIndex if it could not be located.

◆ getOrdinateScalesCount()

IlUInt IlvChartGraphic::getOrdinateScalesCount ( ) const

Returns the number of ordinate scales.

Returns
The number of ordinate scales.

◆ getOrdinateSingleScale()

IlvSingleScaleDisplayer* IlvChartGraphic::getOrdinateSingleScale ( IlUInt  index = 0) const

Gets a single ordinate scale by index.

This method is similar to IlvChartGraphic::getOrdinateScale, except that it returns only instances of subclasses of IlvSingleScaleDisplayer.

Parameters
indexThe index of the ordinate scale that is queried.
Returns
The index th ordinate scale of this object, or 0 if index is invalid or if the scale is not an instance of a subclass of IlvSingleScaleDisplayer.

◆ getProjectedPointsPalette()

IlvPalette* IlvChartGraphic::getProjectedPointsPalette ( ) const

Returns the palette used to display the out-of-bounds data points that are projected.

Returns
A pointer to the palette object used to display the out of bounds data points that are projected on the limits of the data display area.
Note
This palette is used only for projected data points, and some data points may be projected only if the IlvChartGraphic::projectHorizontally() or IlvChartGraphic::projectVertically() methods return IlTrue. (See these methods for more details).

◆ getProjector()

IlvAbstractProjector* IlvChartGraphic::getProjector ( ) const

Returns the projector.

Returns
The projector used by this chart graphic.

◆ getProjectorArea() [1/2]

void IlvChartGraphic::getProjectorArea ( const IlvAbstractScaleDisplayer scale,
IlvProjectorArea &  projArea,
const IlvTransformer t = 0 
) const

Returns the description of the projecting area associated with a scale.

Parameters
scaleThe considered scale.
projAreaThe returned projecting area.
tThe transformer applied to the returned area.

◆ getProjectorArea() [2/2]

void IlvChartGraphic::getProjectorArea ( const IlvCoordinateInfo coordInfo,
IlvProjectorArea &  projArea,
const IlvTransformer t 
) const

Returns the description of the projecting area associated with a coordinate.

Parameters
coordInfoThe considered coordinate.
projAreaThe returned projecting area.
tThe transformer applied to the returned area.

◆ getScaleForCursor()

IlvSingleScaleDisplayer* IlvChartGraphic::getScaleForCursor ( const IlvAbstractChartCursor cursor) const

Returns the scale for a cursor.

Parameters
cursorThe cursor for which we query the scale.
Returns
A pointer to the scale object to which the cursor cursor is attached, or 0 if the cursor cursor could not be located.

◆ getScrollCursor()

IlvAbstractChartCursor* IlvChartGraphic::getScrollCursor ( ) const

Returns the scrolling cursor.

This method is meaningful only if the method setScrollMode(IlvChartGraphic::IlvScrollModeShift, IlTrue) or setScrollMode(IlvChartGraphic::IlvScrollModeCycle, IlTrue) has been called.

Returns
The scrolling cursor.
See also
setScrollMode.

◆ getScrollMode()

ScrollMode IlvChartGraphic::getScrollMode ( ) const

Returns the scrolling mode.

Returns
The current scrolling mode for this chart graphic.

◆ getScrollRatio()

IlDouble IlvChartGraphic::getScrollRatio ( ) const

Returns the scrolling ratio.

Returns
The unit ratio that is used to scroll the chart in the automatic scroll mode.
Note
This ratio is defined relative to the part of the abscissa range that is visible. Its value must be between 0 and 1.

◆ insertOrdinateScale()

virtual void IlvChartGraphic::insertOrdinateScale ( IlvAbstractScaleDisplayer scale,
IlUInt  index = 0 
)
virtual

Inserts an ordinate scale.

This method adds an ordinate scale at the indicated index to the list of ordinate scales.

Parameters
scaleThe scale to be added.
indexThe position in the ordinate scales list where this scale must be added. A value of 0 indicates that this scale should become the first of all the scales in the list. A value of IlvLastPositionIndex indicates that this scale should become the last of all the scales in the list.

◆ isFastScrollEnabled()

IlBoolean IlvChartGraphic::isFastScrollEnabled ( ) const

Queries for the Fast Scroll mode.

Returns
The Boolean value that indicates, if set to IlTrue, that the chart graphic is in Fast Scroll mode.
See also
enableFastScroll.

◆ isReDrawnWhenNotified()

IlBoolean IlvChartGraphic::isReDrawnWhenNotified ( ) const

Indicates whether an automatic redraw is performed.

When the chart graphic data is modified, there can be an automatic refresh of the chart. This is very handy, but sometimes it is not the most efficient way to update a chart graphic.

Returns
IlTrue if changes to the chart data are immediately transmitted to the screen and IlFalse otherwise. When IlFalse is returned, no redraw is performed when the chart data changes.

◆ moveCursor()

void IlvChartGraphic::moveCursor ( IlvAbstractChartCursor cursor,
IlDouble  newValue,
IlBoolean  reDraw = IlTrue 
)

Moves a cursor.

Parameters
cursorThe cursor that must be moved.
newValueThe new value at which the cursor must be located (on the associated scale).
reDrawIf set to IlFalse, the display will not be immediately refreshed.

◆ moveDisplayer()

virtual void IlvChartGraphic::moveDisplayer ( IlUInt  displayerIndex,
IlUInt  newIndex 
)
virtual

Changes the stacking order of a displayer.

Parameters
displayerIndexThe index of the displayer to be reordered.
newIndexThe new index that this displayer will take.

◆ projectHorizontally()

IlBoolean IlvChartGraphic::projectHorizontally ( ) const

Indicates whether there is a horizontal projection of out-of-bounds data points.

Returns
IlTrue if the data points that are out-of-bounds should be projected horizontally on the limits of the data display area and IlFalse otherwise.
See also
setProjectHorizontally, projectVertically.

◆ projectVertically()

IlBoolean IlvChartGraphic::projectVertically ( ) const

Indicates whether there is a vertical projection of out-of-bounds data points.

Returns
IlTrue if the data points that are out-of-bounds should be projected vertically on the limits of the data display area and IlFalse otherwise.
See also
setProjectVertically, projectHorizontally.

◆ reDrawWhenNotified()

void IlvChartGraphic::reDrawWhenNotified ( IlBoolean  reDraw)

Specifies whether an automatic redraw is performed.

Parameters
reDrawThe new value of the Boolean indicating whether an automatic redraw is performed. If set to IlTrue, the chart graphic automatically updates itself when the data is modified. If set to IlFalse, the refresh must be performed manually.
See also
isReDrawnWhenNotified.

◆ removeAbscissaCursor()

IlvAbstractChartCursor* IlvChartGraphic::removeAbscissaCursor ( IlvAbstractChartCursor cursor,
IlBoolean  reDraw = IlTrue 
)

Removes a cursor from the abscissa axis.

The cursor is not destroyed so that it can be used elsewhere after this call (or destroyed if necessary).

Parameters
cursorThe cursor to be removed.
reDrawIf set to IlFalse, the display will not be immediately refreshed.
Returns
A pointer to the indicated cursor, or 0 if this cursor does not belong to the abscissa scale.

◆ removeAbscissaGrid()

void IlvChartGraphic::removeAbscissaGrid ( IlBoolean  reDraw = IlTrue)

Removes the grid from the abscissa axis.

The removed grid is destroyed.

Parameters
reDrawIf set to IlFalse, the display will not be immediately refreshed.

◆ removeAbscissaScale()

virtual void IlvChartGraphic::removeAbscissaScale ( )
virtual

Removes the abscissa scale.

The previous abscissa scale is destroyed. This method is equivalent to setAbscissaScale(0).

See also
setAbscissaScale.

◆ removeDisplayer()

virtual IlBoolean IlvChartGraphic::removeDisplayer ( IlUInt  displayerIndex)
virtual

Removes a displayer.

The removed displayer is deleted.

Parameters
displayerIndexThe index of the displayer to be removed.
Returns
IlTrue if the removal was performed and IlFalse if displayerIndex is an invalid index.

◆ removeOrdinateCursor()

IlvAbstractChartCursor* IlvChartGraphic::removeOrdinateCursor ( IlvAbstractChartCursor cursor,
IlUInt  index = 0,
IlBoolean  reDraw = IlTrue 
)

Removes a cursor from an ordinate axis.

The cursor is not destroyed so that it can be used elsewhere after this call (or destroyed if necessary).

Parameters
cursorThe cursor to be removed.
indexThe index of the ordinate axis that is referred to.
reDrawIf set to IlFalse, the display will not be immediately refreshed.
Returns
A pointer to the indicated cursor, or 0 if that cursor does not belong to the indicated ordinate scale.

◆ removeOrdinateGrid()

void IlvChartGraphic::removeOrdinateGrid ( IlUInt  index = 0,
IlBoolean  reDraw = IlTrue 
)

Removes the grid from an ordinate axis.

The removed grid is destroyed.

Parameters
indexThe index of the ordinate axis that is referred to.
reDrawIf set to IlFalse, the display will not be immediately refreshed.

◆ removeOrdinateGrids()

virtual void IlvChartGraphic::removeOrdinateGrids ( )
virtual

Removes all the ordinate grids.

All the ordinate grids stored by this chart graphic are destroyed.

◆ removeOrdinateScale()

virtual void IlvChartGraphic::removeOrdinateScale ( IlUInt  index)
virtual

Removes an ordinate scale.

The indicated scale is destroyed, and all the following ordinate scales (in the ordinate scales list) are re-indexed.

Parameters
indexThe index of the ordinate scale to be removed.

◆ removeOrdinateScales()

virtual void IlvChartGraphic::removeOrdinateScales ( )
virtual

Removes all the ordinate scales.

All the ordinate scales stored by this chart graphic are destroyed.

◆ replaceDisplayer()

virtual IlBoolean IlvChartGraphic::replaceDisplayer ( IlvAbstractChartDisplayer oldDisplayer,
IlvAbstractChartDisplayer newDisplayer,
IlBoolean  copyPalettes = IlFalse 
)
virtual

Replaces one displayer by another.

The displayer newDisplayer replaces the displayer oldDisplayer at the same index. The displayer oldDisplayer is deleted.

Parameters
oldDisplayerThe displayer to replace.
newDisplayerThe new displayer.
copyPalettesIf this parameter is set to IlTrue, the method tries to assign the palettes of oldDisplayer to newDisplayer.
Returns
A Boolean value that indicates, if IlTrue, that the old displayer was successfully replaced by the new one. If this method returns IlFalse, the replacement could not take place.

◆ setAbscissaGrid()

virtual void IlvChartGraphic::setAbscissaGrid ( IlvAbstractGridDisplayer grid)
virtual

Sets the abscissa grid.

The previous grid object is destroyed. If grid is set to 0, the chart graphic will not have an abscissa grid any more.

Parameters
gridThe new grid to be used for the abscissa axis.
See also
removeAbscissaGrid.

◆ setAbscissaScale()

virtual void IlvChartGraphic::setAbscissaScale ( IlvSingleScaleDisplayer scale)
virtual

Sets the abscissa scale.

The previous scale object is destroyed. If scale is set to 0, the chart graphic will not have an abscissa scale any more.

Parameters
scaleThe new scale to be used for the abscissa axis.
See also
removeAbscissaScale.

◆ setAxisCrossing() [1/2]

void IlvChartGraphic::setAxisCrossing ( IlInt  index,
IlDouble  val 
)

Specifies the crossing between coordinate axes at a fixed value.

This crossing is taken into account by displayers such as the bar chart displayer, and so on.

◆ setAxisCrossing() [2/2]

void IlvChartGraphic::setAxisCrossing ( IlInt  index,
IlvAxisCrossing  
)

Specifies the crossing between coordinate axes.

This crossing is taken into account by displayers such as the bar chart displayer, and so on.

The object takes ownership of the IlvAxisCrossing passed as argument.

◆ setCursorVisible()

void IlvChartGraphic::setCursorVisible ( IlvAbstractChartCursor cursor,
IlBoolean  visible 
)

Shows or hides a cursor.

This method performs an automatic refresh of the invalidated areas.

Parameters
cursorThe cursor that must be shown or hidden.
visibleIf this parameter is set to IlTrue, the indicated cursor is shown in the chart graphic. The cursor is hidden if visible is set to IlFalse.

◆ setData()

virtual void IlvChartGraphic::setData ( IlvAbstractChartData data)
virtual

Sets the chart data object that manages the data sets displayed by the current object.

The new chart data object is locked, and the previous one is released. The entire chart is invalidated for an update of the display.

Parameters
dataThe new chart data object to be displayed.

◆ setDrawOrder()

void IlvChartGraphic::setDrawOrder ( IlvDrawOrder  drawOrder)

Sets the drawing order for all the scales and grids defined.

If the drawing order is set to IlvDrawAbove, the defined scales and grids will be drawn above the graphic representations of data in the chart. If the drawing order is set to IlvDrawBelow, they will be drawn below.

Parameters
drawOrderThe new drawing order.

◆ setLayout()

virtual void IlvChartGraphic::setLayout ( IlvChartLayout layout)
virtual

Sets the chart layout object.

The previous chart layout object is destroyed.

Parameters
layoutThe new chart layout object to be set for this chart graphic.

◆ setLegend()

void IlvChartGraphic::setLegend ( IlvChartLegend legend)

Sets the legend.

The previous legend is not destroyed.

Parameters
legendThe new legend object for this chart graphic.

◆ setOrdinateGrid()

virtual void IlvChartGraphic::setOrdinateGrid ( IlUInt  index,
IlvAbstractGridDisplayer grid 
)
virtual

Adds or replaces an ordinate grid.

If there is a grid at the indicated index, then this grid is destroyed.

Parameters
indexSpecifies the index.
gridThe ordinate grid to be set.

◆ setOrdinateScale()

virtual void IlvChartGraphic::setOrdinateScale ( IlUInt  index,
IlvAbstractScaleDisplayer scale 
)
virtual

Adds or replaces an ordinate scale.

If there is a scale at the indicated index, then this scale is destroyed.

Parameters
indexSpecifies the index.
scaleThe ordinate scale to be set.

◆ setProjectedPointsPalette()

void IlvChartGraphic::setProjectedPointsPalette ( IlvPalette palette)

Sets the palette used to display the out-of-bounds data points that are projected.

The previous palette is unlocked, and the new one is locked.

Parameters
paletteA pointer to the new palette object that will be used to display the out-of-bounds data points that are projected on the limits of the data display area.
Note
This palette is used only for projected data points, and some data points may be projected only if the IlvChartGraphic::projectHorizontally() or IlvChartGraphic::projectVertically() methods return IlTrue. (See these methods for more details).

◆ setProjectHorizontally()

void IlvChartGraphic::setProjectHorizontally ( IlBoolean  projectHorizontally)

Specifies whether there is a horizontal projection of out-of-bounds data points.

Parameters
projectHorizontallyThe new value of the Boolean indicating whether a horizontal projection of out-of-bounds data points is requested.
Note
If a vertical or horizontal projection is specified, the out-of-bounds data points are projected on the limits of the data display area. This feature is available for continuous data representations, such as polylines, for which the effect of the projection is to complete the parts of the polyline that are not drawn because they are outside the data display area. It is also possible to associate a specific palette to represent the projected data points (see the IlvChartGraphic::setProjectedPointsPalette() method).
Warning
The projection of out-of-bounds data points should not be used while using the automatic scroll mode, otherwise there will be a loss of efficiency.

◆ setProjector()

virtual IlBoolean IlvChartGraphic::setProjector ( IlvAbstractProjector projector)
virtual

Sets the projector.

The previous projector is unlocked, and the new projector is locked. All scales are updated with the new projector.

Parameters
projectorThe new projector that must be used by this chart graphic.
Returns
IlTrue if the setting could be performed, and IlFalse if there was a problem.

◆ setProjectVertically()

void IlvChartGraphic::setProjectVertically ( IlBoolean  projectVertically)

Specifies whether there is a vertical projection of out-of-bounds data points.

Parameters
projectVerticallyThe new value of the Boolean indicating whether a vertical projection of out-of-bounds data points is requested.
Note
If a vertical or horizontal projection is specified, the out-of-bounds data points are projected on the limits of the data display area. This feature is available for continuous data representations, such as polylines, for which the effect of the projection is to complete the parts of the polyline that are not drawn because they are outside the data display area. It is also possible to associate a specific palette to represent the projected data points (see the IlvChartGraphic::setProjectedPointsPalette() method).
Warning
The projection of out-of-bounds data points should not be used while using the automatic scroll mode, otherwise there will be a loss of efficiency.

◆ setScrollMode()

void IlvChartGraphic::setScrollMode ( ScrollMode  mode,
IlBoolean  createCursor = IlFalse 
)

Sets the scrolling mode.

If the new scrolling mode is set to IlvChartGraphic::IlvScrollModeShift or IlvChartGraphic::IlvScrollModeCycle, the user can specify that a scrolling cursor should be displayed as well by setting the parameter createCursor to IlTrue. In the case of the cycle scroll mode, a cycle cursor, which is displayed at the beginning of the cycle, is also created.

Parameters
modeThe new scrolling mode for this chart graphic.
createCursorA Boolean value indicating whether cursors are to be displayed as the chart scrolls. This is meaningful only if mode is set to IlvChartGraphic::IlvScrollModeShift or IlvChartGraphic::IlvScrollModeCycle.

◆ setScrollRatio()

void IlvChartGraphic::setScrollRatio ( IlDouble  ratio)

Sets the scrolling ratio.

Parameters
ratioThe new unit ratio that is used to scroll the chart in the automatic scroll mode.
Note
This ratio is defined relative to the part of the abscissa range that is visible. Its value must be between 0 and 1.

◆ stackScales()

void IlvChartGraphic::stackScales ( IlUInt  count,
const IlvSingleScaleDisplayer *const *  scales,
IlDouble  offsetRatio 
)

Stack several ordinate scales.

Stacks the scales stored in the array scales so that they share the same ordinate axis. The scales must be handled by the chart and must represent an ordinate coordinate.

Parameters
countThe number of scales to stack.
scalesThe scales to stack.
offsetRatioThe offset between the stacked scales, expressed as a ratio of the whole length of the ordinate axis.

◆ translateCharts()

virtual void IlvChartGraphic::translateCharts ( IlDouble  deltaAbscissa,
IlDouble  deltaOrdinate,
IlUInt  ordinateAxisIndex = 0,
IlBoolean  redraw = IlTrue,
IlBoolean  clipToAutoRange = IlTrue 
)
virtual

Translates the graphical representations of data.

This method translates the graphic representations of data within the current chart graphic object that displays them. The chart graphic object itself keeps its bounding box untouched.

Parameters
deltaAbscissaThe translation to be performed on the abscissa axis.
deltaOrdinateThe translation to be performed on the ordinate axis (the one indicated by ordinateAxisIndex).
ordinateAxisIndexThe index of the ordinate axis the ordinate translation refers to. If this parameter is omitted or set to 0 then the main (the first) ordinate axis will be considered.
redrawIf set to IlFalse, the display will not be immediately refreshed.
clipToAutoRangeIf omitted or set to IlTrue, the result of the translation may be modified to ensure that the coordinate systems (abscissa and ordinate) remain within the range of the data sets. If this parameter is set to IlFalse this checking is not performed, and the resulting display may be irrelevant (that is, outside of the range of the data sets).

◆ update()

virtual void IlvChartGraphic::update ( )
virtual

Updates the current object.

Updates the automatic data range and the layout. Called by the updateAndReDraw method.

◆ updateAndReDraw()

void IlvChartGraphic::updateAndReDraw ( )

Updates and redraws the current object.

The current implementation calls the initReDraws method on the holder of the current object, then updates the current object (by calling the IlvChartGraphic::update method), and finally calls the invalidateRegion and reDrawViews methods on the holder.

◆ zoomCharts() [1/3]

IlBoolean IlvChartGraphic::zoomCharts ( const IlvCoordInterval abscissaRange,
const IlvCoordInterval ordinateRange,
IlUInt  ordinateAxisIndex = 0,
IlBoolean  redraw = IlTrue,
IlBoolean  clipToAutoRange = IlTrue 
)

Zooms the graphical representations of data.

This method changes the visible range that the abscissa and a given ordinate axis displays. The bounding box of the chart graphic object itself is not modified.

Parameters
abscissaRangeThe new range that the abscissa axis should display.
ordinateRangeThe new range that the ordinate axis (the one indicated by ordinateAxisIndex) should display.
ordinateAxisIndexThe index of the ordinate axis the ordinate translation refers to. If this parameter is omitted or set to 0, the main (the first) ordinate axis will be considered.
redrawIf set to IlFalse, the display will not be immediately refreshed.
clipToAutoRangeIf omitted or set to IlTrue, the result of the translation may be modified to ensure that the visible parts of the chart axis remain within the range of the data sets. If this parameter is set to IlFalse, the checking is not performed and the resulting display may be irrelevant (that is, outside of the range of the data sets).

◆ zoomCharts() [2/3]

virtual IlBoolean IlvChartGraphic::zoomCharts ( const IlvCoordInterval abscissaRange,
IlBoolean  redraw = IlTrue,
IlBoolean  clipToAutoRange = IlTrue 
)
virtual

Zooms the graphical representations of data on the abscissa axis.

This method changes the visible range that the abscissa axis displays.

Parameters
abscissaRangeThe new range that the abscissa axis should display.
redrawIf set to IlFalse, the display will not be immediately refreshed.
clipToAutoRangeIf omitted or set to IlTrue, the result of the translation may be modified to ensure that the visible part of the abscissa axis remains within the range of the data sets. If this parameter is set to IlFalse, the checking is not performed and the resulting display may be irrelevant (that is, outside of the range of the data sets).

◆ zoomCharts() [3/3]

virtual IlBoolean IlvChartGraphic::zoomCharts ( const IlvCoordInterval ordinateRange,
IlUInt  ordinateAxisIndex,
IlBoolean  redraw = IlTrue,
IlBoolean  clipToAutoRange = IlTrue 
)
virtual

Zooms the graphical representations of data on an ordinate axis.

This method changes the visible range that a given ordinate axis displays.

Parameters
ordinateRangeThe new range that the ordinate axis (the one indicated by ordinateAxisIndex) should display.
ordinateAxisIndexThe index of the ordinate axis the ordinate translation refers to.
redrawIf set to IlFalse, the display will not be immediately refreshed.
clipToAutoRangeIf omitted or set to IlTrue, the result of the translation may be modified to ensure that the visible part of the indicated ordinate axis remains within the range of the data sets. If this parameter is set to IlFalse, the checking is not performed and the resulting display may be irrelevant (that is, outside of the range of the data sets).