JAVA,如何判断点是否在面内?
首先面也是由一系列的点组成,比如,一个正方形。我们可以把它当成四个坐标点然后直线连接而成。
java.awt.geom.GeneralPath为我们实现的这个画线的功能。
下面用一个简单的例子来画一个面
/**
* 将经纬度点集合转换为GeneralPath对象
*
* @param points 点集合(有序)
*
* @return GeneralPath对象
*/
public static GeneralPath genGeneralPath(ArrayList<Point2D.Double> points) {
GeneralPath path = new GeneralPath();
if (points.size() < 3) {
return null;
}
path.moveTo((float) points.get(0).getX(), (float) points.get(0).getY());
for (Iterator<Point2D.Double> it = points.iterator(); it.hasNext();) {
Point2D.Double point = (Point2D.Double) it.next();
path.lineTo((float) point.getX(), (float) point.getY());
}
path.closePath();
return path;
}
其中。points是一系列坐标点的集合。我们可以用
Point2D.Double point= new Point2D.Double(x,y);生成新的坐标点
moveTo方法:通过移动到指定的坐标在路径中添加点
直接用
lineTo:通过绘制一条从当前坐标到新指定坐标的直线在路径中添加点。
这样每加一个点。我们就用上一个点到这个点画条直线。这样就成功的画好了一个面了。
然后,我们判读点是否在该面中
GeneralPath类的contains方法就可以了。真的非常方便
相关文档:
java里面删除文件夹时候,如果该文件夹下有内容,即其下包含的有文件或文件夹,当你执行
java.io.File.delete(File file)方法时候,不能成功删除,那么如果我们想成功删除,该怎么办的,那就要先删除该文件夹下面的内容,代码如下:
/**
* 删除文件或文件夹
* @param file
*/
public static void deleteFile ......
本文包括:
A: servlet源码实例
B: servlet部署
C: 客户端远程调用
D: servlet开发调用工具
A: servlet源码实例
package com.viewlinecn.userlogin.www.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http ......
JAVA JDK中的解压缩似乎不能解压缩我们手工压缩的RAR文件,只能解压JDK中的API压缩的RAR
所以想出以下用WINRAR命令行方式的解压缩
package edu.nwpu.vcampus.util;
import java.io.File;
public class ZipUtil {
public static final String winrarP ......
package com.event;
import java.util.Map;
public interface EventListener {
void onEvent(Map event);
}
package com.socket;
import java.nio.ByteBuffer;
import java.util.HashMap;
import com.event.EventListener;
/*
* 预处理类
*/
public class BaseObject {
private boole ......