diff --git a/pom.xml b/pom.xml index 99570ec..4b16486 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ org.scijava scijava-plot - 0.2.1-SNAPSHOT + 0.3.0-SNAPSHOT SciJava Plot Plots for SciJava. diff --git a/src/main/java/org/scijava/plot/MarkerStyle.java b/src/main/java/org/scijava/plot/MarkerStyle.java index 16c269e..40ce5f8 100644 --- a/src/main/java/org/scijava/plot/MarkerStyle.java +++ b/src/main/java/org/scijava/plot/MarkerStyle.java @@ -35,5 +35,16 @@ * @author Matthias Arzt */ public enum MarkerStyle { - NONE, PLUS, X, STAR, SQUARE, FILLEDSQUARE, CIRCLE, FILLEDCIRCLE + NONE, + PLUS, + X, + STAR, + SQUARE, + FILLEDSQUARE, + CIRCLE, + FILLEDCIRCLE, + DIAMOND, + FILLEDDIAMOND, + TRIANGLE, + FILLEDTRIANGLE, } diff --git a/src/main/java/org/scijava/plot/PlotService.java b/src/main/java/org/scijava/plot/PlotService.java index 80c9141..48a41e3 100644 --- a/src/main/java/org/scijava/plot/PlotService.java +++ b/src/main/java/org/scijava/plot/PlotService.java @@ -41,7 +41,13 @@ public interface PlotService extends SciJavaService { - SeriesStyle newSeriesStyle(ColorRGB color, LineStyle lineStyle, MarkerStyle markerStyle); + double DEFAULT_MARKER_SIZE = 3.0; + + default SeriesStyle newSeriesStyle(ColorRGB color, LineStyle lineStyle, MarkerStyle markerStyle) { + return newSeriesStyle(color, lineStyle, markerStyle, DEFAULT_MARKER_SIZE); + } + + SeriesStyle newSeriesStyle(ColorRGB color, LineStyle lineStyle, MarkerStyle markerStyle, double markerSize); XYPlot newXYPlot(); diff --git a/src/main/java/org/scijava/plot/SeriesStyle.java b/src/main/java/org/scijava/plot/SeriesStyle.java index 25b421b..ae82d90 100644 --- a/src/main/java/org/scijava/plot/SeriesStyle.java +++ b/src/main/java/org/scijava/plot/SeriesStyle.java @@ -45,4 +45,5 @@ public interface SeriesStyle { MarkerStyle getMarkerStyle(); + double getMarkerSize(); } diff --git a/src/main/java/org/scijava/plot/defaultplot/DefaultPlotService.java b/src/main/java/org/scijava/plot/defaultplot/DefaultPlotService.java index 2d1f6ed..8f0aec0 100644 --- a/src/main/java/org/scijava/plot/defaultplot/DefaultPlotService.java +++ b/src/main/java/org/scijava/plot/defaultplot/DefaultPlotService.java @@ -53,8 +53,8 @@ public class DefaultPlotService extends AbstractService implements PlotService { // -- PlotService methods -- @Override - public SeriesStyle newSeriesStyle(ColorRGB color, LineStyle lineStyle, MarkerStyle markerStyle) { - return new DefaultSeriesStyle(color, lineStyle, markerStyle); + public SeriesStyle newSeriesStyle(ColorRGB color, LineStyle lineStyle, MarkerStyle markerStyle, double markerSize) { + return new DefaultSeriesStyle(color, lineStyle, markerStyle, markerSize); } @Override diff --git a/src/main/java/org/scijava/plot/defaultplot/DefaultSeriesStyle.java b/src/main/java/org/scijava/plot/defaultplot/DefaultSeriesStyle.java index 51addc3..b9d4ff7 100644 --- a/src/main/java/org/scijava/plot/defaultplot/DefaultSeriesStyle.java +++ b/src/main/java/org/scijava/plot/defaultplot/DefaultSeriesStyle.java @@ -42,16 +42,16 @@ public class DefaultSeriesStyle implements SeriesStyle { private final ColorRGB color; - - private final MarkerStyle markerStyle; - private final LineStyle lineStyle; + private final MarkerStyle markerStyle; + private final double markerSize; - public DefaultSeriesStyle(ColorRGB color, LineStyle lineStyle, MarkerStyle markerStyle) { + public DefaultSeriesStyle(ColorRGB color, LineStyle lineStyle, MarkerStyle markerStyle, double markerSize) { this.color = color; this.lineStyle = lineStyle; this.markerStyle = markerStyle; - } + this.markerSize = markerSize; + } // -- SeriesStype methods -- @@ -70,6 +70,10 @@ public MarkerStyle getMarkerStyle() { return markerStyle; } + @Override + public double getMarkerSize() { + return markerSize; + } // -- package-private helpers -- @@ -77,6 +81,7 @@ public static DefaultSeriesStyle emptySeriesStyle() { return EMPTY_SERIES_STYLE; } - private static final DefaultSeriesStyle EMPTY_SERIES_STYLE = new DefaultSeriesStyle(null, null, null); + private static final DefaultSeriesStyle EMPTY_SERIES_STYLE = new DefaultSeriesStyle(null, null, null, 0); + }