当前位置: 首页 > news >正文

JTS:10 Crosses

这里写目录标题

      • 版本
        • 点与线
        • 点与面
        • 线与面
        • 线与线

版本

org.locationtech.jts:jts-core:1.19.0
链接: github

public class GeometryCrosses {private final GeometryFactory geometryFactory = new GeometryFactory();private static final Logger LOGGER = LoggerFactory.getLogger(GeometryCrosses.class);private static final WKTWriter WKT_WRITER = new WKTWriter();private Coordinate[] coordinate1;private Coordinate[] coordinate2;/*** [T*T******] (for P/L, P/A, and L/A situations) 点与线,点与面,线与面* [T*****T**] (for L/P, A/P, and A/L situations) 线与点,面与点,面与线* [0********] (for L/L situations) 线与线* 获取两个几何对象并返回 true 如果它们的交叉点在空间上是交叉的,* 也就是说,几何图形有一些但不是所有的内部点是共同的。* 几何图形内部的交点不能是空集,并且其维度必须小于两个输入几何图形的最大尺寸。* 此外,两个几何图形的交点不能等于任何一个源几何图形。否则,它将返回 false*/public static void main(String[] args) {GeometryCrosses geometryCrosses = new GeometryCrosses();geometryCrosses.test00();}
}
点与线

在这里插入图片描述

    /*** 点与线, 点必须是多点,且有一个点在线上,因为是交叉点,在线上* [T*T******]*/public void test00() {coordinate1 = new Coordinate[] {new Coordinate(4, 3), new Coordinate(13, 3)};LineString lineString = geometryFactory.createLineString(coordinate1);coordinate2 = new Coordinate[] {new Coordinate(8, 6), new Coordinate(8, 1), new Coordinate(9, 3)};MultiPoint multiPoint = geometryFactory.createMultiPointFromCoords(coordinate2);LOGGER.info("lineString1 - point1 九交模型值:{}", lineString.relate(multiPoint).toString());LOGGER.info("point1 - lineString1 跨越:{}", lineString.crosses(multiPoint));LOGGER.info("lineString1: {}, point1: {}", WKT_WRITER.write(lineString), WKT_WRITER.write(multiPoint));}
点与面

在这里插入图片描述

    /*** 点与面* [T*T******]*/public void test01() {coordinate1 = new Coordinate[] {new Coordinate(8, 6), new Coordinate(8, 1), new Coordinate(9, 3)};MultiPoint multiPoint = geometryFactory.createMultiPointFromCoords(coordinate1);coordinate2 = new Coordinate[] {new Coordinate(2, 5), new Coordinate(2, 2), new Coordinate(12, 2), new Coordinate(12, 5), new Coordinate(2, 5)};Polygon polygon = geometryFactory.createPolygon(coordinate2);LOGGER.info("multiPoint1 - polygon 九交模型值:{}", multiPoint.relate(polygon).toString());LOGGER.info("multiPoint1 - polygon 跨越:{}", multiPoint.crosses(polygon));LOGGER.info("multiPoint1: {}, polygon: {}", WKT_WRITER.write(multiPoint), WKT_WRITER.write(polygon));}
线与面

在这里插入图片描述

    public void test02() {coordinate1 = new Coordinate[] {new Coordinate(8, 6), new Coordinate(8, 1), new Coordinate(9, 3)};LineString lineString = geometryFactory.createLineString(coordinate1);coordinate2 = new Coordinate[] {new Coordinate(2, 5), new Coordinate(2, 2), new Coordinate(12, 2), new Coordinate(12, 5), new Coordinate(2, 5)};Polygon polygon = geometryFactory.createPolygon(coordinate2);LOGGER.info("lineString - polygon 九交模型值:{}", lineString.relate(polygon).toString());LOGGER.info("lineString - polygon 跨越:{}", lineString.crosses(polygon));LOGGER.info("lineString: {}, polygon: {}", WKT_WRITER.write(lineString), WKT_WRITER.write(polygon));}
线与线

在这里插入图片描述

    /*** 线与线* [0********]*/public void test03() {coordinate1 = new Coordinate[] {new Coordinate(3, 4), new Coordinate(12, 4)};LineString lineString1 = geometryFactory.createLineString(coordinate1);coordinate2 = new Coordinate[] {new Coordinate(7, 7), new Coordinate(7, 1)};LineString lineString2 = geometryFactory.createLineString(coordinate2);LOGGER.info("lineString - polygon 九交模型值:{}", lineString1.relate(lineString2).toString());LOGGER.info("lineString - polygon 跨越:{}", lineString1.crosses(lineString2));LOGGER.info("lineString: {}, polygon: {}", WKT_WRITER.write(lineString1), WKT_WRITER.write(lineString2));}

相关文章:

JTS:10 Crosses

这里写目录标题 版本点与线点与面线与面线与线 版本 org.locationtech.jts:jts-core:1.19.0 链接: github public class GeometryCrosses {private final GeometryFactory geometryFactory new GeometryFactory();private static final Logger LOGGER LoggerFactory.getLog…...

MySQL中的SHOW FULL PROCESSLIST命令

在MySQL数据库管理中,理解和监控当前正在执行的进程是至关重要的一环。MySQL提供了一系列强大的工具和命令,使得这项任务变得相对容易。其中,SHOW FULL PROCESSLIST命令就是一个非常有用的工具,它可以帮助我们查看MySQL服务器中的…...

VsCode 常见的配置、常用好用插件

1、自动保存:不用装插件,在VsCode中设置一下就行 2、设置ctr滚轮改变字体大小 3、设置选项卡多行展示 这样打开了很多个文件,就不会导致有的打开的文件被隐藏 4、实时刷新网页的插件:LiveServer 5、open in browser 支持快捷键…...

深度学习问答题(更新中)

1. 各个激活函数的优缺点? 2. 为什么ReLU常用于神经网络的激活函数? 在前向传播和反向传播过程中,ReLU相比于Sigmoid等激活函数计算量小;避免梯度消失问题。对于深层网络,Sigmoid函数反向传播时,很容易就…...

JavaScript 笔记: 函数

1 函数声明 2 函数表达式 2.1 函数表达式作为property的value 3 箭头函数 4 构造函数创建函数(不推荐) 5 function 与object 5.1 typeof 5.2 object的操作也适用于function 5.3 区别于⼀般object的⼀个核⼼特征 6 回调函数 callback 7 利用function的pr…...

2023NOIP A层联测9-天竺葵

天竺葵/无法阻挡的子序列/很有味道的题目 我们称一个长度为 k k k 的序列 c c c 是好的,当且仅当对任意正整数 i i i 在 [ 1 , k − 1 ] [1,k-1] [1,k−1] 中,满足 c i 1 > b i c i c_{i1}>b_i \times c_i ci1​>bi​ci​, …...

react antd table表格点击一行选中数据的方法

一、前言 antd的table,默认是点击左边的单选/复选按钮,才能选中一行数据; 现在想实现点击右边的部分,也可以触发操作选中这行数据。 可以使用onRow实现,样例如下。 二、代码 1.表格样式部分 //表格table样式部分{…...

【VUEX】最好用的传参方式--Vuex的详解

🥳🥳Welcome Huihuis Code World ! !🥳🥳 接下来看看由辉辉所写的关于VuexElementUI的相关操作吧 目录 🥳🥳Welcome Huihuis Code World ! !🥳🥳 一.Vuex是什么 1.定义 2…...

【.net core】yisha框架 SQL SERVER数据库 反向递归查询部门(子查父)

业务service.cs中ListFilter方法中内容 //反向递归查询部门列表List<DepartmentEntity> departmentList await departmentService.GetReverseRecurrenceList(new DepartmentListParam() { Ids operatorInfo.DepartmentId.ToString() });if (departmentList ! null &am…...

java处理时间-去除节假日以及双休日

文章目录 一、建表:activity_holiday_info二、java代码1、ActivitityHolidayController.java2、ActivityHolidayInfoService.java3、ActivityHolidayInfoServiceImpl.java 三、测试效果 有些场景需要计算数据非工作日的情况&#xff0c;eg&#xff1a;统计每个人每月工作日签到…...

快讯|Tubi 有 Rabbit AI 啦

在每月一期的 Tubi 快讯中&#xff0c;你将全面及时地获取 Tubi 最新发展动态&#xff0c;欢迎星标关注【比图科技】微信公众号&#xff0c;一起成长变强&#xff01; Tubi 推出 Rabbit AI 帮助用户找到喜欢的视频内容 Tubi 于今年九月底推出了 Rabbit AI&#xff0c;这是一项…...

Zookeeper从入门到精通

Zookeeper 是一个开源的分布式协调服务&#xff0c;目前由 Apache 进行维护。Zookeeper 可以用于实现分布式系统中常见的发布/订阅、负载均衡、命令服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。 目录 01-Zookeeper特性与节点数据类型详解02-Z…...

10.11作业

多继承代码实现沙发床 #include <iostream>using namespace std;class Sofa {private:int h;public:Sofa() {cout << "Sofa无参构造" << endl;}Sofa(int h): h(h) {cout << "Sofa有参构造" << endl;}Sofa(const Sofa& …...

如何对比github中不同commits的区别

有时候想要对比跨度几十个commits之前的代码区别&#xff0c;想直接使用github的用户界面。可以直接在官网操作。 示例 首先要创建一个旧commit的branch。进入该旧的commit&#xff0c;然后输入branch名字即可。 然后在项目网址后面加上compare即可对比旧的branch和新的bran…...

串的基本操作(数据结构)

串的基本操作 #include <stdlib.h> #include <iostream> #include <stdio.h> #define MaxSize 255typedef struct{char ch[MaxSize];int length; }SString;//初始化 SString InitStr(SString &S){S.length0;return S; } //为了方便计算&#xff0c;串的…...

ctfshow-web12(glob绕过)

打开链接&#xff0c;在网页源码里找到提示 要求以get请求方式给cmd传入参数 尝试直接调用系统命令&#xff0c;没有回显&#xff0c;可能被过滤了 测试phpinfo&#xff0c;回显成功&#xff0c;确实存在了代码执行 接下来我们尝试读取一下它存在的文件&#xff0c;这里主要介…...

hive3.1核心源码思路

系列文章目录 大数据主要组件核心源码解析 文章目录 系列文章目录大数据主要组件核心源码解析 前言一、HQL转化为MR 核心思路二、核心代码1. 入口类&#xff0c;生命线2. 编译代码3. 执行代码 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 对大…...

LATR:3D Lane Detection from Monocular Images with Transformer

参考代码&#xff1a;LATR 动机与主要工作&#xff1a; 之前的3D车道线检测算法使用诸如IPM投影、3D anchor加NMS后处理等操作处理车道线检测&#xff0c;但这些操作或多或少会存在一些负面效应。IPM投影对深度估计和相机内外参数精度有要求&#xff0c;anchor的方式需要一些如…...

什么是UI自动化测试工具?

UI自动化测试工具有着AI技术驱动&#xff0c;零代码开启自动化测试&#xff0c;集设备管理与自动化能力于一身的组织级自动化测试管理平台。基于计算机视觉技术&#xff0c;可跨平台、跨载体执行脚本&#xff0c;脚本开发和维护效率提升至少50%;多端融合统一用户使用体验&#…...

计算顺序表中值在100到500之间的元素个数

要求顺序表中值在100到500之间的元素的个数&#xff0c;你可以使用C语言编写一个循环来遍历顺序表中的元素&#xff0c;并在循环中检查每个元素是否在指定的范围内。 #include <stdio.h>#define MAX_SIZE 100 // 假设顺序表的最大容量为100int main() {int arr[MAX_SIZE]…...

Stitches项目架构分析:RequireJS模块化设计与Grunt构建流程完全指南 [特殊字符]

Stitches项目架构分析&#xff1a;RequireJS模块化设计与Grunt构建流程完全指南 &#x1f680; 【免费下载链接】stitches HTML5 Sprite Sheet Generator 项目地址: https://gitcode.com/gh_mirrors/sti/stitches Stitches是一个基于HTML5的雪碧图生成器&#xff0c;它采…...

Midjourney锐化效果失效真相(2024官方未公开的渲染管线瓶颈解析)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Midjourney锐化效果失效真相&#xff08;2024官方未公开的渲染管线瓶颈解析&#xff09; 自2024年V6.2版本起&#xff0c;大量用户反馈 --stylize 与 --sharp 参数组合下图像边缘锐化效果显著弱化&am…...

PDF 可视化签名盖章页技术解析

本文是我在设备检测系统项目开发中,无设备检测的技术实现备忘录,记载实现过程。 本文以 PC 端页面 sign-pdf.vue 为主线,说明「无设备报检」在报告审批环节如何通过前后端协作,完成报告/记录 PDF 上的签名、印章、报告编号拖放定位,并在审批通过后由后端合并生成带签章的正…...

交流电机驱动器的三种控制模式:前沿切相、后沿切相与同步模式详解

1. 项目概述&#xff1a;一个能玩出花的交流电机驱动器在汽车改装、工业控制或者一些创客项目里&#xff0c;驱动一个交流电机听起来简单&#xff0c;但想让它听话地变速、正反转&#xff0c;甚至实现软启动和精确同步&#xff0c;往往就得搬出笨重又昂贵的工业变频器。今天分享…...

TVA注意力层INT8量化配置技巧

重磅预告&#xff1a;本专栏将独家连载系列丛书《智能体视觉技术与应用》部分精华内容&#xff0c;该书是世界首套系统阐述“因式智能体”视觉理论与实践的专著&#xff0c;特邀美国 TypeOne 公司首席科学家、斯坦福大学博士 Bohan 担任技术顾问。Bohan先生师从美国三院院士、“…...

告别手动复制!用这个自定义编辑器脚本一键备份/克隆Unity Terrain Data

告别手动复制&#xff01;用这个自定义编辑器脚本一键备份/克隆Unity Terrain Data在Unity关卡设计和技术美术的工作流中&#xff0c;地形数据的灵活复用往往意味着反复的手动操作——导出高度图、备份材质参数、复制植被分布&#xff0c;每个环节都可能成为效率瓶颈。想象这样…...

洛雪音乐桌面版:跨平台音乐聚合播放器的终极使用指南

洛雪音乐桌面版&#xff1a;跨平台音乐聚合播放器的终极使用指南 【免费下载链接】lx-music-desktop 一个基于 Electron 的音乐软件 项目地址: https://gitcode.com/GitHub_Trending/lx/lx-music-desktop 洛雪音乐桌面版是一款基于Electron和Vue 3技术栈开发的开源跨平台…...

【限时开源】DeepSeek-VL多模态代码重构检查清单:含19个AST级检测规则+CI/CD嵌入脚本(仅剩47份可下载)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;DeepSeek-VL多模态代码重构的背景与价值 随着视觉语言模型&#xff08;VLM&#xff09;在真实工业场景中加速落地&#xff0c;传统单模态代码架构在处理图像-文本联合推理任务时暴露出显著瓶颈&#xf…...

TrollInstallerX终极指南:3分钟完成iOS TrollStore安装的强力工具

TrollInstallerX终极指南&#xff1a;3分钟完成iOS TrollStore安装的强力工具 【免费下载链接】TrollInstallerX A TrollStore installer for iOS 14.0 - 16.6.1 项目地址: https://gitcode.com/gh_mirrors/tr/TrollInstallerX TrollInstallerX是一款专为iOS设备设计的T…...

深度解析Atmosphere系统:为Nintendo Switch带来的完整自定义固件解决方案

深度解析Atmosphere系统&#xff1a;为Nintendo Switch带来的完整自定义固件解决方案 【免费下载链接】Atmosphere-stable 大气层整合包系统稳定版 项目地址: https://gitcode.com/gh_mirrors/at/Atmosphere-stable 你是否曾为Switch游戏价格高昂而烦恼&#xff1f;是否…...