Matlab:将向量(X,Y)中的形状文件转换为栅格矩阵转换器

时间:2019-02-27 20:59:53

标签: matlab qgis geodesic-sphere

我在将Shape文件(它的X,Y坐标是德国的边界)转换为相同形状的栅格矩阵格式时遇到问题。我只是不知道在这种情况下使用哪种方法。如果有人帮助我找到适合该应用程序的正确思维方式,我将非常感激。

1 个答案:

答案 0 :(得分:0)

在MATLAB中可以很容易地获得它。您需要使用函数inpolygon。此函数为您提供给定多边形的内部和反面的点的索引。一旦知道索引,就可以得到想要的。您可以检查以下演示:

x = [1 2 3 4 3 2]';
y = [4 5 5 4 3 3]';
k = boundary(x,y);
x0 = min(x) ; x1 = max(x) ;
y0 = min(y) ; y1 = max(y) ;
[X,Y] = meshgrid(linspace(x0,x1),linspace(y0,y1)) ;
idx = inpolygon(X(:),Y(:),x(k),y(k)) ;
X(~idx) = NaN ; 
Y(~idx) = NaN ;
plot(x,y,'.r')
hold on
patch(x(k),y(k),'k') ;
plot(X(idx),Y(idx),'.r')

只需将上面的(x,y)替换为形状文件坐标,您将获得所需的内容。