Visual Servoing Platform  version 3.6.0 under development (2023-09-25)
vpDisplay.h
1 /*
2  * ViSP, open source Visual Servoing Platform software.
3  * Copyright (C) 2005 - 2023 by Inria. All rights reserved.
4  *
5  * This software is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  * See the file LICENSE.txt at the root directory of this source
10  * distribution for additional information about the GNU GPL.
11  *
12  * For using ViSP with software that can not be combined with the GNU
13  * GPL, please contact Inria about acquiring a ViSP Professional
14  * Edition License.
15  *
16  * See https://visp.inria.fr for more information.
17  *
18  * This software was developed at:
19  * Inria Rennes - Bretagne Atlantique
20  * Campus Universitaire de Beaulieu
21  * 35042 Rennes Cedex
22  * France
23  *
24  * If you have questions regarding the use of this file, please contact
25  * Inria at visp@inria.fr
26  *
27  * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
28  * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
29  *
30  * Description:
31  * Image display.
32  */
33 
34 #ifndef _vpDisplay_h_
35 #define _vpDisplay_h_
36 
37 #include <list>
38 #include <sstream>
39 #include <string>
40 
41 #include <visp3/core/vpCameraParameters.h>
42 #include <visp3/core/vpColor.h>
43 #include <visp3/core/vpHomogeneousMatrix.h>
44 #include <visp3/core/vpImage.h>
45 #include <visp3/core/vpImageCircle.h>
46 #include <visp3/core/vpImagePoint.h>
47 #include <visp3/core/vpMouseButton.h>
48 #include <visp3/core/vpRect.h>
49 
172 class VISP_EXPORT vpDisplay
173 {
174 public:
177  typedef enum
178  {
179  SCALE_AUTO,
182  SCALE_2,
184  SCALE_3,
186  SCALE_4,
188  SCALE_5,
190  SCALE_6,
192  SCALE_7,
194  SCALE_8,
196  SCALE_9,
198  SCALE_10,
200  SCALE_DEFAULT
202  } vpScaleType;
203 
204 protected:
211  unsigned int m_width;
212  unsigned int m_height;
213  std::string m_title;
214  unsigned int m_scale;
216 
217  void setScale(vpScaleType scaleType, unsigned int width, unsigned int height);
218 
219 public:
220  vpDisplay();
221  vpDisplay(const vpDisplay &d);
222  virtual ~vpDisplay();
223 
226  unsigned int computeAutoScale(unsigned int width, unsigned int height);
231  unsigned int getDownScalingFactor() { return m_scale; }
236  inline unsigned int getHeight() const { return m_height; }
241  inline unsigned int getWidth() const { return m_width; }
242 
247  int getWindowXPosition() const { return m_windowXPosition; }
252  int getWindowYPosition() const { return m_windowYPosition; }
253 
259  inline bool isInitialised() { return m_displayHasBeenInitialized; }
260  virtual void setDownScalingFactor(unsigned int scale);
261  virtual void setDownScalingFactor(vpScaleType scaleType);
263 
264 #ifndef DOXYGEN_SHOULD_SKIP_THIS
271  virtual void clearDisplay(const vpColor &color = vpColor::white) = 0;
275  virtual void closeDisplay() = 0;
276 
286  virtual void displayArrow(const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color = vpColor::white,
287  unsigned int w = 4, unsigned int h = 2, unsigned int thickness = 1) = 0;
299  virtual void displayCharString(const vpImagePoint &ip, const char *text, const vpColor &color = vpColor::green) = 0;
300 
309  inline virtual void displayCircle(const vpImageCircle &circle, const vpColor &color, bool fill = false,
310  unsigned int thickness = 1)
311  {
312  this->displayCircle(circle.getCenter(), static_cast<unsigned int>(circle.getRadius()), color, fill, thickness);
313  }
314 
324  virtual void displayCircle(const vpImagePoint &center, unsigned int radius, const vpColor &color, bool fill = false,
325  unsigned int thickness = 1) = 0;
333  virtual void displayCross(const vpImagePoint &ip, unsigned int size, const vpColor &color,
334  unsigned int thickness = 1) = 0;
342  virtual void displayDotLine(const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color,
343  unsigned int thickness = 1) = 0;
351  virtual void displayLine(const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color,
352  unsigned int thickness = 1) = 0;
353 
365  virtual void displayImage(const vpImage<unsigned char> &I) = 0;
366 
378  virtual void displayImage(const vpImage<vpRGBa> &I) = 0;
379 
380  virtual void displayImageROI(const vpImage<unsigned char> &I, const vpImagePoint &iP, unsigned int width,
381  unsigned int height) = 0;
382  virtual void displayImageROI(const vpImage<vpRGBa> &I, const vpImagePoint &iP, unsigned int width,
383  unsigned int height) = 0;
384 
391  virtual void displayPoint(const vpImagePoint &ip, const vpColor &color, unsigned int thickness = 1) = 0;
392 
407  virtual void displayRectangle(const vpImagePoint &topLeft, unsigned int width, unsigned int height,
408  const vpColor &color, bool fill = false, unsigned int thickness = 1) = 0;
422  virtual void displayRectangle(const vpImagePoint &topLeft, const vpImagePoint &bottomRight, const vpColor &color,
423  bool fill = false, unsigned int thickness = 1) = 0;
437  virtual void displayRectangle(const vpRect &rectangle, const vpColor &color, bool fill = false,
438  unsigned int thickness = 1) = 0;
439 
444  virtual void flushDisplay() = 0;
445 
450  virtual void flushDisplayROI(const vpImagePoint &iP, unsigned int width, unsigned int height) = 0;
451 
452  /* Simple interface with the mouse event */
453 
469  virtual bool getClick(bool blocking = true) = 0;
470 
486  virtual bool getClick(vpImagePoint &ip, bool blocking = true) = 0;
505  virtual bool getClick(vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button, bool blocking = true) = 0;
528  virtual bool getClickUp(vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button, bool blocking = true) = 0;
529 
545  virtual bool getKeyboardEvent(bool blocking = true) = 0;
565  virtual bool getKeyboardEvent(std::string &key, bool blocking = true) = 0;
576  virtual bool getPointerMotionEvent(vpImagePoint &ip) = 0;
577 
588  virtual bool getPointerPosition(vpImagePoint &ip) = 0;
589 
593  virtual unsigned int getScreenHeight() = 0;
598  virtual void getScreenSize(unsigned int &width, unsigned int &height) = 0;
602  virtual unsigned int getScreenWidth() = 0;
603 
612  virtual void init(vpImage<unsigned char> &I, int x = -1, int y = -1, const std::string &title = "") = 0;
622  virtual void init(vpImage<vpRGBa> &I, int x = -1, int y = -1, const std::string &title = "") = 0;
623 
684  virtual void init(unsigned int width, unsigned int height, int x = -1, int y = -1, const std::string &title = "") = 0;
685 
699  virtual void setFont(const std::string &font) = 0;
704  virtual void setTitle(const std::string &title) = 0;
712  virtual void setWindowPosition(int x, int y) = 0;
714 #endif // ifndef DOXYGEN_SHOULD_SKIP_THIS
715 
720  static void close(vpImage<unsigned char> &I);
721  static void display(const vpImage<unsigned char> &I);
722  static void displayArrow(const vpImage<unsigned char> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
723  const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
724  unsigned int thickness = 1);
725  static void displayArrow(const vpImage<unsigned char> &I, int i1, int j1, int i2, int j2,
726  const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
727  unsigned int thickness = 1);
728  static void displayCamera(const vpImage<unsigned char> &I, const vpHomogeneousMatrix &cMo,
729  const vpCameraParameters &cam, double size, const vpColor &color, unsigned int thickness);
730  static void displayCharString(const vpImage<unsigned char> &I, const vpImagePoint &ip, const char *string,
731  const vpColor &color);
732  static void displayCharString(const vpImage<unsigned char> &I, int i, int j, const char *string,
733  const vpColor &color);
734  static void displayCircle(const vpImage<unsigned char> &I, const vpImageCircle &circle,
735  const vpColor &color, bool fill = false, unsigned int thickness = 1);
736  static void displayCircle(const vpImage<unsigned char> &I, const vpImagePoint &center, unsigned int radius,
737  const vpColor &color, bool fill = false, unsigned int thickness = 1);
738  static void displayCircle(const vpImage<unsigned char> &I, int i, int j, unsigned int radius, const vpColor &color,
739  bool fill = false, unsigned int thickness = 1);
740  static void displayCross(const vpImage<unsigned char> &I, const vpImagePoint &ip, unsigned int size,
741  const vpColor &color, unsigned int thickness = 1);
742  static void displayCross(const vpImage<unsigned char> &I, int i, int j, unsigned int size, const vpColor &color,
743  unsigned int thickness = 1);
744  static void displayDotLine(const vpImage<unsigned char> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
745  const vpColor &color, unsigned int thickness = 1);
746  static void displayDotLine(const vpImage<unsigned char> &I, int i1, int j1, int i2, int j2, const vpColor &color,
747  unsigned int thickness = 1);
748  static void displayDotLine(const vpImage<unsigned char> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
749  const vpColor &color, unsigned int thickness = 1);
750  static void displayDotLine(const vpImage<unsigned char> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
751  const vpColor &color, unsigned int thickness = 1);
752  static void displayEllipse(const vpImage<unsigned char> &I, const vpImagePoint &center, const double &coef1,
753  const double &coef2, const double &coef3, bool use_normalized_centered_moments,
754  const vpColor &color, unsigned int thickness = 1, bool display_center = false,
755  bool display_arc = false);
756  static void displayEllipse(const vpImage<unsigned char> &I, const vpImagePoint &center, const double &coef1,
757  const double &coef2, const double &coef3, const double &smallalpha,
758  const double &highalpha, bool use_normalized_centered_moments, const vpColor &color,
759  unsigned int thickness = 1, bool display_center = false, bool display_arc = false);
760  static void displayFrame(const vpImage<unsigned char> &I, const vpHomogeneousMatrix &cMo,
761  const vpCameraParameters &cam, double size, const vpColor &color = vpColor::none,
762  unsigned int thickness = 1, const vpImagePoint &offset = vpImagePoint(0, 0),
763  const std::string &frameName = "", const vpColor &textColor = vpColor::black, const vpImagePoint &textOffset = vpImagePoint(15, 15));
764  static void displayLine(const vpImage<unsigned char> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
765  const vpColor &color, unsigned int thickness = 1, bool segment = true);
766  static void displayLine(const vpImage<unsigned char> &I, int i1, int j1, int i2, int j2, const vpColor &color,
767  unsigned int thickness = 1, bool segment = true);
768  static void displayLine(const vpImage<unsigned char> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
769  const vpColor &color, unsigned int thickness = 1);
770  static void displayLine(const vpImage<unsigned char> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
771  const vpColor &color, unsigned int thickness = 1);
772  static void displayPoint(const vpImage<unsigned char> &I, const vpImagePoint &ip, const vpColor &color,
773  unsigned int thickness = 1);
774  static void displayPoint(const vpImage<unsigned char> &I, int i, int j, const vpColor &color,
775  unsigned int thickness = 1);
776  static void displayPolygon(const vpImage<unsigned char> &I, const std::vector<vpImagePoint> &vip,
777  const vpColor &color, unsigned int thickness = 1, bool closed = true);
778  static void displayRectangle(const vpImage<unsigned char> &I, const vpImagePoint &topLeft, unsigned int width,
779  unsigned int height, const vpColor &color, bool fill = false,
780  unsigned int thickness = 1);
781  static void displayRectangle(const vpImage<unsigned char> &I, const vpImagePoint &topLeft,
782  const vpImagePoint &bottomRight, const vpColor &color, bool fill = false,
783  unsigned int thickness = 1);
784  static void displayRectangle(const vpImage<unsigned char> &I, const vpRect &rectangle, const vpColor &color,
785  bool fill = false, unsigned int thickness = 1);
786  static void displayRectangle(const vpImage<unsigned char> &I, const vpImagePoint &center, float angle,
787  unsigned int width, unsigned int height, const vpColor &color,
788  unsigned int thickness = 1);
789  static void displayRectangle(const vpImage<unsigned char> &I, int i, int j, unsigned int width, unsigned int height,
790  const vpColor &color, bool fill = false, unsigned int thickness = 1);
791  static void displayRectangle(const vpImage<unsigned char> &I, unsigned int i, unsigned int j, float angle,
792  unsigned int width, unsigned int height, const vpColor &color,
793  unsigned int thickness = 1);
794  static void displayROI(const vpImage<unsigned char> &I, const vpRect &roi);
795  static void displayText(const vpImage<unsigned char> &I, const vpImagePoint &ip, const std::string &s,
796  const vpColor &color);
797  static void displayText(const vpImage<unsigned char> &I, int i, int j, const std::string &s, const vpColor &color);
798 
799  static void flush(const vpImage<unsigned char> &I);
800  static void flushROI(const vpImage<unsigned char> &I, const vpRect &roi);
801 
802  static bool getClick(const vpImage<unsigned char> &I, bool blocking = true);
803  static bool getClick(const vpImage<unsigned char> &I, vpImagePoint &ip, bool blocking = true);
804  static bool getClick(const vpImage<unsigned char> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
805  bool blocking = true);
806  static bool getClick(const vpImage<unsigned char> &I, vpMouseButton::vpMouseButtonType &button, bool blocking = true);
807  static bool getClickUp(const vpImage<unsigned char> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
808  bool blocking = true);
809  static bool getClickUp(const vpImage<unsigned char> &I, vpMouseButton::vpMouseButtonType &button,
810  bool blocking = true);
811  static unsigned int getDownScalingFactor(const vpImage<unsigned char> &I);
812  static void getImage(const vpImage<unsigned char> &Is, vpImage<vpRGBa> &Id);
813  static bool getKeyboardEvent(const vpImage<unsigned char> &I, bool blocking = true);
814  static bool getKeyboardEvent(const vpImage<unsigned char> &I, std::string &key, bool blocking = true);
815  static bool getKeyboardEvent(const vpImage<unsigned char> &I, char *key, bool blocking = true);
816  static bool getPointerMotionEvent(const vpImage<unsigned char> &I, vpImagePoint &ip);
817  static bool getPointerPosition(const vpImage<unsigned char> &I, vpImagePoint &ip);
818 
819  static void setBackground(const vpImage<unsigned char> &I, const vpColor &color);
820  static void setFont(const vpImage<unsigned char> &I, const std::string &font);
821  static void setTitle(const vpImage<unsigned char> &I, const std::string &windowtitle);
822  static void setWindowPosition(const vpImage<unsigned char> &I, int winx, int winy);
824 
829  static void close(vpImage<vpRGBa> &I);
830  static void display(const vpImage<vpRGBa> &I);
831  static void displayArrow(const vpImage<vpRGBa> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
832  const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
833  unsigned int thickness = 1);
834  static void displayArrow(const vpImage<vpRGBa> &I, int i1, int j1, int i2, int j2,
835  const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
836  unsigned int thickness = 1);
837  static void displayCamera(const vpImage<vpRGBa> &I, const vpHomogeneousMatrix &cMo, const vpCameraParameters &cam,
838  double size, const vpColor &color, unsigned int thickness);
839  static void displayCharString(const vpImage<vpRGBa> &I, const vpImagePoint &ip, const char *string,
840  const vpColor &color);
841  static void displayCharString(const vpImage<vpRGBa> &I, int i, int j, const char *string, const vpColor &color);
842  static void displayCircle(const vpImage<vpRGBa> &I, const vpImageCircle &circle,
843  const vpColor &color, bool fill = false, unsigned int thickness = 1);
844  static void displayCircle(const vpImage<vpRGBa> &I, const vpImagePoint &center, unsigned int radius,
845  const vpColor &color, bool fill = false, unsigned int thickness = 1);
846  static void displayCircle(const vpImage<vpRGBa> &I, int i, int j, unsigned int radius, const vpColor &color,
847  bool fill = false, unsigned int thickness = 1);
848  static void displayCross(const vpImage<vpRGBa> &I, const vpImagePoint &ip, unsigned int size, const vpColor &color,
849  unsigned int thickness = 1);
850  static void displayCross(const vpImage<vpRGBa> &I, int i, int j, unsigned int size, const vpColor &color,
851  unsigned int thickness = 1);
852  static void displayDotLine(const vpImage<vpRGBa> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
853  const vpColor &color, unsigned int thickness = 1);
854  static void displayDotLine(const vpImage<vpRGBa> &I, int i1, int j1, int i2, int j2, const vpColor &color,
855  unsigned int thickness = 1);
856  static void displayDotLine(const vpImage<vpRGBa> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
857  const vpColor &color, unsigned int thickness = 1);
858  static void displayDotLine(const vpImage<vpRGBa> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
859  const vpColor &color, unsigned int thickness = 1);
860  static void displayEllipse(const vpImage<vpRGBa> &I, const vpImagePoint &center, const double &coef1,
861  const double &coef2, const double &coef3, bool use_centered_moments, const vpColor &color,
862  unsigned int thickness = 1, bool display_center = false, bool display_arc = false);
863  static void displayEllipse(const vpImage<vpRGBa> &I, const vpImagePoint &center, const double &coef1,
864  const double &coef2, const double &coef3, const double &theta1, const double &theta2,
865  bool use_centered_moments, const vpColor &color, unsigned int thickness = 1,
866  bool display_center = false, bool display_arc = false);
867  static void displayFrame(const vpImage<vpRGBa> &I, const vpHomogeneousMatrix &cMo, const vpCameraParameters &cam,
868  double size, const vpColor &color = vpColor::none, unsigned int thickness = 1,
869  const vpImagePoint &offset = vpImagePoint(0, 0), const std::string &frameName = "",
870  const vpColor &textColor = vpColor::black, const vpImagePoint &textOffset = vpImagePoint(15, 15));
871  static void displayLine(const vpImage<vpRGBa> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
872  const vpColor &color, unsigned int thickness = 1, bool segment = true);
873  static void displayLine(const vpImage<vpRGBa> &I, int i1, int j1, int i2, int j2, const vpColor &color,
874  unsigned int thickness = 1, bool segment = true);
875  static void displayLine(const vpImage<vpRGBa> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
876  const vpColor &color, unsigned int thickness = 1);
877  static void displayLine(const vpImage<vpRGBa> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
878  const vpColor &color, unsigned int thickness = 1);
879  static void displayPoint(const vpImage<vpRGBa> &I, const vpImagePoint &ip, const vpColor &color,
880  unsigned int thickness = 1);
881  static void displayPoint(const vpImage<vpRGBa> &I, int i, int j, const vpColor &color, unsigned int thickness = 1);
882  static void displayPolygon(const vpImage<vpRGBa> &I, const std::vector<vpImagePoint> &vip, const vpColor &color,
883  unsigned int thickness = 1, bool closed = true);
884  static void displayRectangle(const vpImage<vpRGBa> &I, const vpImagePoint &topLeft, unsigned int width,
885  unsigned int height, const vpColor &color, bool fill = false,
886  unsigned int thickness = 1);
887  static void displayRectangle(const vpImage<vpRGBa> &I, const vpImagePoint &topLeft, const vpImagePoint &bottomRight,
888  const vpColor &color, bool fill = false, unsigned int thickness = 1);
889  static void displayRectangle(const vpImage<vpRGBa> &I, const vpRect &rectangle, const vpColor &color,
890  bool fill = false, unsigned int thickness = 1);
891  static void displayRectangle(const vpImage<vpRGBa> &I, const vpImagePoint &center, float angle, unsigned int width,
892  unsigned int height, const vpColor &color, unsigned int thickness = 1);
893  static void displayRectangle(const vpImage<vpRGBa> &I, int i, int j, unsigned int width, unsigned int height,
894  const vpColor &color, bool fill = false, unsigned int thickness = 1);
895  static void displayRectangle(const vpImage<vpRGBa> &I, unsigned int i, unsigned int j, float angle,
896  unsigned int width, unsigned int height, const vpColor &color,
897  unsigned int thickness = 1);
898  static void displayROI(const vpImage<vpRGBa> &I, const vpRect &roi);
899  static void displayText(const vpImage<vpRGBa> &I, const vpImagePoint &ip, const std::string &s, const vpColor &color);
900  static void displayText(const vpImage<vpRGBa> &I, int i, int j, const std::string &s, const vpColor &color);
901 
902  static void flush(const vpImage<vpRGBa> &I);
903  static void flushROI(const vpImage<vpRGBa> &I, const vpRect &roi);
904 
905  static bool getClick(const vpImage<vpRGBa> &I, bool blocking = true);
906  static bool getClick(const vpImage<vpRGBa> &I, vpImagePoint &ip, bool blocking = true);
907  static bool getClick(const vpImage<vpRGBa> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
908  bool blocking = true);
909  static bool getClick(const vpImage<vpRGBa> &I, vpMouseButton::vpMouseButtonType &button, bool blocking = true);
910  static bool getClickUp(const vpImage<vpRGBa> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
911  bool blocking = true);
912  static bool getClickUp(const vpImage<vpRGBa> &I, vpMouseButton::vpMouseButtonType &button, bool blocking = true);
913  static unsigned int getDownScalingFactor(const vpImage<vpRGBa> &I);
914  static void getImage(const vpImage<vpRGBa> &Is, vpImage<vpRGBa> &Id);
915  static bool getKeyboardEvent(const vpImage<vpRGBa> &I, bool blocking = true);
916  static bool getKeyboardEvent(const vpImage<vpRGBa> &I, std::string &key, bool blocking = true);
917  static bool getKeyboardEvent(const vpImage<vpRGBa> &I, char *key, bool blocking = true);
918  static bool getPointerMotionEvent(const vpImage<vpRGBa> &I, vpImagePoint &ip);
919  static bool getPointerPosition(const vpImage<vpRGBa> &I, vpImagePoint &ip);
920 
921  static void setBackground(const vpImage<vpRGBa> &I, const vpColor &color);
922  static void setFont(const vpImage<vpRGBa> &I, const std::string &font);
923  static void setTitle(const vpImage<vpRGBa> &I, const std::string &windowtitle);
924  static void setWindowPosition(const vpImage<vpRGBa> &I, int winx, int winy);
926 
927 private:
929  virtual void getImage(vpImage<vpRGBa> &I) = 0;
930 };
931 
932 #endif
Generic class defining intrinsic camera parameters.
Class to define RGB colors available for display functionalities.
Definition: vpColor.h:152
static const vpColor white
Definition: vpColor.h:206
static const vpColor black
Definition: vpColor.h:205
static const vpColor none
Definition: vpColor.h:223
static const vpColor green
Definition: vpColor.h:214
Class that defines generic functionalities for display.
Definition: vpDisplay.h:173
unsigned int m_height
Definition: vpDisplay.h:212
vpScaleType m_scaleType
Definition: vpDisplay.h:215
unsigned int m_width
Definition: vpDisplay.h:211
int getWindowXPosition() const
Definition: vpDisplay.h:247
bool isInitialised()
Definition: vpDisplay.h:259
int m_windowXPosition
display position
Definition: vpDisplay.h:208
std::string m_title
Definition: vpDisplay.h:213
int m_windowYPosition
display position
Definition: vpDisplay.h:210
unsigned int m_scale
Definition: vpDisplay.h:214
int getWindowYPosition() const
Definition: vpDisplay.h:252
unsigned int getHeight() const
Definition: vpDisplay.h:236
bool m_displayHasBeenInitialized
display has been initialized
Definition: vpDisplay.h:206
unsigned int getDownScalingFactor()
Definition: vpDisplay.h:231
unsigned int getWidth() const
Definition: vpDisplay.h:241
Implementation of an homogeneous matrix and operations on such kind of matrices.
Class that defines a 2D circle in an image.
Definition: vpImageCircle.h:56
float getRadius() const
vpImagePoint getCenter() const
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
Definition: vpImagePoint.h:82
Defines a rectangle in the plane.
Definition: vpRect.h:76