资源简介
java实现的维诺图,点击即可生成维诺图

代码片段和文件信息
package voronoidelaunay;
import java.util.HashSet;
import java.util.linkedList;
import java.util.Queue;
import java.util.Set;
public class Delaunay extends Triangulation {
private Triangle triangleNewInsert = null;
public Delaunay (Triangle triangle) {
super(triangle);
triangleNewInsert = triangle;
}
public Triangle FindTriangle (Vpoint point) {//找出三角区域中包含该点的三角形
Triangle triangle = triangleNewInsert;
if (!this.contains(triangle)) triangle = null;
Set> visited = new HashSet>();
while (triangle != null) {
visited.add(triangle);
Vpoint corner = point.beOutTri(triangle.toArray(new Vpoint[0]));
if (corner == null) return triangle;
triangle = this.neighborFace(corner triangle);
}
for (Triangle tri: this) {
if (point.beOutTri(tri.toArray(new Vpoint[0])) == null) return tri;
}
return null;
}
public Set> PointInsert (Vpoint point) {//插入新加入的点
Set> newTriangles = new HashSet>();
Set> oldTriangles = new HashSet>();
Set> hasSet = new HashSet>();
Queue> queue = new linkedList>();
Triangle triangle = FindTriangle(point);
if (triangle == null || triangle.contains(point)) return newTriangles;
queue.add(triangle);
while (!queue.isEmpty()) {
triangle = queue.remove();
if (point.PointCircleOfTri(triangle.toArray(new Vpoint[0])) == 1) continue;
oldTriangles.add(triangle);
for (Triangle tri: this.getNeighbors(triangle)) {
if (hasSet.contains(tri)) continue;
hasSet.add(tri);
queue.add(tri);
}
}
for (Set facet: Triangle.boundary(oldTriangles)) {
facet.add(point);
newTriangles.add(new Triangle(facet));
}
this.update(oldTriangles newTriangles);
if (!newTriangles.isEmpty()) triangleNewInsert = newTriangles.iterator().next();
return newTriangles;
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-09-28 22:47 voronoi-job\
文件 301 2014-09-28 16:27 voronoi-job\.classpath
文件 387 2014-09-28 16:27 voronoi-job\.project
目录 0 2014-09-28 22:47 voronoi-job\.settings\
文件 598 2014-09-28 16:27 voronoi-job\.settings\org.eclipse.jdt.core.prefs
目录 0 2014-09-28 22:50 voronoi-job\bin\
目录 0 2014-09-28 22:50 voronoi-job\bin\voronoidelaunay\
文件 3585 2014-09-28 22:50 voronoi-job\bin\voronoidelaunay\Delaunay.class
文件 4550 2014-09-28 22:50 voronoi-job\bin\voronoidelaunay\PaintPanel.class
文件 1867 2014-09-28 22:50 voronoi-job\bin\voronoidelaunay\ShowVoronoi.class
文件 3363 2014-09-28 22:50 voronoi-job\bin\voronoidelaunay\Triangle.class
文件 4390 2014-09-28 22:50 voronoi-job\bin\voronoidelaunay\Triangulation.class
文件 5780 2014-09-28 22:50 voronoi-job\bin\voronoidelaunay\Vpoint.class
目录 0 2014-09-28 22:47 voronoi-job\src\
目录 0 2014-09-28 22:47 voronoi-job\src\voronoidelaunay\
文件 2448 2014-09-28 20:32 voronoi-job\src\voronoidelaunay\Delaunay.java
文件 5535 2014-09-28 20:11 voronoi-job\src\voronoidelaunay\ShowVoronoi.java
文件 1931 2014-09-28 20:11 voronoi-job\src\voronoidelaunay\Triangle.java
文件 2608 2014-09-28 20:10 voronoi-job\src\voronoidelaunay\Triangulation.java
文件 7494 2014-09-28 19:50 voronoi-job\src\voronoidelaunay\Vpoint.java
相关资源
- Windows bat 设置Java环境变量
- java 毕业设计 进销存管理系统 源码
- java图片浏览器跨平台运行程序与源码
- 基于java的在线考试系统-毕业设计
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
评论
共有 条评论