📄 setpointsymbolstask.java
字号:
package com.esri.solutions.jitk.web.tasks.preferences.selectionsymbols;
import java.math.BigInteger;
import javax.xml.bind.JAXBException;
import com.esri.adf.web.data.WebContext;
import com.esri.adf.web.data.symbol.WebSimpleMarkerSymbol;
import com.esri.solutions.jitk.personalization.PersonalizationException;
import com.esri.solutions.jitk.personalization.data.beans.v1.ObjectFactory;
import com.esri.solutions.jitk.personalization.data.beans.v1.PointSymbolType;
import com.esri.solutions.jitk.personalization.data.beans.v1.RgbColorType;
import com.esri.solutions.jitk.personalization.data.beans.v1.impl.RgbColorTypeImpl;
import com.esri.solutions.jitk.web.tasks.RenderControlledTask;
public class SetPointSymbolsTask extends RenderControlledTask {
private static final long serialVersionUID = -7057796246792111187L;
protected int pointMarkerType;
protected int pointMarkerWidth;
protected String pointMarkerColor;
protected String pointMarkerOutlineColor;
protected double pointMarkerAngle;
protected boolean pointMarkerAntialiasing;
protected double pointMarkerTransparency;
protected boolean readFromPreferences(PointSymbolType pPointSymbol) throws PersonalizationException {
if(pPointSymbol != null) {
this.pointMarkerType = pPointSymbol.getMarkerType();
this.pointMarkerWidth = pPointSymbol.getWidth();
this.pointMarkerColor = toADFRgbColor(pPointSymbol.getColor());
this.pointMarkerOutlineColor = toADFRgbColor(pPointSymbol.getOutlineColor());
this.pointMarkerAngle = pPointSymbol.getAngle();
this.pointMarkerAntialiasing = pPointSymbol.isAntialiasing();
this.pointMarkerTransparency = pPointSymbol.getTransparency();
return true;
}
return false;
}
protected void readFromSession(WebContext context) {
WebSimpleMarkerSymbol pointSymbol = context.getWebQuery().getPointGraphicSymbol();
this.pointMarkerType = pointSymbol.getMarkerType();
this.pointMarkerWidth = pointSymbol.getWidth();
this.pointMarkerColor = pointSymbol.getColor();
this.pointMarkerOutlineColor = pointSymbol.getOutlineColor();
this.pointMarkerAngle = pointSymbol.getAngle();
this.pointMarkerAntialiasing = pointSymbol.isAntialiasing();
this.pointMarkerTransparency = pointSymbol.getTransparency();
}
protected WebSimpleMarkerSymbol getSimpleMarkerSymbol() {
WebSimpleMarkerSymbol pointSymbol = new WebSimpleMarkerSymbol();
pointSymbol.setMarkerType(this.pointMarkerType);
pointSymbol.setWidth(this.pointMarkerWidth);
pointSymbol.setColor(this.pointMarkerColor);
pointSymbol.setOutlineColor(this.pointMarkerOutlineColor);
pointSymbol.setAngle(this.pointMarkerAngle);
pointSymbol.setAntialiasing(this.pointMarkerAntialiasing);
pointSymbol.setTransparency(this.pointMarkerTransparency);
return pointSymbol;
}
protected PointSymbolType getPointSymbolType() throws JAXBException {
PointSymbolType pPointSymbol = new ObjectFactory().createPointSymbolType();
pPointSymbol.setMarkerType(this.pointMarkerType);
pPointSymbol.setWidth(this.pointMarkerWidth);
pPointSymbol.setColor(toRgbColorType(this.pointMarkerColor));
pPointSymbol.setOutlineColor(toRgbColorType(this.pointMarkerOutlineColor));
pPointSymbol.setAngle(this.pointMarkerAngle);
pPointSymbol.setAntialiasing(this.pointMarkerAntialiasing);
pPointSymbol.setTransparency(this.pointMarkerTransparency);
return pPointSymbol;
}
protected RgbColorType toRgbColorType(String color) {
RgbColorType ret = null;
if(color != null && color.replaceAll("\\s", "").matches("\\d{1,3},\\d{1,3},\\d{1,3}")) {
String[] rgb = color.split(",");
ret = new RgbColorTypeImpl();
ret.setBlue(new BigInteger(rgb[2]));
ret.setGreen(new BigInteger(rgb[1]));
ret.setRed(new BigInteger(rgb[0]));
}
return ret;
}
protected String toADFRgbColor(RgbColorType color) {
return (color != null) ? color.getRed() + "," + color.getGreen() + "," + color.getBlue() : "0,0,0";
}
public int getPointMarkerType() {
return pointMarkerType;
}
public void setPointMarkerType(int pointMarkerType) {
this.pointMarkerType = pointMarkerType;
}
public int getPointMarkerWidth() {
return pointMarkerWidth;
}
public void setPointMarkerWidth(int pointMarkerWidth) {
this.pointMarkerWidth = pointMarkerWidth;
}
public double getPointMarkerAngle() {
return pointMarkerAngle;
}
public void setPointMarkerAngle(double pointMarkerAngle) {
this.pointMarkerAngle = pointMarkerAngle;
}
public String getPointMarkerColor() {
return pointMarkerColor;
}
public void setPointMarkerColor(String pointMarkerColor) {
this.pointMarkerColor = pointMarkerColor;
}
public String getPointMarkerOutlineColor() {
return pointMarkerOutlineColor;
}
public void setPointMarkerOutlineColor(String pointMarkerOutlineColor) {
this.pointMarkerOutlineColor = pointMarkerOutlineColor;
}
public double getPointMarkerTransparency() {
return pointMarkerTransparency;
}
public void setPointMarkerTransparency(double pointMarkerTransparency) {
this.pointMarkerTransparency = pointMarkerTransparency;
}
public boolean isPointMarkerAntialiasing() {
return pointMarkerAntialiasing;
}
public void setPointMarkerAntialiasing(boolean pointMarkerAntialiasing) {
this.pointMarkerAntialiasing = pointMarkerAntialiasing;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -