Skip to content

Commit 82da8fe

Browse files
authored
sensor view (#301)
* sensor view * fps and tps
1 parent a9be365 commit 82da8fe

4 files changed

Lines changed: 23 additions & 1 deletion

File tree

include/glim/viewer/standard_viewer.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ class StandardViewer : public ExtensionModule {
6464
bool track;
6565
bool show_current_coord;
6666
bool show_current_points;
67+
int camera_mode;
6768
int odom_color_mode;
6869
int submap_color_mode;
6970

src/glim/viewer/standard_viewer.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ StandardViewer::StandardViewer() : logger(create_module_logger("viewer")) {
4949
track = true;
5050
show_current_coord = true;
5151
show_current_points = true;
52+
camera_mode = 0;
5253
odom_color_mode = 0;
5354
submap_color_mode = 0;
5455

src/glim/viewer/standard_viewer_callbacks.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ void StandardViewer::set_callbacks() {
118118
const Eigen::Isometry3f pose = resolve_pose(new_frame);
119119

120120
if (track) {
121-
viewer->lookat(pose.translation());
121+
viewer->lookat(pose);
122122
}
123123

124124
guik::ShaderSetting shader_setting = guik::FlatColor(1.0f, 0.5f, 0.0f, 1.0f, pose);

src/glim/viewer/standard_viewer_ui.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,26 @@ void StandardViewer::drawable_selection() {
131131

132132
ImGui::Separator();
133133

134+
std::vector<const char*> camera_modes = {"STANDARD", "FPS", "TPS", "TOPDOWN"};
135+
ImGui::SetNextItemWidth(92);
136+
if (ImGui::Combo("camera_mode", &camera_mode, camera_modes.data(), camera_modes.size())) {
137+
switch (camera_mode) {
138+
default:
139+
case 0:
140+
viewer->use_orbit_camera_control();
141+
break;
142+
case 1:
143+
viewer->use_sensor_view_camera_control(Eigen::Translation3f(-0.05f, 0.0f, 0.0f) * Eigen::Isometry3f::Identity(), 1e-3, 1e-3);
144+
break;
145+
case 2:
146+
viewer->use_sensor_view_camera_control();
147+
break;
148+
case 3:
149+
viewer->use_topdown_camera_control();
150+
break;
151+
}
152+
}
153+
134154
std::vector<const char*> odom_color_modes = {"FLAT", "INTENSITY", "NORMAL"};
135155
ImGui::SetNextItemWidth(92);
136156
ImGui::Combo("odom_color_mode", &odom_color_mode, odom_color_modes.data(), odom_color_modes.size());

0 commit comments

Comments
 (0)