setscale.java

来自「联合国农粮署牵头开发的geonetwork源代码最新版」· Java 代码 · 共 58 行

JAVA
58
字号
package org.wfp.vam.intermap.services.map;import jeeves.interfaces.Service;import jeeves.server.ServiceConfig;import jeeves.server.context.ServiceContext;import org.jdom.Element;import org.wfp.vam.intermap.Constants;import org.wfp.vam.intermap.kernel.map.MapMerger;import org.wfp.vam.intermap.kernel.map.mapServices.BoundingBox;import org.wfp.vam.intermap.util.Util;/** * */public class SetScale implements Service{	public void init(String appPath, ServiceConfig config) throws Exception {}	//--------------------------------------------------------------------------	//---	//--- Service	//---	//--------------------------------------------------------------------------	public Element exec(Element params, ServiceContext context) throws Exception	{		int width  = Integer.parseInt(params.getChildText("width"));		int height = Integer.parseInt(params.getChildText("height"));		int scale = Integer.parseInt(params.getChildText("scale"));		MapMerger mm = MapUtil.getMapMerger(context);		BoundingBox bb = Util.parseBoundingBox(params); // search bb in params		if( bb == null)			bb = mm.getBoundingBox();		BoundingBox scaledBB = MapUtil.setScale(bb, width, height, scale, mm.getDPI());		mm.setBoundingBox(scaledBB);		// Merge the images now		String imagename = mm.merge(width, height);		String url = MapUtil.getTempUrl() + "/" + imagename;		return new Element("response")			.addContent(new Element("imgUrl").setText(url))			.addContent(new Element("scale").setText(mm.getDistScale()))			.addContent(mm.getBoundingBox().toElement())			.addContent(new Element("width").setText(""+width))			.addContent(new Element("height").setText(""+height));	}}//=============================================================================

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?