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

📄 maputil.java

📁 java+mapxtreme 开发校园房管系统
💻 JAVA
字号:
package com.oyc.mapxtreme.applet.util;

import java.awt.Point;

/**
 * 地图计算工具
 * @author 三峡大学理学院 欧阳超
 *
 */
public class MapUtil {
	
	/**
	 * 将视野zoom1下的长度转换成视野zoom2下的长度
	 * @param zoom1 视野1
	 * @param zoom2 视野2
	 * @param length
	 * @return
	 */
	public int turnLength(double zoom1, double zoom2, int length){
		return (int) ((zoom1 * length) / zoom2);
	}
	
	/**
	 * 将视野zoom1下点的坐标转换成视野zoom2下点的坐标,转换前后坐标原点始终为绘图区左上角
	 * @param zoom1  视野1
	 * @param zoom2  视野2
	 * @param point  要转换的点
	 * @param width  绘图区的宽度
	 * @param height 绘图区的高度
	 * @return
	 */
	public Point turnPoint(double zoom1, double zoom2, Point point, int width, int height){
		//将要转换的坐标映射成以绘图区中心为原点的坐标值
		point.x = point.x - width / 2;
		point.y = height / 2 - point.y;
		
		//得到新视野下以绘图中心为原点的坐标
		int x = (int) ((zoom1 * point.x) / zoom2);
		int y = (int) ((zoom1 * point.y) / zoom2);
		
		//转换成绘图区左上角的坐标
		x = width/2 + x;
		y = height/2 - y;
		
		return new Point(x, y);
	}

}

⌨️ 快捷键说明

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