Polyshape十字路口在一个循环中

5视图(30天)
亚瑟Romeu
亚瑟Romeu 2021年4月26日
你好,
我目前想要的一系列迭代000º角360º。它基本上由进入初始角度和循环将一系列相关坐标存储在一个矩阵。这是基本的代码并不是优化(我只是一个学徒),但我认为做这项工作,直到....164º角来,毁了我的一天。事情是这样的:我不知道为什么代码坏了!它与polyshape有事情要做吗?
我转向你,聪明的程序员,我最后为了节省我可怜的脚本。
附加脚本,但如果你只是想复制粘贴,它如下:
清晰的所有clc;
Descarte_lon = -46.52904762;%经度Ponto de笛卡尔
Descarte_lat = -26.46696384;%纬度Ponto de笛卡尔
笛卡尔= [Descarte_lon Descarte_lat];
buffer_1000m = polybuffer(笛卡尔,“行”,0.004496605);
buffer_500m = polybuffer(笛卡尔,“行”,0.0022483);
buffer_250m = polybuffer(笛卡尔,“行”,0.00112415);
buffer_100m = polybuffer(笛卡尔,“行”,0.0004496605);
c = 0:360
dir_corr = c;% Direcao da Corrente
corr_rad = dir_corr *π/ 180;
angulo_15 = corr_rad +(15 *π/ 180);
angulo_15n = corr_rad +(345 *π/ 180);
angulo_corrente = corr_rad +π;
angulo_corrente_j = corr_rad;
M1000_x = Descarte_lon + 0.004496605 * sin (angulo_15);
M1000_y = Descarte_lat + 0.004496605 * cos (angulo_15);
Lin_corr_x = Descarte_lon + 0.004496605 * sin (angulo_corrente);
Lin_corr_y = Descarte_lat + 0.004496605 * cos (angulo_corrente);
Lin_corr_xj = Descarte_lon + 0.004496605 * sin (angulo_corrente_j);
Lin_corr_yj = Descarte_lat + 0.004496605 * cos (angulo_corrente_j);
M1000_xn = Descarte_lon + 0.004496605 * sin (angulo_15n);
M1000_yn = Descarte_lat + 0.004496605 * cos (angulo_15n);
%等;
%
%的阴谋(buffer_1000m);
%的阴谋(buffer_500m);
%的阴谋(buffer_250m);
%的阴谋(buffer_100m);
%
%的阴谋(Descarte_lon Descarte_lat,‘r。’,‘MarkerSize’, 10);
%
%的阴谋([Descarte_lon M1000_x]、[Descarte_lat M1000_y], ' g ');
%的阴谋([Descarte_lon M1000_xn]、[Descarte_lat M1000_yn], ' w ');
%的阴谋([Descarte_lon Lin_corr_x]、[Descarte_lat Lin_corr_y],“k”);
%的阴谋([Descarte_lon Lin_corr_xj]、[Descarte_lat Lin_corr_yj],“k”)
%轴相等;
[lon1001, lat1001] = polyxpoly (buffer_1000m.Vertices (: 1), buffer_1000m.Vertices (:, 2), [Descarte_lon M1000_x], [Descarte_lat M1000_y]);
%的阴谋(lon1001 lat1001,“bo”)
[lon100, lat100] = polyxpoly (buffer_100m.Vertices (: 1), buffer_100m.Vertices (:, 2), [Descarte_lon Lin_corr_xj], [Descarte_lat Lin_corr_yj]);
%的阴谋(lon100 lat100,“bo”)
[lon250, lat250] = polyxpoly (buffer_250m.Vertices (: 1), buffer_250m.Vertices (:, 2), [Descarte_lon Lin_corr_xj], [Descarte_lat Lin_corr_yj]);
%的阴谋(lon250 lat250,“bo”)
[lon501, lat501] = polyxpoly (buffer_500m.Vertices (: 1), buffer_500m.Vertices (:, 2), [Descarte_lon M1000_x], [Descarte_lat M1000_y]);
%的阴谋(lon501 lat501,“bo”)
[lon502, lat502] = polyxpoly (buffer_500m.Vertices (: 1), buffer_500m.Vertices (:, 2), [Descarte_lon Lin_corr_xj], [Descarte_lat Lin_corr_yj]);
%的阴谋(lon502 lat502,“bo”)
[lon503, lat503] = polyxpoly (buffer_500m.Vertices (: 1), buffer_500m.Vertices (:, 2), [Descarte_lon M1000_xn], [Descarte_lat M1000_yn]);
%的阴谋(lon503 lat503,“bo”)
[lon1002, lat1002] = polyxpoly (buffer_1000m.Vertices (: 1), buffer_1000m.Vertices (:, 2), [Descarte_lon Lin_corr_xj], [Descarte_lat Lin_corr_yj]);
%的阴谋(lon1002 lat1002,“bo”)
[lon1003, lat1003] = polyxpoly (buffer_1000m.Vertices (: 1), buffer_1000m.Vertices (:, 2), [Descarte_lon M1000_xn], [Descarte_lat M1000_yn]);
%的阴谋(lon1003 lat1003,“bo”)
[lon1000, lat1000] = polyxpoly (buffer_1000m.Vertices (: 1), buffer_1000m.Vertices (:, 2), [Descarte_lon Lin_corr_x], [Descarte_lat Lin_corr_y]);
%的阴谋(lon1000 lat1000,“bo”)
DI_CORR (c + 1,:) = [c lon100 lat100、lon250 lat250, lon501, lat501, lon502, lat502, lon503, lat503, lon1001, lat1001, lon1002, lat1002, lon1003, lat1003, lon1000, lat1000);
结束
亲切的问候,
亚瑟。

答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!