how to convert a 3-d binary array of spherical cordinates into floating type array of cartesian cordinates

1 次查看(过去 30 天)
I have matlab data ("vand_sph61-11.mat") which i linked here. this data has spherical cordinates in binary form and has 3-d array. this data has 1801x59x109 size. 1801 is range by getting from dividing 5 meter to 50 meter into 2.5 cm. 59 is transmitter beams by getting from dividing -29 degree to 29 degree into 1 degree. 109 is receiver beams by getting from dividing -54 degree to 54 degree into 1 degree. I want to convert this data into cartesian cordinates which has floating type.
In this data, i created a 3-d object in which when point exist then have binary value '1' otherwise have binary value '0'.
please help me

采纳的回答

Rik
Rik 2019-10-16
If you get my findND function from the FEX you can do this:
%find 3D indices in M
[r,c,p]=findND(M);
%create lookup tables
lookup=struct;
lookup.r=5:.025:50;
lookup.c=-29:29;
lookup.p=-54:54;
%convert indices to physical dimensions
r=lookup.r(r);
c=lookup.c(c);
p=lookup.p(p);
  8 个评论
Rik
Rik 2019-10-25
'it is not working' does not provide any useful information. As I said in my comment these two lines of code are not enough to get your desired output. So what code did you try?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Graphics Object Programming 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by