How to convert the points with respect to co-ordinate system?
3 views (last 30 days)
Show older comments
Swapnil Rane
on 30 Mar 2018
Commented: Walter Roberson
on 30 Mar 2018
I have huge three 90*85 matrices with x,y,z values calculated from the left upper corner of the matrix. I would like to change the points with respect to new coordinate system.
How can I convert the points? Do you need more explanation?
2 Comments
Roger Stafford
on 30 Mar 2018
@Swapnil Rane: Yes, we do indeed need much more explanation. Aside from simply applying the conversion formulas from the current to the new coordinate systems for each triplet within the three respective matrices, what is it you are asking?
Also what is the significance of the phrase "calculated from the left upper corner"? What does it matter how these original values were calculated, with regard to the task of computing the necessary conversions?
Accepted Answer
Walter Roberson
on 30 Mar 2018
Usually you would create a transformation matrix, either 3 x 3 or 4 x 4, and you would take the three matrices and reshape them and concatenate them to create columns of a vector, and then use matrix multiplication by the transformation matrix. Take the N x 3 or N x 4 matrix that results and reshape the columns back to the original size of your input matrices.
4 Comments
Walter Roberson
on 30 Mar 2018
Just subtract off the location of the center from the coordinates.
x_center = mean(x(:));
y_center = mean(y(:));
z_center = mean(z(:));
newx = x - x_center;
newy = y - y_center;
newz = z - z_center;
More Answers (1)
Abhishek Ballaney
on 30 Mar 2018
https://in.mathworks.com/help/matlab/cartesian-coordinate-system-conversion.html
See Also
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!