文档

pointLocation

三角形或四面体围合点

语法

pointLocation(TR,P)
pointLocation(TR,x,y)
pointLocation(TR,x,y,z)
[ID,B] = pointLocation(___

描述

例子

ID= pointLocation (TRP返回包含查询点的三角形或四面体的idP.矩阵中的每一行P包含查询点的坐标。

ID= pointLocation (TRxy指定了x坐标和y-二维查询点的坐标作为单独的列向量。

ID= pointLocation (TRxyz指定了x坐标,y坐标,z三维查询点的-坐标作为单独的列向量。

例子

IDB] = pointLocation(___对于任何前面的语法,还返回每个查询点相对于其外围三角形或四面体的重心坐标。

例子

全部折叠

找出三角剖分中包含一组查询点的三角形。

定义三角剖分的点和连通性。

Tp = [2.5 8.0;6.5 - 8.0;2.5 - 5.0;6.5 - 5.0;1.0 - 6.5;8.0 - 6.5);C = [5 3 1;3 2 1;3 4 2;4 6 2]; TR = triangulation(C,TP);

定义两个查询点。

P = [2.25 7;6 6.5);

绘制三角剖分和查询点。

triplot (TR)情节(P (: 1), P (:, 2),“k *’) xlim([0 9])

确定包含每个查询点的三角形的id。

pointLocation(TR,P)
ID =2×11 3

突出显示用红色包围查询点的三角形。

triplot (TR.ConnectivityList (ID), TP (: 1), TP (:, 2),“r”

找到包含一组查询点的三维三角剖分的四面体。

从一组3-D点创建一个德劳内三角测量。

X =画廊(“uniformdata”20 [1], 0);Y =画廊(“uniformdata”20 [1], 1);Z =画廊(“uniformdata”20 [1], 2);TR = delaunayTriangulation(x,y,z);

找出包含查询点的四面体的id,并计算查询点的重心坐标。

P = [0.7 0.6 0.3;0.5 0.5 0.5];[ID,B] = pointLocation(TR,P)
ID =2×157 56
B =2×40.2796 0.0184 0.5286 0.1734 0.3687 0.0149 0.5343 0.0821

输入参数

全部折叠

三角形表示,指定为标量三角测量delaunayTriangulation对象。

数据类型:三角测量|delaunayTriangulation

查询点,指定为2列矩阵(2-D)或3列矩阵(3-D)。P包含了x坐标,y-坐标,和(可能)z-查询点的坐标。

数据类型:|

x-查询点的坐标,指定为列向量。

数据类型:|

y-查询点的坐标,指定为列向量。

数据类型:|

z-查询点的坐标,指定为列向量。

数据类型:|

输出参数

全部折叠

三角形或四面体包含查询点的三角形或四面体的id,作为列向量返回。三角形或四面体ID是对象中相应三角形或四面体的行号ConnectivityList财产。

如果查询点位于两个或多个三角形或四面体的边界上,则返回最大的ID。

ID包含不在三角剖分的三角形或四面体中的点的值。

数据类型:|

每个查询点相对于其外围三角形或四面体的重心坐标,以3列矩阵(2-D)或4列矩阵(3-D)的形式返回。

数据类型:|

在R2013a中引入

这个话题有用吗?