Mercurial > hg > orthanc-stone
comparison Samples/Sdl/TrackerSampleApp.cpp @ 882:31319fe867b9 am-dev
Merge
author | Alain Mazy <alain@mazy.be> |
---|---|
date | Tue, 09 Jul 2019 11:46:43 +0200 |
parents | 4bc8d9609447 80829436ce0c |
children | 6e79e8c9021c |
comparison
equal
deleted
inserted
replaced
881:a8cd3755db21 | 882:31319fe867b9 |
---|---|
119 //layer->SetPosition(0,0); | 119 //layer->SetPosition(0,0); |
120 GetScene()->SetLayer(FIXED_INFOTEXT_LAYER_ZINDEX, layer.release()); | 120 GetScene()->SetLayer(FIXED_INFOTEXT_LAYER_ZINDEX, layer.release()); |
121 } | 121 } |
122 // position the fixed info text in the upper right corner | 122 // position the fixed info text in the upper right corner |
123 layerP->SetText(msgS.c_str()); | 123 layerP->SetText(msgS.c_str()); |
124 double cX = compositor_->GetCanvasWidth() * (-0.5); | 124 double cX = compositor_->GetWidth() * (-0.5); |
125 double cY = compositor_->GetCanvasHeight() * (-0.5); | 125 double cY = compositor_->GetHeight() * (-0.5); |
126 GetScene()->GetCanvasToSceneTransform().Apply(cX,cY); | 126 GetScene()->GetCanvasToSceneTransform().Apply(cX,cY); |
127 layerP->SetPosition(cX, cY); | 127 layerP->SetPosition(cX, cY); |
128 } | 128 } |
129 | 129 |
130 void TrackerSampleApp::DisplayFloatingCtrlInfoText(const PointerEvent& e) | 130 void TrackerSampleApp::DisplayFloatingCtrlInfoText(const PointerEvent& e) |
160 GetScene()->DeleteLayer(FLOATING_INFOTEXT_LAYER_ZINDEX); | 160 GetScene()->DeleteLayer(FLOATING_INFOTEXT_LAYER_ZINDEX); |
161 } | 161 } |
162 | 162 |
163 ScenePoint2D TrackerSampleApp::GetRandomPointInScene() const | 163 ScenePoint2D TrackerSampleApp::GetRandomPointInScene() const |
164 { | 164 { |
165 unsigned int w = compositor_->GetCanvasWidth(); | 165 unsigned int w = compositor_->GetWidth(); |
166 LOG(TRACE) << "compositor_->GetCanvasWidth() = " << | 166 LOG(TRACE) << "compositor_->GetWidth() = " << |
167 compositor_->GetCanvasWidth(); | 167 compositor_->GetWidth(); |
168 unsigned int h = compositor_->GetCanvasHeight(); | 168 unsigned int h = compositor_->GetHeight(); |
169 LOG(TRACE) << "compositor_->GetCanvasHeight() = " << | 169 LOG(TRACE) << "compositor_->GetHeight() = " << |
170 compositor_->GetCanvasHeight(); | 170 compositor_->GetHeight(); |
171 | 171 |
172 if ((w >= RAND_MAX) || (h >= RAND_MAX)) | 172 if ((w >= RAND_MAX) || (h >= RAND_MAX)) |
173 LOG(WARNING) << "Canvas is too big : tools will not be randomly placed"; | 173 LOG(WARNING) << "Canvas is too big : tools will not be randomly placed"; |
174 | 174 |
175 int x = rand() % w; | 175 int x = rand() % w; |
349 | 349 |
350 case SDLK_m: | 350 case SDLK_m: |
351 CreateRandomMeasureTool(); | 351 CreateRandomMeasureTool(); |
352 break; | 352 break; |
353 case SDLK_s: | 353 case SDLK_s: |
354 controller_->FitContent(compositor_->GetCanvasWidth(), | 354 controller_->FitContent(compositor_->GetWidth(), |
355 compositor_->GetCanvasHeight()); | 355 compositor_->GetHeight()); |
356 break; | 356 break; |
357 | 357 |
358 case SDLK_z: | 358 case SDLK_z: |
359 LOG(TRACE) << "SDLK_z has been pressed. event.key.keysym.mod == " << event.key.keysym.mod; | 359 LOG(TRACE) << "SDLK_z has been pressed. event.key.keysym.mod == " << event.key.keysym.mod; |
360 if (event.key.keysym.mod & KMOD_CTRL) | 360 if (event.key.keysym.mod & KMOD_CTRL) |
388 break; | 388 break; |
389 | 389 |
390 case SDLK_c: | 390 case SDLK_c: |
391 TakeScreenshot( | 391 TakeScreenshot( |
392 "screenshot.png", | 392 "screenshot.png", |
393 compositor_->GetCanvasWidth(), | 393 compositor_->GetWidth(), |
394 compositor_->GetCanvasHeight()); | 394 compositor_->GetHeight()); |
395 break; | 395 break; |
396 | 396 |
397 default: | 397 default: |
398 break; | 398 break; |
399 } | 399 } |
419 return boost::shared_ptr<IFlexiblePointerTracker>(new PanSceneTracker | 419 return boost::shared_ptr<IFlexiblePointerTracker>(new PanSceneTracker |
420 (controller_, e)); | 420 (controller_, e)); |
421 | 421 |
422 case SDL_BUTTON_RIGHT: | 422 case SDL_BUTTON_RIGHT: |
423 return boost::shared_ptr<IFlexiblePointerTracker>(new ZoomSceneTracker | 423 return boost::shared_ptr<IFlexiblePointerTracker>(new ZoomSceneTracker |
424 (controller_, e, compositor_->GetCanvasHeight())); | 424 (controller_, e, compositor_->GetHeight())); |
425 | 425 |
426 case SDL_BUTTON_LEFT: | 426 case SDL_BUTTON_LEFT: |
427 { | 427 { |
428 //LOG(TRACE) << "CreateSuitableTracker: case SDL_BUTTON_LEFT:"; | 428 //LOG(TRACE) << "CreateSuitableTracker: case SDL_BUTTON_LEFT:"; |
429 // TODO: we need to iterate on the set of measuring tool and perform | 429 // TODO: we need to iterate on the set of measuring tool and perform |
451 case GuiTool_Pan: | 451 case GuiTool_Pan: |
452 return boost::shared_ptr<IFlexiblePointerTracker>(new PanSceneTracker( | 452 return boost::shared_ptr<IFlexiblePointerTracker>(new PanSceneTracker( |
453 controller_, e)); | 453 controller_, e)); |
454 case GuiTool_Zoom: | 454 case GuiTool_Zoom: |
455 return boost::shared_ptr<IFlexiblePointerTracker>(new ZoomSceneTracker( | 455 return boost::shared_ptr<IFlexiblePointerTracker>(new ZoomSceneTracker( |
456 controller_, e, compositor_->GetCanvasHeight())); | 456 controller_, e, compositor_->GetHeight())); |
457 //case GuiTool_AngleMeasure: | 457 //case GuiTool_AngleMeasure: |
458 // return new AngleMeasureTracker(GetScene(), e); | 458 // return new AngleMeasureTracker(GetScene(), e); |
459 //case GuiTool_CircleMeasure: | 459 //case GuiTool_CircleMeasure: |
460 // return new CircleMeasureTracker(GetScene(), e); | 460 // return new CircleMeasureTracker(GetScene(), e); |
461 //case GuiTool_EllipseMeasure: | 461 //case GuiTool_EllipseMeasure: |