Matlab 线段与多边形的交点
我必须在MATLAB中创建一个函数来执行以下任务: 输入: p表格中的多边形 p=[x1,y1;x2,y2;x3,y3;x4,y4…] s具有从A到B段的结构 s=struct('A',[x,y],'B'[u,w]) 返回: 1) 一个整数,指示线段和多边形之间有多少交点(例如,0,1,2) 2) 从A到B的新线段,其中A是输入线段的第一个交点或初始点,B是输入线段的第二个交点或最后一个点 我对如何使用PolyGon中的函数。我一直在阅读如何使用这个函数,并且知道要使用它,我应该提供一个查询点和多边形顶点的坐标。它将返回1或0,这取决于它是否在内部Matlab 线段与多边形的交点,matlab,computational-geometry,Matlab,Computational Geometry,我必须在MATLAB中创建一个函数来执行以下任务: 输入: p表格中的多边形 p=[x1,y1;x2,y2;x3,y3;x4,y4…] s具有从A到B段的结构 s=struct('A',[x,y],'B'[u,w]) 返回: 1) 一个整数,指示线段和多边形之间有多少交点(例如,0,1,2) 2) 从A到B的新线段,其中A是输入线段的第一个交点或初始点,B是输入线段的第二个交点或最后一个点 我对如何使用PolyGon中的函数。我一直在阅读如何使用这个函数,并且知道要使用它,我应该提供一个查询点和
我的问题是,如何获取正好位于边界中的线段的查询点(在线段与其相交的情况下)?如果已安装映射工具箱,则可以使用。由于这是一个相当基本的问题,在文件交换中有相当多的免费MATLAB代码。以下是我找到的搜索词:
- 吕诺·良 查找两个二维多边形边的交点,这是一个简单的函数,用于跟踪新闻组讨论
- 塞巴斯蒂安·霍尔兹 该文件基于Duane Hanselman的曲线相交函数。它扩展了函数的范围以处理任意直线/多边形,这些直线/多边形也可能具有垂直线段或具有非递增x值的线段
- 由NS 而FEX中已经存在一些其他函数来计算 曲线的交点,这段短代码是编写的 以速度为最高优先级。整个过程中不使用回路, 充分利用MATLAB的矢量化功能
- 道格拉斯·施瓦兹 此函数用于计算两条曲线相交的(x,y)位置。曲线可以用NaN断开,也可以有垂直线段。它也非常快(至少在代表我认为是典型应用程序的数据上)
- 大卫·莱格兰 […]导出新形状:两条线之间的交点、一条线和一个圆之间的交点、平行线和垂直线