Global coordintes to local (not on Matlab 2012!)

1 visualización (últimos 30 días)
Doctor61
Doctor61 el 29 de En. de 2013
Hey,
I have been searching for a way to be able to define spherical coordinates of the points in a XYZ matrix, based on a local coordinate system (new origin and xyz axes). All I have been running into is this new global2localcoord code in Matlab 2012 that the previous versions apparently don't have.
Could someone help me figure out how to do this?

Respuesta aceptada

Jan
Jan el 30 de En. de 2013
Editada: Jan el 30 de En. de 2013
The general procedure is:
localCoor = rand(3, 100);
translationOfLocalOrigin = rand(3, 1);
rotationOfLocalCoorSystem = <DirectionCosinMatrix>; % [3 x 3] matrix
globalCoor = bsxfun(@minus, localCoor, translationOfLocalOrigin);
globalCoor = rotationOfLocalCoorSystem * globalCoor;
If you need more details, e.g. for the paraphrased "<DirectionCosinMatrix>", please post more details for your available input.
  1 comentario
Doctor61
Doctor61 el 30 de En. de 2013
Thanks for your respond. What you proposed is actually very helpful, but I guess you got it backwards, I have a matrix with the global xyz coordinates, then I want to define a new set of coordinate system with a new origin and angles axes (which would be using the translationOfLocalOrigin and rotationOfLocalCoorSystem you defined above) and find my new xyz or eventually r,phi,theta with respect to that global coords.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Motion Modeling and Coordinate Systems en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by