最近有个任务需要把 带有菱角的polygon数据处理光滑,网上搜索后发现GeoTools Polygon smooth方法 ,很好用。代码如下

import org.geotools.geometry.jts.JTS;
import org.geotools.geometry.jts.JTSFactoryFinder;

import com.vividsolutions.jts.geom.GeometryFactory;
import com.vividsolutions.jts.geom.Polygon;
import com.vividsolutions.jts.io.ParseException;
import com.vividsolutions.jts.io.WKTReader;

public class test {

public static void main(String[] args) {
// TODO Auto-generated method stub
String p="POLYGON((121.76762347504986 31.264281436214233,120.74589495942485 31.085685429106803,121.03153949067486 30.23515447986118,121.76762347504986 31.264281436214233))";
      
System.out.println(p);
System.out.println(getSmoothPolygonByGeoTools(p));

}
private static GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory( null );
public static String getSmoothPolygonByGeoTools(String polygonargs) {
// TODO Auto-generated method stub

WKTReader reader = new WKTReader( geometryFactory );
Polygon polygon = null;
try {
polygon = (Polygon) reader.read(polygonargs);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
   GeometryFactory  f= new GeometryFactory();
Polygon re= (Polygon) JTS.smooth(polygon, 1);
String rs="POLYGON((";
for(int i=0;i<re.getCoordinates().length;i++){
//System.out.println(re.getCoordinates()[i].x+","+re.getCoordinates()[i].y);
rs+=re.getCoordinates()[i].x+" "+re.getCoordinates()[i].y+",";
}
rs=rs.substring(0,rs.length()-1);
rs=rs+"))";
return rs;
}
}

GeoTools Polygon smooth方法相关推荐

  1. java polygon 用法_Java Polygon.getBounds方法代码示例

    import java.awt.Polygon; //导入方法依赖的package包/类 private SelectionShape translatePointsToRealSize(Select ...

  2. matlab光顺拐点,Matlab的smooth方法(降噪\光顺\移动平均)

    对于需要对原始数据降噪和光顺处理的需求,matlab提供了一个基础的湍动平均函数 语法 y = smooth(y) gpuarrayYY = smooth(gpuarrayY) yy = smooth ...

  3. label smooth方法论文调研

    待看论文: When Does Label Smoothing Help?(重点要看的) Regularizing Neural Networks by Penalizing Confident Ou ...

  4. ArcGIS线转面的方法

    ArcGIS作为GIS软件中的龙头老大,其功能是非常强大的,但是如果作为一个初学者,其部分常用的重要功能不容易掌握,今天就讲一讲在矢量化时非常重要的功能:线转面. ArcGIS在进行大范围的矢量化时一 ...

  5. label smooth标签平滑【ConvE(知识图谱补全-链接预测)中使用到】

    今天我们来聊一聊label smooth这个tricks,标签平滑已经成为众所周知的机器学习或者说深度学习的正则化技巧.标签平滑--label smooth regularization作为一种简单的 ...

  6. arcgis不闭合线转面_ArcGIS线转面的方法

    ArcGIS作为GIS软件中的龙头老大,其功能是非常强大的,但是如果作为一个初学者,其部分常用的重要功能不容易掌握,今天就讲一讲在矢量化时非常重要的功能:线转面. ArcGIS在进行大范围的矢量化时一 ...

  7. arcgis多面体要素转面_【干货】ArcGIS 9.3线转面的方法

    原标题:[干货]ArcGIS 9.3线转面的方法 ArcGIS作为GIS软件中的常用软件,其功能是非常强大的,但是如果作为一个初学者,其部分常用的重要功能不容易掌握,今天就讲一讲在矢量化时非常重要的功 ...

  8. ArcGIS线转面的方法-收藏(转)

    ArcGIS 9.3线转面的方法 ArcGIS作为GIS软件中的龙头老大,其功能是非常强大的,但是如果作为一个初学者,其部分常用的重要功能不容易掌握,今天就讲一讲在矢量化时非常重要的功能:线转面. A ...

  9. label smooth标签平滑的理解

    今天我们来聊一聊label smooth这个tricks,标签平滑已经成为众所周知的机器学习或者说深度学习的正则化技巧.标签平滑--label smooth regularization作为一种简单的 ...

最新文章

  1. 10.VMware View 4.6安装与部署-view clint和view for ipad连接测试
  2. checkbox未赋值时获取value是on_C语言中的指针——指针的赋值和指向
  3. c1083 “tensorflow/python/framework/c pp_shape_inference.pb.h”
  4. php js 异步上传图片,javascript实现异步图片上传方法实例
  5. 链接和作用域2 - C++快速入门43
  6. 架构师必须掌握的各种编码:ASCII、ISO-8859-1、GB2312
  7. 文件服务器共享文件夹访问权限,5对文件服务器中的共享文件夹进行访问权限控制...
  8. 在spring配置中出现的问题,解决方案
  9. 解决mysql中表字符集gbk,列字符集Latin1,python查询乱码问题
  10. tkinter的pack布局与place布局结合
  11. redis 多实例启动
  12. 转】 神奇图片解析之旋转的舞女
  13. 关闭Apple Watch 上的激活锁的方法
  14. 文件下载测试的测试点
  15. 计算机科学与技术专业导论论文,浅谈计算机科学与技术专业论文
  16. 计算机管理怎么删除分区,电脑如何删除磁盘分区
  17. oracle lpad函数有中文,oracle lpad函数和rpad函数
  18. 管道工程和这个管道铺设过程中的电缆卫士--电缆故障测试仪 电缆测距 故障定点 路径查找 电缆综合故障测试仪 FB11
  19. 图像处理基础和OpenCV常用接口
  20. sql语句,sql文件加注释

热门文章

  1. VB一款实现图像浏览的ActiveX控件
  2. 我理解的javaEE SE 框架 到底是什么
  3. rust发射台主楼_船的种类
  4. 请立即修改密码!!!
  5. 服务器支持磁盘阵列,服务器磁盘阵列搭建 - 综合技术讨论大区 - 死性不改BBS - 网维行业自由、中立的技术与信息交流平台 - Powered by Discuz!...
  6. 弹簧安全溢流阀行业现状调研及趋势分析报告
  7. 英语词汇(2)fall down,fall off和fall over
  8. DCS系统 采集OPC ua协议自动保存入数据库方案
  9. 加密无政府主义者宣言-源文
  10. 抖音直播间人气快速破1000人的4种套路,速看!