Hello.
I try to scale in 2d (x,y) a point cloud and some polylines.
The problem is that I don't understand which is the center of the scale transformation.
Actually I want to scale it from a specific origin.
how I can do that?
Thank you.
Scale a point cloud from a specific origin
Re: Scale a point cloud from a specific origin
The scale is a simple multiplication of the coordinates by constant values. Therefore one can say that the "center" is the origin (0, 0, 0).
If you want to scale relatively to another point, you would just have to translate the points (with 'Edit > Apply Transformation'). Apply the scale, then translate the points of the inverse quantity.
If you want to scale relatively to another point, you would just have to translate the points (with 'Edit > Apply Transformation'). Apply the scale, then translate the points of the inverse quantity.
Daniel, CloudCompare admin
Re: Scale a point cloud from a specific origin
hello.
Thanks for your answer but I found another problem when I apply the scale to the point cloud. Actually, I apply a scale of 0.99937686 ( this is the largest amount of digits cloud compare allow to apply) and I check the new coordinates of some points in a distance of 200 m of the origin. The new values should be the old coordinates multiplied by the 0.99937686 correct? The problem is that the new number is off about 2mm in 200 m. I know that this is not a large number but I can't understand why this happened. The original point cloud had large coordinates and when I import that in cloud compare and applied a shift of 211270 and 4278750. Then I applied a transformation of -211270 and -4278750 and cloud compare suggest changing the shift to 0,0 which I accepted. After that, I scale the cloud only in x and y and I found this difference in my checks. What's the problem?
"then translate the points of the inverse quantity" what do you mean by that? I didn't do this step.
Thank you
Thanks for your answer but I found another problem when I apply the scale to the point cloud. Actually, I apply a scale of 0.99937686 ( this is the largest amount of digits cloud compare allow to apply) and I check the new coordinates of some points in a distance of 200 m of the origin. The new values should be the old coordinates multiplied by the 0.99937686 correct? The problem is that the new number is off about 2mm in 200 m. I know that this is not a large number but I can't understand why this happened. The original point cloud had large coordinates and when I import that in cloud compare and applied a shift of 211270 and 4278750. Then I applied a transformation of -211270 and -4278750 and cloud compare suggest changing the shift to 0,0 which I accepted. After that, I scale the cloud only in x and y and I found this difference in my checks. What's the problem?
"then translate the points of the inverse quantity" what do you mean by that? I didn't do this step.
Thank you
Re: Scale a point cloud from a specific origin
You should not apply a (big) shift manually. Otherwise you'll have accuracy issues (probably just as what happens here). You have to keep the 'shifted' coordinates and scale them. Then CC will shift the points back at export time.
Daniel, CloudCompare admin