Class DelaunayRenderer
java.lang.Object
com.arbergashi.charts.render.BaseRenderer
com.arbergashi.charts.render.specialized.DelaunayRenderer
- All Implemented Interfaces:
ChartRenderer
Delaunay-like renderer (approximation): connects each point to nearby neighbors using a spatial grid
or a KD-tree for large datasets. This reduces O(n^2) behavior while keeping the rendering path allocation-light.
For very large datasets, it precomputes edges off-EDT and caches them to avoid jank.
- Since:
- 2026-01-01
- Version:
- 1.0.0
- Author:
- Arber Gashi
-
Field Summary
Fields inherited from class BaseRenderer
PIXEL_BUF, PIXEL_BUF4 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddrawData(Graphics2D g2, ChartModel model, PlotContext context) Implementation-specific drawing logic.getPointAt(Point2D pixel, ChartModel model, PlotContext context) Returns the data index nearest to the given pixel coordinate, if supported.setMultiColor(boolean enabled) Enables or disables multi-color rendering for supported renderers.Methods inherited from class BaseRenderer
drawHighlightPoint, drawI18nLabel, drawLabel, getArc, getCachedFont, getCachedGradient, getCachedStroke, getCachedStroke, getCachedStroke, getCubicCurve, getEllipse, getId, getLayerIndex, getLegendColor, getLine, getName, getPathCache, getRect, getRoundRectangle, getSeriesColor, getSeriesStroke, getTheme, getTooltipText, isLegendRequired, isMultiColor, pBuffer, pBuffer4, render, resolveTheme, seriesOrBase, setLayerIndex, setTheme, setupQualityHints, themeAccent, themeAxisLabel, themeBackground, themeBearish, themeBullish, themeForeground, themeGrid, themeSeriesMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ChartRenderer
clearHover, createContext, getFocusValues, getPreferredYRange, renderEmptyState, supportsEmptyState
-
Constructor Details
-
DelaunayRenderer
public DelaunayRenderer()
-
-
Method Details
-
drawData
Description copied from class:BaseRendererImplementation-specific drawing logic. Must follow Zero-Allocation rules.- Specified by:
drawDatain classBaseRenderer
-
getPointAt
Description copied from class:BaseRendererReturns the data index nearest to the given pixel coordinate, if supported.- Specified by:
getPointAtin interfaceChartRenderer- Overrides:
getPointAtin classBaseRenderer- Parameters:
pixel- mouse/crosshair position in component coordinatesmodel- data model for this layercontext- current plot context- Returns:
- optional point index
-
setMultiColor
Description copied from class:BaseRendererEnables or disables multi-color rendering for supported renderers.- Overrides:
setMultiColorin classBaseRenderer- Parameters:
enabled- true to enable multi-color mode- Returns:
- this renderer for chaining
-