Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Infinisearch

3d coordinate systems

This topic is 6075 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I was thinking about Cartesian and polar coordinates systems and was wondering if you can represent a coordinate with 3 angles. With Cartesian you have three offsets, polar 2 angles and a distance, and I can picture having 2 offsets and an angle. But I can''t picture three angle representing a point in three space. If you can''t does anyone know if there is a proof floating around as to why its not possible? It just strikes me as strange as you can represent a coordinate with three offsets but not three angles. Oh and if u know of any other ways to represent coordinates in 3space could u please describe them. Thanks in advance. -potential energy is easily made kinetic-

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
the 3rd angle would be what my friend?
think before u speak


there is cylinder coords with polar coords(r,w) and distance
x = r*cos(w)
y = r*sin(w)
z = distance

spherical coords 2 angles and distance (l)
x = l*sin(a)*cos(b)
y = l*sin(a)*sin(b)
z = l*cos(b)

Share this post


Link to post
Share on other sites
AP- Read before u reply.

I''m asking if it is possible to represent a cordinate in 3 space using three angles. I can''t visualize this, and i''m wondering if I am correct in thinking this is not possible. And if so is there a proof for such a thing?

Share this post


Link to post
Share on other sites
Maybe there''s a clever way to do this, but as far as I can see, you can''t. The reason why is that 3 angles will specify a certain line, but any point along that line will satisfy the same angles.

Share this post


Link to post
Share on other sites
The only thing why we talk about angles rather than linear values is the fact that angular values are cyclic, that''s all. Of course you can represent a point in 3D with 3 angles: the third angle would be a cyclic distance (for example) to the origine and the covered space would then be limited.
Angles or linear values - it''s hard to talk about them because it depends of your own representation of them (or about what you wanna do with them). It''s like a byte in memory: what makes it a signed or unsigned value? Nothing! It''s the way you evaluate it which allows you to make the difference

Share this post


Link to post
Share on other sites
Thanks MrFreeze, u helped me look at the problem from a different perspective. Now I am going to look at it with the coordinate system being bounded, this would give a reference distance which i can use the angles to scale against. This should allow me to be able to convert between systems.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
The reason you cannot use angles alone is pretty obvious,
that would only have you rotating at the origin. You always
need a distance, in some form, to offset you away from the
origin in one or more directions.

Of course you can use several angles, 3, 4, whatever,
to represent the _orientation_, but as someone already
pointed out, additional angles will be redundant.

Recall that an Euler angle representation of orientation
uses just 3 angles corresponding to the concatenation of
rotating about x, then y, then the z-axis. Again this
is redundant you can find different rotation sequences
that give you the same end orientation.

Christer Ericson
Sony Computer Entertainment, Santa Monica

Share this post


Link to post
Share on other sites
Just think about a robot manipulator with 3 rotational degrees of freedom. Any position (x,y,z) can be described with a set of 3 angles (alpha,beta,gamma) and that''s enough. The combination (alpha,beta,gamma) is not unique and the more degrees of freedom you have, the more combinations you have to describe a position.

But basically you describe a position with 3 angles and I guess that''s what Infinisearch was talking about. 3 angles alone are not enough to describe a position: you also need to know about the relative transformations (translation, rotation) linking these joints, but these values are constants. When you use spherical coordinates, you also need some constant information (like which rotation is performed first and around which axis).

Remember that everything depends on the context: Should you have to solve a problem in a 3 dimensional non-euclidian space, it could be that 3 angles are better suited than 3 pure values to descibe a position!

Share this post


Link to post
Share on other sites
From a mathematicians perspective, I can say most definitely that you cannot uniquely identify any point in a 3-dimensional Euclidean space with 3 angles. By definition, an angle identifies a unique sub-manifold (in this case a line) by considering the sub-manifold to be an affine transformation (rotation) of a reference sub-manifold (line).

In lay terms, since angles only define lines, you cannot use a combination of angles to identify a unique point, only a unique set of co-linear points!

Additionally MrFreeze, having 3 degrees of freedom to move a robot arm does not uniquely define an orientation for the arm, unless you also impose an extra constraint, being an ordering on the rotations. The orientation of a robot arm has little to do with coordinate systems, but more to do orienting a fixed volume in a given space.

Cheers,

Timkin

Share this post


Link to post
Share on other sites
Hi Timkin,

I''m not a mathematician at all and was probably not clear enough.
Since everything is about game programming, talking abstract and mathematical perfectly correct is not my goal
In my ''practical'' mind a coordinate system can be seen in very very large way!

And if you read correctly I never talked about the orientation of a robot arm! I talked about its position (position of its end-effector if you want). Also an ordering of the rotations doesn''t matter at all for a robot arm:

alpha=alpha+3
beta=beta+4
gamma=gamma+5

or

gamma=gamma+5
beta=beta+4
alpha=alpha+3


gives the same position and orientation of the end-effector since all transformations are specified relatively and not absolutely!!

Cheers

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!