📄 getcoordinatetask.java
字号:
package com.esri.solutions.jitk.web.tasks.coordinate;
import java.io.Serializable;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import com.esri.adf.web.data.WebContext;
import com.esri.adf.web.data.WebContextInitialize;
import com.esri.adf.web.data.WebContextObserver;
import com.esri.adf.web.data.geometry.WebExtent;
import com.esri.adf.web.data.geometry.WebSpatialReference;
import com.esri.adf.web.data.tasks.TaskInfo;
import com.esri.arcgis.geometry.esriSRGeoCSType;
/**
* This class provides the mechanisms to display dynamic coordinates
* as the user moves the mouse cursor on the map.
*/
public class GetCoordinateTask implements WebContextInitialize, Serializable,
WebContextObserver {
private static final long serialVersionUID = -5856859736901105109L;
private static final Logger _logger = LogManager.getLogger(GetCoordinateTask.class);
private double webextentMAXX;
private double webextentMAXY;
private double webextentMINX;
private double webextentMINY;
private GetCoordinateTaskInfo taskInfo = null;
private String taskName = null;
private String footerNote = null;
private WebContext context = null;
/**
* One and only constructor
*/
public GetCoordinateTask(){
this.taskInfo = new GetCoordinateTaskInfo();
this.taskName = ResourceProps.RES_LABEL_TASK_WINDOW;
}
/**
* default no-op per the WebContextInitialize
*/
public void destroy(){
this.context = null;
}
/**
* Returns the Taskinfo object related to this task
*/
public TaskInfo getTaskInfo(){
if(this.context == null) {
taskInfo.getTaskDescriptor().setDisabled(true);
}
return this.taskInfo;
}
/**
* Sets the Taskinfo object related to this task
* @param taskInfo
* Reference to TaskInfo object
*/
public void setTaskInfo(TaskInfo taskInfo){
this.taskInfo = (GetCoordinateTaskInfo)taskInfo;
}
/**
* Retrieve the WebContext
* @return
* WebContext
*/
public WebContext getContext(){
return context;
}
/**
* This method is called by the WebContext on its registered WebContextObservers when users call the refresh() methods on the context.
*/
public void update(WebContext context, java.lang.Object arg) {
WebExtent extent = context.getWebMap().getCurrentExtent();
// project to WGS1984 if not currently in that projection
WebExtent extent2 = extent.project(WebSpatialReference.getWebSpatialReference(esriSRGeoCSType.esriSRGeoCS_WGS1984));
if (extent2 != null) {
setWebextentMAXX(extent2.getMaxX());
setWebextentMAXY(extent2.getMaxY());
setWebextentMINX(extent2.getMinX());
setWebextentMINY(extent2.getMinY());
}
_logger.debug("WEBEXTENTS: " + getWebextentMAXX() + " " + getWebextentMAXY() + " " +
getWebextentMINX() + " " + getWebextentMINY());
}
/**
* Default init method; only sets the web context, and nothing else.
* Required by the WebContextInitialize interface.
*/
public void init(WebContext webContext) {
this.setContext(webContext);
}
/**
* Sets the Webcontext and registers as an observer
* @param context
* WebContext reference
*/
public void setContext(WebContext context){
if(context != null){
this.context = context;
this.context.addObserver(this);
}
}
/**
* Retrieves the TaskName String
* @return
* taskName
*/
public String getTaskName(){
return taskName;
}
/**
* Sets the TaskName String
* @param taskName
* String of task name
*/
public void setTaskName(String taskName){
this.taskName = taskName;
}
/**
* Get footer note
*/
public String getFooterNote(){
return this.footerNote;
}
/**
* Set footer note
*/
public void setFooterNote(String footerNote){
this.footerNote = footerNote;
}
/**
* Retrieves the Max X WebExtent
* @return
* webextentMAXX
*/
public double getWebextentMAXX() {
return webextentMAXX;
}
/**
* Sets the Max X WebExtent value
* @param val
* value of Max X WebExtent
*/
public void setWebextentMAXX(double val) {
webextentMAXX = val;
}
/**
* Retrieves the Max Y WebExtent
* @return
* webextentMAXY
*/
public double getWebextentMAXY() {
return webextentMAXY;
}
/**
* Sets the Max Y WebExtent value
* @param val
* value of Max Y WebExtent
*/
public void setWebextentMAXY(double val) {
webextentMAXY = val;
}
/**
* Retrieves the Min X WebExtent
* @return
* webextentMINX
*/
public double getWebextentMINX() {
return webextentMINX;
}
/**
* Sets the Min X WebExtent value
* @param val
* value of Min X WebExtent
*/
public void setWebextentMINX(double val) {
webextentMINX = val;
}
/**
* Retrieves the Min Y WebExtent
* @return
* webextentMINY
*/
public double getWebextentMINY() {
return webextentMINY;
}
/**
* Sets the Min Y WebExtent value
* @param val
* value of Min Y WebExtent
*/
public void setWebextentMINY(double val) {
webextentMINY = val;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -