⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 getcoordinatetask.java

📁 esri的ArcGIS Server超级学习模板程序(for java)
💻 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 + -