Visual Servoing Platform version 3.6.0
Loading...
Searching...
No Matches
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
172class VISP_EXPORT vpDisplay
173{
174public:
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
204protected:
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
219public:
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
927private:
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.
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 of the vpImage class member functions.
Definition vpImage.h:135
Defines a rectangle in the plane.
Definition vpRect.h:76