public static class TLspGARSGridStyle.Builder<B extends TLspGARSGridStyle.Builder<B>> extends Object
Modifier and Type | Method and Description |
---|---|
B |
all(TLspGARSGridStyle aGARSStyle)
Sets all parameters on the builder based on the given GARS style.
|
B |
axes(EnumSet<TLspGARSGridStyle.Axis> aAxes)
This method specifies to which axes the subsequent calls, related to styling, are applied.
|
B |
body()
After calling this method, all subsequent
interval() , styles() ,
customizableStyles() , … calls will apply to all grid lines. |
B |
body(TLspGARSGridStyle.GARSLevel aGARSLevel)
After calling this method, all subsequent
interval() , styles() ,
customizableStyles() , … calls will apply to all grid lines of the
given level. |
TLspGARSGridStyle |
build()
Creates a new
TLspGARSGridStyle from this builder. |
B |
customizableStyles(Collection<TLspCustomizableStyle> aStyles)
This method specifies the customizable styles to use for the current GARS level/interval
combination.
|
B |
customizableStyles(TLspCustomizableStyle... aStyles)
This method specifies the customizable styles to use for the current GARS level/interval
combination.
|
B |
defaultGARSGridStyle()
Configures this builder with a default GARS grid style.
|
B |
format(String aCoordinatePattern)
Specifies the format pattern to use for the labels of the current GARS
level/interval combination.
|
B |
interval(double aMin,
double aMax)
After calling this method, all subsequent
styles() , customizableStyles() , … calls will only apply to the given scale interval. |
B |
label()
After calling this method, all subsequent
interval() , styles() ,
customizableStyles() , … calls will apply to all grid labels. |
B |
label(TLspGARSGridStyle.GARSLevel aGARSLevel)
After calling this method, all subsequent
interval() , styles() ,
customizableStyles() , … calls will apply to all grid labels of the
given level. |
B |
overlay()
After calling this method, all subsequent
interval() , styles() ,
customizableStyles() , … calls will only apply to all overlay
labels. |
B |
styles(ALspStyle... aStyles)
This method specifies the styles to use for the current GARS level/interval
combination.
|
B |
styles(Collection<ALspStyle> aStyles)
This method specifies the styles to use for the current GARS level/interval
combination.
|
public B defaultGARSGridStyle()
public B body()
interval()
, styles()
,
customizableStyles()
, … calls will apply to all grid lines. I.e. all grid
levels.
When no subsequent interval()
or styles()
call is done, a default interval
and default styles are chosen. Note that the default interval might not be a good default. See interval
for more information.
For an example of how to use this method, see TLspGARSGridStyle
.public B body(TLspGARSGridStyle.GARSLevel aGARSLevel)
interval()
, styles()
,
customizableStyles()
, … calls will apply to all grid lines of the
given level. E.g. to all 15 or 1 degree square lines.
When no subsequent interval()
or styles()
call is done, a default interval
and default styles are chosen. Note that the default interval might not be a good default. See interval
for more information.
For an example of how to use this method, see TLspGARSGridStyle
.aGARSLevel
- the GARS levelpublic B label()
interval()
, styles()
,
customizableStyles()
, … calls will apply to all grid labels. I.e.
all grid levels.
When no subsequent interval()
or styles()
call is done, a default interval
and default styles are chosen. Note that the default interval might not be a good default. See interval
for more information.
For an example of how to use this method, see TLspGARSGridStyle
.public B label(TLspGARSGridStyle.GARSLevel aGARSLevel)
interval()
, styles()
,
customizableStyles()
, … calls will apply to all grid labels of the
given level. E.g. to all 15 or 1 degree square labels.
When no subsequent interval()
or styles()
call is done, a default interval
and default styles are chosen. Note that the default interval might not be a good default. See interval
for more information.
For an example of how to use this method, see TLspGARSGridStyle
.aGARSLevel
- the GARS levelpublic B overlay()
interval()
, styles()
,
customizableStyles()
, … calls will only apply to all overlay
labels. See also TLspGARSGridOverlayLabelBuilder
.
When no subsequent interval()
or styles()
call is done, a default interval
and default styles are chosen.
For an example of how to use this method, see TLspGARSGridStyle
.public B interval(double aMin, double aMax)
styles()
, customizableStyles()
, … calls will only apply to the given scale interval. It is possible
to define multiple scale intervals for every line or label level. In order to do this,
the interval method (and its subsequent calls) can be called multiple times.
When not calling this method after calling one of the body
or label
methods, an interval from 0
(completely zoomed out) to Double.MAX_VALUE
(completely zoomed in) is used. So if you want to use the same styles for every scale,
this method should not be called.
Note that it is important to choose realistic scales for each level. Not doing so may cause the grid
to switch to a less detailed level. For example when specifying an interval from 0
(completely zoomed out) to Double.MAX_VALUE
(completely zoomed in) for the 1 minute square
level, too much geometry would need to be generated when zoomed out. To prevent this, the grid layer
may switch to a less detailed level. This problem should be prevented by choosing a higher minimum scale.
When specifying overlapping intervals, it's not specified which styles will be used. It
is advised to only specify non-overlapping intervals for the same
(GARS level/body or label) combination.
For an example of how to use this method, see TLspGARSGridStyle
.aMin
- the minimum scaleaMax
- the maximum scalepublic B axes(EnumSet<TLspGARSGridStyle.Axis> aAxes)
This method specifies to which axes the subsequent calls, related to styling, are applied. It can be used to specify different styles, label formats, ... for each axis. This method only affects calls that are done after this method call.
Examples:
// For the X axis, the labels will be formatted and styled differently from the Y axis.
TLspGARSGridStyle.Builder builder = TLspGARSGridStyle.newBuilder();
builder.label(SQUARES_10000M).interval(interval);
builder.axis(EnumSet.of(Axis.X)).styles(styles1).format(formatX);
builder.axis(EnumSet.of(Axis.Y)).styles(styles2).format(formatY);
// For the X axis, the labels will be formatted differently from the Y axis labels.
// Both axes will use the same styles.
TLspGARSGridStyle.Builder builder = TLspGARSGridStyle.newBuilder();
builder.label(SQUARES_10000M).interval(interval);
builder.styles(style1, style2);
builder.axis(EnumSet.of(Axis.X)).format(formatX);
builder.axis(EnumSet.of(Axis.Y)).format(formatY);
aAxes
- the axes for which the subsequent calls are applied.public B styles(Collection<ALspStyle> aStyles)
TLspGARSGridStyle
for more information).
For an example of how to use this method, see TLspGARSGridStyle
.
Either this method or the customizableStyles
method should be
called at least once after calling one of the body
, label
or interval
methods. Otherwise, default styling is used.
The difference between the styles()
and customizableStyles()
method is that the
latter accepts TLspCustomizableStyle
instances which will be exposed through the ILspStyler
which is set on the resulting layer. That styler will implement the ILspCustomizableStyler
interface and expose those customizable styles. The styles passed in the styles()
method will not be exposed. The benefit of the customizableStyles()
method is that it
is possible to customize the styles later on (for example through a user interface). If no
customization is needed afterwards, the styles()
method has the advantage to skip the
overhead of creating TLspCustomizableStyle
instances.aStyles
- the styles to use.public B styles(ALspStyle... aStyles)
styles(Collection)
.aStyles
- the styles to usepublic B customizableStyles(Collection<TLspCustomizableStyle> aStyles)
TLspGARSGridStyle
for more information).
For an example of how to use this method, see TLspGARSGridStyle
.
Either this method or the styles
method should be called at least once
after calling one of the body
, label
or interval
methods.
Otherwise, default styling is used.
The difference between the styles()
and customizableStyles()
method is that the
latter accepts TLspCustomizableStyle
instances which will be exposed through the ILspStyler
which is set on the resulting layer. That styler will implement the ILspCustomizableStyler
interface and expose those customizable styles. The styles passed in the styles()
method will not be exposed. The benefit of the customizableStyles()
method is that it
is possible to customize the styles later on (for example through a user interface). If no
customization is needed afterwards, the styles()
method has the advantage to skip the
overhead of creating TLspCustomizableStyle
instances.aStyles
- the styles to use.public B customizableStyles(TLspCustomizableStyle... aStyles)
customizableStyles(Collection)
.aStyles
- the styles to usepublic B format(String aCoordinatePattern)
aCoordinatePattern
- the pattern used to format the label textpublic B all(TLspGARSGridStyle aGARSStyle)
aGARSStyle
- the GARS style to copypublic TLspGARSGridStyle build()
TLspGARSGridStyle
from this builder.TLspGARSGridStyle