# Coordinate system

5 views (last 30 days)
niko kauppinen on 7 Feb 2011
Hi
How i can change coordinate origin to point just generated?
Example: X0=rand*10 y0=rand*10
Now i have random point(1) and i want to generate new point(2) from point(1), with random angle 2pi.Also i want certain distance from point(1) eg.2.5
I tried theta=rand*2*pi y= sin(theta) x= cos(theta) ??? i don't know how to get distance to point(2)
points are not coming around point(1) I think i have to change coordinate system center of point(1)?

Walter Roberson on 7 Feb 2011
To change the coordinate system, you would create a hggroup object and use makehgtform . For more information, please see here
Dist = 2.5;
theta = rand*2*pi;
y = y0 + Dist * sin(theta);
x = x0 + Dist * cos(theta);

Andrew Newell on 7 Feb 2011
If your object is to generate some random points in a circle around (x0,y0), you could do this:
N = 5; % put the number of points you want here
theta = rand(N,1)*pi;

Matthew Simoneau on 7 Feb 2011
Are you asking about transforming Cartesian to polar coordinates? If so, cart2pol will do this.
>> x0=rand*10;
>> y0=rand*10;
>> [th,r] = cart2pol(x0,y0)
th =
0.1530
r =
6.3984
I don't understand the rest about generating a new point.