How to obtain samples within angular windows?

1 次查看(过去 30 天)
Hi, Let us say I have a projectile moving around in a square environment and I want to sample all positions where the projectile has travelled within a 20 degrees angular window, as seen from a fixed point in the environment. Can anyone help me figure out how to do this? In the attached picture, the spiral is a made up path of the projectile and the red dot is the fixed point from which I want to make the angular window.
Thanks
  1 个评论
OH
OH 2017-1-18
Ok, so if I construct vectors with 20 degrees separation emanating from the fixed point (as in the picture below), can I then somehow get all the non-NaN elements (i.e where the projectile has been) in the area between two vectors?

请先登录,再进行评论。

回答(1 个)

Jyotish Robin
Jyotish Robin 2017-1-20
Hi,
Since you are asking for a way in which you can get the non- NaN elements, I suppose you are having a matrix which corresponds to the image. Let me know if that is not the case.
Now, I would suggest you to make use of the function "isnan". isnan(A) returns an array with the same size as A containing logical 1 (true) where the elements of A are NaNs and logical 0 (false) where they are not.
So if it's just a 1D vector ( say y), you can simply do something like this:
>>y1 = y(~isnan(y));
You can read about this in detail in the below link:
Hope it helps!!
  3 个评论
OH
OH 2017-1-21
I would say so.
If one also wants a vector with the sector identity for each
position sample, one may add the following to the example above:
sectorIdentity = (1:n) * sectorgrouping;
Thanks

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by