use of org.geotools.styling.Fill in project sldeditor by robward-scisys.
the class SymbolTypeFactory method getFill.
/**
* Gets the fill for the selected value.
*
* @param graphicFill the graphic fill
* @param fieldConfigManager the field config manager
* @return the fill
*/
public Fill getFill(GraphicFill graphicFill, GraphicPanelFieldManager fieldConfigManager) {
Fill fill = null;
ValueComboBoxData obj = symbolTypeField.getSelectedValueObj();
if (obj != null) {
if (!isNone(obj.getKey())) {
FieldState panel = classMap.get(obj.getPanelId());
if (panel != null) {
fill = panel.getFill(graphicFill, fieldConfigManager);
}
}
}
return fill;
}
use of org.geotools.styling.Fill in project sldeditor by robward-scisys.
the class SymbolTypeFactory method getMinimumVersion.
/**
* Gets the minimum version for the SLD symbol.
*
* @param parentObj the parent obj
* @param sldObj the sld obj
* @param vendorOptionsPresentList the vendor options present list
*/
public void getMinimumVersion(Object parentObj, Object sldObj, List<VendorOptionPresent> vendorOptionsPresentList) {
GraphicalSymbol symbol = null;
Graphic graphic = null;
if (sldObj instanceof Graphic) {
graphic = (Graphic) sldObj;
} else if (sldObj instanceof Fill) {
Fill fill = (Fill) sldObj;
graphic = fill.getGraphicFill();
} else if (sldObj instanceof Stroke) {
Stroke stroke = (Stroke) sldObj;
graphic = stroke.getGraphicStroke();
}
if (graphic != null) {
List<GraphicalSymbol> graphicalSymbolList = graphic.graphicalSymbols();
if ((graphicalSymbolList != null) && !graphicalSymbolList.isEmpty()) {
symbol = graphicalSymbolList.get(0);
}
}
if (symbol != null) {
for (FieldState panel : symbolTypeFieldList) {
if (panel.accept(symbol)) {
panel.getMinimumVersion(parentObj, sldObj, vendorOptionsPresentList);
}
}
}
}
use of org.geotools.styling.Fill in project sldeditor by robward-scisys.
the class FieldConfigFilename method getFill.
/**
* Gets the fill.
*
* @param graphicFill the graphic fill
* @param fieldConfigManager the field config manager
* @return the fill
*/
@Override
public Fill getFill(GraphicFill graphicFill, GraphicPanelFieldManager fieldConfigManager) {
if (fieldConfigManager == null) {
return null;
}
Fill fill = null;
FieldConfigBase fieldConfig = fieldConfigManager.get(FieldIdEnum.OVERALL_OPACITY);
if (fieldConfig != null) {
Expression fillColour = null;
Expression fillColourOpacity = null;
if (fieldConfig instanceof FieldConfigColour) {
fillColourOpacity = ((FieldConfigColour) fieldConfig).getColourOpacityExpression();
} else {
fillColourOpacity = fieldConfig.getExpression();
}
fill = getStyleFactory().fill(graphicFill, fillColour, fillColourOpacity);
}
return fill;
}
use of org.geotools.styling.Fill in project sldeditor by robward-scisys.
the class VOGeoServerTextSymbolizer2 method populate.
/**
* Populate.
*
* @param textSymbolizer the text symbolizer
*/
/*
* (non-Javadoc)
*
* @see com.sldeditor.ui.detail.vendor.geoserver.VendorOptionInterface#populate(org.geotools.styling.TextSymbolizer)
*/
@Override
public void populate(TextSymbolizer textSymbolizer) {
if (textSymbolizer instanceof TextSymbolizer2) {
TextSymbolizer2 textSymbol2 = (TextSymbolizer2) textSymbolizer;
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_FEATURE_DESCRIPTION, textSymbol2.getFeatureDescription());
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_SNIPPET, textSymbol2.getSnippet());
OtherText otherText = textSymbol2.getOtherText();
String target = null;
Expression text = null;
if (otherText != null) {
target = otherText.getTarget();
text = otherText.getText();
}
GroupConfigInterface group = getGroup(GroupIdEnum.VO_TEXTSYMBOLIZER_2_OTHERTEXT);
if (group != null) {
group.enable(otherText != null);
}
fieldConfigVisitor.populateTextField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_OTHERTEXT_TARGET, target);
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_OTHERTEXT_TEXT, text);
Graphic graphic = textSymbol2.getGraphic();
boolean enableFill = false;
boolean enableStroke = false;
if (graphic == null) {
graphic = getStyleFactory().createDefaultGraphic();
graphic.setSize(getFilterFactory().literal(10.0));
Mark mark = getStyleFactory().createMark();
graphic.graphicalSymbols().add(mark);
}
Expression fillColour = getFilterFactory().literal(DefaultSymbols.defaultColour());
Expression fillOpacity = getFilterFactory().literal(DefaultSymbols.defaultColourOpacity());
Expression strokeColour = getFilterFactory().literal(DefaultSymbols.defaultColour());
Expression strokeOpacity = getFilterFactory().literal(DefaultSymbols.defaultColourOpacity());
Expression strokeLineWidth = null;
List<GraphicalSymbol> graphicalSymbolList = graphic.graphicalSymbols();
if (!graphicalSymbolList.isEmpty()) {
GraphicalSymbol symbol = graphicalSymbolList.get(0);
symbolTypeFactory.setValue(TextSymbolizer2.class, this.fieldConfigManager, graphic, symbol);
if (symbol instanceof Mark) {
Mark mark = (Mark) symbol;
Fill fill = mark.getFill();
if (fill != null) {
enableFill = true;
fillColour = fill.getColor();
fillOpacity = fill.getOpacity();
}
Stroke stroke = mark.getStroke();
if (stroke != null) {
enableStroke = true;
strokeColour = stroke.getColor();
strokeOpacity = stroke.getOpacity();
strokeLineWidth = stroke.getWidth();
}
}
}
Expression expSize = graphic.getSize();
Expression expRotation = graphic.getRotation();
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_SIZE, expSize);
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_ANGLE, expRotation);
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_FILL_COLOUR, fillColour);
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_FILL_OPACITY, fillOpacity);
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_STROKE_FILL_COLOUR, strokeColour);
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_STROKE_OPACITY, strokeOpacity);
fieldConfigVisitor.populateField(FieldIdEnum.VO_TEXTSYMBOLIZER_2_STROKE_FILL_WIDTH, strokeLineWidth);
GroupConfigInterface fillGroup = getGroup(GroupIdEnum.VO_TEXTSYMBOLIZER_2_FILL);
if (fillGroup != null) {
fillGroup.enable(enableFill);
}
GroupConfigInterface strokeGroup = getGroup(GroupIdEnum.VO_TEXTSYMBOLIZER_2_STROKE);
if (strokeGroup != null) {
group.enable(enableStroke);
}
group = getGroup(GroupIdEnum.VO_TEXTSYMBOLIZER_2_GRAPHIC);
if (group != null) {
group.enable(textSymbol2.getGraphic() != null);
}
}
}
use of org.geotools.styling.Fill in project sldeditor by robward-scisys.
the class FieldConfigTTF method getValue.
/**
* Gets the value.
*
* @param fieldConfigManager the field config manager
* @param symbolType the symbol type
* @param fillEnabled the fill enabled
* @param strokeEnabled the stroke enabled
* @return the value
*/
@Override
public List<GraphicalSymbol> getValue(GraphicPanelFieldManager fieldConfigManager, Expression symbolType, boolean fillEnabled, boolean strokeEnabled) {
List<GraphicalSymbol> symbolList = new ArrayList<GraphicalSymbol>();
Expression wellKnownName = null;
if ((getConfigField() != null) && (fieldConfigManager != null)) {
wellKnownName = getConfigField().getExpression();
if (wellKnownName != null) {
Stroke stroke = null;
Fill fill = null;
if (fillEnabled) {
Expression expFillColour = null;
Expression expFillColourOpacity = null;
FieldConfigBase field = fieldConfigManager.get(fillFieldConfig.getColour());
if (field != null) {
FieldConfigColour colourField = (FieldConfigColour) field;
expFillColour = colourField.getColourExpression();
}
field = fieldConfigManager.get(fillFieldConfig.getOpacity());
if (field != null) {
expFillColourOpacity = field.getExpression();
}
fill = getStyleFactory().createFill(expFillColour, expFillColourOpacity);
}
// Size
Expression expSize = null;
// Rotation
Expression expRotation = null;
Mark mark = getStyleFactory().createMark(wellKnownName, stroke, fill, expSize, expRotation);
symbolList.add(mark);
}
}
return symbolList;
}
Aggregations