I am using show exe to display the extracted planes but its not getting displayed at centre of the opengl window. I have to do alot of zooming in and out every time.
Then I tried save pos which saved the position of the scene and load pos which brought the scene to the stored pos. Now I am trying to understand pose.dat file format. Can I use this pose.dat file values as initial .pose file? If so how?
I am using show exe to display the extracted planes but its not getting
displayed at centre of the opengl window. I have to do alot of zooming in and
out every time.
Then I tried save pos which saved the position of the scene and load pos
which brought the scene to the stored pos. Now I am trying to understand
pose.dat file format. Can I use this pose.dat file values as initial .pose
file? If so how?
if I understand your question correctly, then you don't actually want to know
about the pose.dat file format but you want to know whether you can just open
bin/show and have the camera immediately at the position stored in pose.dat?
The short answer is:
There is currently no way to pass a pose.dat at program startup.
The long answer is:
There is a workaround:
The pose file format is:
First three numbers: Position
Next four numbers: Quaternion Rotation
With those values in hand, you could craft yourself some --position and
--rotation options that do what you want.
to add to Josch's answer, as you noticed, the pose.dat file saves a pose in the viewer, including some additional parameters, such as the fog. Please refer to the savePose-function for more details in "src/show_show_animate.cc" The .pose files, however, store the initial pose of the scan, i.e., the transformation that transforms each individual scan into a global coordinate system. This is relevant, of you have more than one point cloud. Thus the .pose files transform the scans, while the 'pose.dat' file sets the camera for the viewer.
There is something that might help you, the --origin or --position and --rotation flags.
--position arg (=0,0,0) Camera starting position, given as
"%lf,%lf,%lf" for x, y, z.
--rotation arg (=0,0,0,1) Camera starting rotation, given as a
quaternion "%lf,%lf,%lf,%lf".
-o [ --origin ] arg Set the starting and reset position according to n. By
default, the starting and reset position are at the
origin of the coordinate system. Also try --position.
arg = 0 : the center of mass of all scans
arg = [1,2,3,...] : the center of scan 0,1,2,...
(arg-1)
arg = [-1,-2,-3,...]: the position of scan 0,1,2,...
(-arg-1)
--position and --rotation should be the first 3 + 4 parameters from the pose.dat file. For your example this should be
Hello All,
I am using show exe to display the extracted planes but its not getting displayed at centre of the opengl window. I have to do alot of zooming in and out every time.
Then I tried save pos which saved the position of the scene and load pos which brought the scene to the stored pos. Now I am trying to understand pose.dat file format. Can I use this pose.dat file values as initial .pose file? If so how?
saved pose.dat file values:
49.8184 -346.405 -2454.58
0.712251 0.2663 -0.60832 -0.227441 41 279 0 60
1 1 671.36
0 1 1 1
0 0.001 1
Hi,
Quoting Suriya Prabha Sekar (2018-05-17 13:04:29)
if I understand your question correctly, then you don't actually want to know
about the pose.dat file format but you want to know whether you can just open
bin/show and have the camera immediately at the position stored in pose.dat?
The short answer is:
There is currently no way to pass a pose.dat at program startup.
The long answer is:
There is a workaround:
The pose file format is:
First three numbers: Position
Next four numbers: Quaternion Rotation
With those values in hand, you could craft yourself some --position and
--rotation options that do what you want.
Thanks!
cheers, josch
Hi,
to add to Josch's answer, as you noticed, the pose.dat file saves a pose in the viewer, including some additional parameters, such as the fog. Please refer to the savePose-function for more details in "src/show_show_animate.cc" The .pose files, however, store the initial pose of the scan, i.e., the transformation that transforms each individual scan into a global coordinate system. This is relevant, of you have more than one point cloud. Thus the .pose files transform the scans, while the 'pose.dat' file sets the camera for the viewer.
There is something that might help you, the --origin or --position and --rotation flags.
--position and --rotation should be the first 3 + 4 parameters from the pose.dat file. For your example this should be
Best regards,
Dorit
Hello JoSch, Dorit,
Thanks for your help :).
Regards,
Suriya.