罗湖网站建设-信科网络,广州网站开发哪家强,无限成都成都市广播电视台官方网站,做网站排名多少钱场景
Java中使用JTS实现WKT字符串读取转换线、查找LineString的list中距离最近的线、LineString做缓冲区扩展并计算点在缓冲区内的方位角#xff1a;
Java中使用JTS实现WKT字符串读取转换线、查找LineString的list中距离最近的线、LineString做缓冲区扩展并计算点在缓冲区内…场景
Java中使用JTS实现WKT字符串读取转换线、查找LineString的list中距离最近的线、LineString做缓冲区扩展并计算点在缓冲区内的方位角
Java中使用JTS实现WKT字符串读取转换线、查找LineString的list中距离最近的线、LineString做缓冲区扩展并计算点在缓冲区内的方位角_jts工具类-CSDN博客
WKB介绍
WKB(Well-Known Binary) 用二进制流 描述几何对象信息。
WKB比WKT的优势在于WKB是二进制,主要是解决传输和存储的效率问题
所以MySQL,Postgre数据存储Geometry类型的数据存储的值是WKB格式的
WKB 使用 1 字节无符号整数、4 字节无符号整数和 8 字节双精度数IEEE 754 格式。一个字节是八位。
Mysql中查询存储WKB值示例
SELECT hex(st_asbinary(st_geomfromtext(POINT(1 2)))) 注
博客霸道流氓气质_C#,架构之路,SpringBoot-CSDN博客
实现
1、WKB相关操作api 2、WKB输出数据并转换为字符串 GeometryFactory geometryFactory new GeometryFactory();Point point1 geometryFactory.createPoint(new Coordinate(112.11,2225.21));WKBWriter wkbWriter new WKBWriter();byte[] write wkbWriter.write(point1);String hex WKBWriter.toHex(write);System.out.println(hex);
以上结果输出
0000000001405C070A3D70A3D740A1626B851EB852
3、WKB数据读取 WKBReader wkbReader new WKBReader();Geometry geometry null;try {geometry wkbReader.read(write);} catch (ParseException e) {e.printStackTrace();}System.out.println(geometry.toText());
完整示例 //WKB输出数据GeometryFactory geometryFactory new GeometryFactory();Point point1 geometryFactory.createPoint(new Coordinate(112.11,2225.21));WKBWriter wkbWriter new WKBWriter();byte[] write wkbWriter.write(point1);String hex WKBWriter.toHex(write);System.out.println(hex);//0000000001405C070A3D70A3D740A1626B851EB852WKBReader wkbReader new WKBReader();Geometry geometry null;try {geometry wkbReader.read(write);} catch (ParseException e) {e.printStackTrace();}System.out.println(geometry.toText());//POINT (112.11 2225.21)