de.gsi.chart.renderer.Renderer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of chartfx-chart Show documentation
Show all versions of chartfx-chart Show documentation
This charting library ${project.artifactId}- is an extension
in the spirit of Oracle's XYChart and performance/time-proven JDataViewer charting functionalities.
Emphasis was put on plotting performance for both large number of data points and real-time displays,
as well as scientific accuracies leading to error bar/surface plots, and other scientific plotting
features (parameter measurements, fitting, multiple axes, zoom, ...).
package de.gsi.chart.renderer;
import de.gsi.chart.Chart;
import de.gsi.chart.axes.Axis;
import de.gsi.dataset.DataSet;
import javafx.beans.property.BooleanProperty;
import javafx.collections.ObservableList;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
/**
* -- generic renderer interface --
*
* @author braeun
* @author rstein
*/
public interface Renderer {
ObservableList getDatasets();
ObservableList getDatasetsCopy();
/**
* Sets whether DataSets attached to this renderer shall be shown in the legend
*
* @return true (default) if data sets are supposed to be drawn
*/
BooleanProperty showInLegendProperty();
/**
* Sets whether DataSets attached to this renderer shall be shown in the legend
*
* @return true (default) if data sets are supposed to be drawn
*/
boolean showInLegend();
/**
* Sets whether DataSets attached to this renderer shall be shown in the legend
*
* @param state true (default) if data sets are supposed to be drawn
* @return the renderer class
*/
Renderer setShowInLegend(boolean state);
/**
* @return observable list of axes that are supposed to be used by the renderer
*/
ObservableList getAxes();
void render(GraphicsContext gc, Chart chart, int dataSetOffset, ObservableList datasets);
/**
* @param dataSet the data set for which the representative icon should be generated
* @param dsIndex index within renderer set
* @param width requested width of the returning Canvas
* @param height requested height of the returning Canvas
* @return a graphical icon representation of the given data sets
*/
Canvas drawLegendSymbol(DataSet dataSet, int dsIndex, int width, int height);
}