Visual Servoing Platform version 3.7.0
Loading...
Searching...
No Matches
vpDisplay.h
1/*
2 * ViSP, open source Visual Servoing Platform software.
3 * Copyright (C) 2005 - 2024 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
39
40#ifndef VP_DISPLAY_H
41#define VP_DISPLAY_H
42
43#include <list>
44#include <sstream>
45#include <string>
46
47#include <visp3/core/vpCameraParameters.h>
48#include <visp3/core/vpColor.h>
49#include <visp3/core/vpHomogeneousMatrix.h>
50#include <visp3/core/vpImage.h>
51#include <visp3/core/vpImageCircle.h>
52#include <visp3/core/vpImagePoint.h>
53#include <visp3/core/vpMouseButton.h>
54#include <visp3/core/vpPolygon.h>
55#include <visp3/core/vpRect.h>
56
170class VISP_EXPORT vpDisplay
171{
172public:
201
202public:
203 vpDisplay();
204 vpDisplay(const vpDisplay &d);
205 virtual ~vpDisplay();
206
207#if (VISP_CXX_STANDARD > VISP_CXX_STANDARD_98)
208 vpDisplay &operator=(const vpDisplay &) = default;
209#endif
210
213 unsigned int computeAutoScale(unsigned int width, unsigned int height);
218 unsigned int getDownScalingFactor() { return m_scale; }
223 inline unsigned int getHeight() const { return m_height; }
228 inline unsigned int getWidth() const { return m_width; }
229
234 int getWindowXPosition() const { return m_windowXPosition; }
239 int getWindowYPosition() const { return m_windowYPosition; }
240
247 virtual void setDownScalingFactor(unsigned int scale);
248 virtual void setDownScalingFactor(vpScaleType scaleType);
250
251#ifndef DOXYGEN_SHOULD_SKIP_THIS
254
258 virtual void clearDisplay(const vpColor &color = vpColor::white) = 0;
262 virtual void closeDisplay() = 0;
263
273 virtual void displayArrow(const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color = vpColor::white,
274 unsigned int w = 4, unsigned int h = 2, unsigned int thickness = 1) = 0;
275
284 inline virtual void displayCircle(const vpImageCircle &circle, const vpColor &color, bool fill = false,
285 unsigned int thickness = 1)
286 {
287 this->displayCircle(circle.getCenter(), static_cast<unsigned int>(circle.getRadius()), color, fill, thickness);
288 }
289
299 virtual void displayCircle(const vpImagePoint &center, unsigned int radius, const vpColor &color, bool fill = false,
300 unsigned int thickness = 1) = 0;
308 virtual void displayCross(const vpImagePoint &ip, unsigned int size, const vpColor &color,
309 unsigned int thickness = 1) = 0;
317 virtual void displayDotLine(const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color,
318 unsigned int thickness = 1) = 0;
326 virtual void displayLine(const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color,
327 unsigned int thickness = 1) = 0;
328
336 virtual void displayImage(const vpImage<unsigned char> &I) = 0;
337
345 virtual void displayImage(const vpImage<vpRGBa> &I) = 0;
346
347 virtual void displayImageROI(const vpImage<unsigned char> &I, const vpImagePoint &iP, unsigned int width,
348 unsigned int height) = 0;
349 virtual void displayImageROI(const vpImage<vpRGBa> &I, const vpImagePoint &iP, unsigned int width,
350 unsigned int height) = 0;
351
358 virtual void displayPoint(const vpImagePoint &ip, const vpColor &color, unsigned int thickness = 1) = 0;
359
373 virtual void displayRectangle(const vpImagePoint &topLeft, unsigned int width, unsigned int height,
374 const vpColor &color, bool fill = false, unsigned int thickness = 1) = 0;
387 virtual void displayRectangle(const vpImagePoint &topLeft, const vpImagePoint &bottomRight, const vpColor &color,
388 bool fill = false, unsigned int thickness = 1) = 0;
400 virtual void displayRectangle(const vpRect &rectangle, const vpColor &color, bool fill = false,
401 unsigned int thickness = 1) = 0;
402
414 virtual void displayText(const vpImagePoint &ip, const std::string &text, const vpColor &color = vpColor::green) = 0;
415
420 virtual void flushDisplay() = 0;
421
426 virtual void flushDisplayROI(const vpImagePoint &iP, unsigned int width, unsigned int height) = 0;
427
428 /* Simple interface with the mouse event */
429
445 virtual bool getClick(bool blocking = true) = 0;
446
462 virtual bool getClick(vpImagePoint &ip, bool blocking = true) = 0;
481 virtual bool getClick(vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button, bool blocking = true) = 0;
504 virtual bool getClickUp(vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button, bool blocking = true) = 0;
505
521 virtual bool getKeyboardEvent(bool blocking = true) = 0;
540 virtual bool getKeyboardEvent(std::string &key, bool blocking = true) = 0;
551 virtual bool getPointerMotionEvent(vpImagePoint &ip) = 0;
552
563 virtual bool getPointerPosition(vpImagePoint &ip) = 0;
564
568 virtual unsigned int getScreenHeight() = 0;
574 virtual void getScreenSize(unsigned int &width, unsigned int &height) = 0;
578 virtual unsigned int getScreenWidth() = 0;
579
588 virtual void init(vpImage<unsigned char> &I, int x = -1, int y = -1, const std::string &title = "") = 0;
598 virtual void init(vpImage<vpRGBa> &I, int x = -1, int y = -1, const std::string &title = "") = 0;
599
664 virtual void init(unsigned int width, unsigned int height, int x = -1, int y = -1, const std::string &title = "") = 0;
665
679 virtual void setFont(const std::string &font) = 0;
684 virtual void setTitle(const std::string &title) = 0;
692 virtual void setWindowPosition(int x, int y) = 0;
694#endif // ifndef DOXYGEN_SHOULD_SKIP_THIS
695
700 static void close(vpImage<unsigned char> &I);
701 static void display(const vpImage<unsigned char> &I);
702 static void displayArrow(const vpImage<unsigned char> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
703 const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
704 unsigned int thickness = 1);
705 static void displayArrow(const vpImage<unsigned char> &I, int i1, int j1, int i2, int j2,
706 const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
707 unsigned int thickness = 1);
708 static void displayCamera(const vpImage<unsigned char> &I, const vpHomogeneousMatrix &cMo,
709 const vpCameraParameters &cam, double size, const vpColor &color, unsigned int thickness);
710 static void displayCircle(const vpImage<unsigned char> &I, const vpImageCircle &circle,
711 const vpColor &color, bool fill = false, unsigned int thickness = 1);
712 static void displayCircle(const vpImage<unsigned char> &I, const vpImagePoint &center, unsigned int radius,
713 const vpColor &color, bool fill = false, unsigned int thickness = 1);
714 static void displayCircle(const vpImage<unsigned char> &I, int i, int j, unsigned int radius, const vpColor &color,
715 bool fill = false, unsigned int thickness = 1);
716 static void displayCross(const vpImage<unsigned char> &I, const vpImagePoint &ip, unsigned int size,
717 const vpColor &color, unsigned int thickness = 1);
718 static void displayCross(const vpImage<unsigned char> &I, int i, int j, unsigned int size, const vpColor &color,
719 unsigned int thickness = 1);
720 static void displayDotLine(const vpImage<unsigned char> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
721 const vpColor &color, unsigned int thickness = 1);
722 static void displayDotLine(const vpImage<unsigned char> &I, int i1, int j1, int i2, int j2, const vpColor &color,
723 unsigned int thickness = 1);
724 static void displayDotLine(const vpImage<unsigned char> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
725 const vpColor &color, unsigned int thickness = 1);
726 static void displayDotLine(const vpImage<unsigned char> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
727 const vpColor &color, unsigned int thickness = 1);
728 static void displayEllipse(const vpImage<unsigned char> &I, const vpImagePoint &center, const double &coef1,
729 const double &coef2, const double &coef3, bool use_normalized_centered_moments,
730 const vpColor &color, unsigned int thickness = 1, bool display_center = false,
731 bool display_arc = false);
732 static void displayEllipse(const vpImage<unsigned char> &I, const vpImagePoint &center, const double &coef1,
733 const double &coef2, const double &coef3, const double &smallalpha,
734 const double &highalpha, bool use_normalized_centered_moments, const vpColor &color,
735 unsigned int thickness = 1, bool display_center = false, bool display_arc = false);
736 static void displayFrame(const vpImage<unsigned char> &I, const vpHomogeneousMatrix &cMo,
737 const vpCameraParameters &cam, double size, const vpColor &color = vpColor::none,
738 unsigned int thickness = 1, const vpImagePoint &offset = vpImagePoint(0, 0),
739 const std::string &frameName = "", const vpColor &textColor = vpColor::black, const vpImagePoint &textOffset = vpImagePoint(15, 15));
740 static void displayLine(const vpImage<unsigned char> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
741 const vpColor &color, unsigned int thickness = 1, bool segment = true);
742 static void displayLine(const vpImage<unsigned char> &I, int i1, int j1, int i2, int j2, const vpColor &color,
743 unsigned int thickness = 1, bool segment = true);
744 static void displayLine(const vpImage<unsigned char> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
745 const vpColor &color, unsigned int thickness = 1);
746 static void displayLine(const vpImage<unsigned char> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
747 const vpColor &color, unsigned int thickness = 1);
748 static void displayPoint(const vpImage<unsigned char> &I, const vpImagePoint &ip, const vpColor &color,
749 unsigned int thickness = 1);
750 static void displayPoint(const vpImage<unsigned char> &I, int i, int j, const vpColor &color,
751 unsigned int thickness = 1);
752 static void displayPolygon(const vpImage<unsigned char> &I, const std::vector<vpImagePoint> &vip,
753 const vpColor &color, unsigned int thickness = 1, bool closed = true);
754 static void displayPolygon(const vpImage<unsigned char> &I, const vpPolygon &polygon,
755 const vpColor &color, unsigned int thickness = 1, bool closed = true);
756 static void displayRectangle(const vpImage<unsigned char> &I, const vpImagePoint &topLeft, unsigned int width,
757 unsigned int height, const vpColor &color, bool fill = false,
758 unsigned int thickness = 1);
759 static void displayRectangle(const vpImage<unsigned char> &I, const vpImagePoint &topLeft,
760 const vpImagePoint &bottomRight, const vpColor &color, bool fill = false,
761 unsigned int thickness = 1);
762 static void displayRectangle(const vpImage<unsigned char> &I, const vpRect &rectangle, const vpColor &color,
763 bool fill = false, unsigned int thickness = 1);
764 static void displayRectangle(const vpImage<unsigned char> &I, const vpImagePoint &center, float angle,
765 unsigned int width, unsigned int height, const vpColor &color,
766 unsigned int thickness = 1);
767 static void displayRectangle(const vpImage<unsigned char> &I, int i, int j, unsigned int width, unsigned int height,
768 const vpColor &color, bool fill = false, unsigned int thickness = 1);
769 static void displayRectangle(const vpImage<unsigned char> &I, unsigned int i, unsigned int j, float angle,
770 unsigned int width, unsigned int height, const vpColor &color,
771 unsigned int thickness = 1);
772 static void displayROI(const vpImage<unsigned char> &I, const vpRect &roi);
773 static void displayText(const vpImage<unsigned char> &I, const vpImagePoint &ip, const std::string &s,
774 const vpColor &color);
775 static void displayText(const vpImage<unsigned char> &I, int i, int j, const std::string &s, const vpColor &color);
776
777 static void flush(const vpImage<unsigned char> &I);
778 static void flushROI(const vpImage<unsigned char> &I, const vpRect &roi);
779
780 static bool getClick(const vpImage<unsigned char> &I, bool blocking = true);
781 static bool getClick(const vpImage<unsigned char> &I, vpImagePoint &ip, bool blocking = true);
782 static bool getClick(const vpImage<unsigned char> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
783 bool blocking = true);
784 static bool getClick(const vpImage<unsigned char> &I, vpMouseButton::vpMouseButtonType &button, bool blocking = true);
785 static bool getClickUp(const vpImage<unsigned char> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
786 bool blocking = true);
787 static bool getClickUp(const vpImage<unsigned char> &I, vpMouseButton::vpMouseButtonType &button,
788 bool blocking = true);
789 static unsigned int getDownScalingFactor(const vpImage<unsigned char> &I);
790 static void getImage(const vpImage<unsigned char> &Is, vpImage<vpRGBa> &Id);
791 static bool getKeyboardEvent(const vpImage<unsigned char> &I, bool blocking = true);
792 static bool getKeyboardEvent(const vpImage<unsigned char> &I, std::string &key, bool blocking = true);
793 static bool getKeyboardEvent(const vpImage<unsigned char> &I, char *key, bool blocking = true);
794 static bool getPointerMotionEvent(const vpImage<unsigned char> &I, vpImagePoint &ip);
795 static bool getPointerPosition(const vpImage<unsigned char> &I, vpImagePoint &ip);
796
797 static void setBackground(const vpImage<unsigned char> &I, const vpColor &color);
798 static void setFont(const vpImage<unsigned char> &I, const std::string &font);
799 static void setTitle(const vpImage<unsigned char> &I, const std::string &windowtitle);
800 static void setWindowPosition(const vpImage<unsigned char> &I, int winx, int winy);
802
807 static void close(vpImage<vpRGBa> &I);
808 static void display(const vpImage<vpRGBa> &I);
809 static void displayArrow(const vpImage<vpRGBa> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
810 const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
811 unsigned int thickness = 1);
812 static void displayArrow(const vpImage<vpRGBa> &I, int i1, int j1, int i2, int j2,
813 const vpColor &color = vpColor::white, unsigned int w = 4, unsigned int h = 2,
814 unsigned int thickness = 1);
815 static void displayCamera(const vpImage<vpRGBa> &I, const vpHomogeneousMatrix &cMo, const vpCameraParameters &cam,
816 double size, const vpColor &color, unsigned int thickness);
817 static void displayCircle(const vpImage<vpRGBa> &I, const vpImageCircle &circle,
818 const vpColor &color, bool fill = false, unsigned int thickness = 1);
819 static void displayCircle(const vpImage<vpRGBa> &I, const vpImagePoint &center, unsigned int radius,
820 const vpColor &color, bool fill = false, unsigned int thickness = 1);
821 static void displayCircle(const vpImage<vpRGBa> &I, int i, int j, unsigned int radius, const vpColor &color,
822 bool fill = false, unsigned int thickness = 1);
823 static void displayCross(const vpImage<vpRGBa> &I, const vpImagePoint &ip, unsigned int size, const vpColor &color,
824 unsigned int thickness = 1);
825 static void displayCross(const vpImage<vpRGBa> &I, int i, int j, unsigned int size, const vpColor &color,
826 unsigned int thickness = 1);
827 static void displayDotLine(const vpImage<vpRGBa> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
828 const vpColor &color, unsigned int thickness = 1);
829 static void displayDotLine(const vpImage<vpRGBa> &I, int i1, int j1, int i2, int j2, const vpColor &color,
830 unsigned int thickness = 1);
831 static void displayDotLine(const vpImage<vpRGBa> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
832 const vpColor &color, unsigned int thickness = 1);
833 static void displayDotLine(const vpImage<vpRGBa> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
834 const vpColor &color, unsigned int thickness = 1);
835 static void displayEllipse(const vpImage<vpRGBa> &I, const vpImagePoint &center, const double &coef1,
836 const double &coef2, const double &coef3, bool use_centered_moments, const vpColor &color,
837 unsigned int thickness = 1, bool display_center = false, bool display_arc = false);
838 static void displayEllipse(const vpImage<vpRGBa> &I, const vpImagePoint &center, const double &coef1,
839 const double &coef2, const double &coef3, const double &theta1, const double &theta2,
840 bool use_centered_moments, const vpColor &color, unsigned int thickness = 1,
841 bool display_center = false, bool display_arc = false);
842 static void displayFrame(const vpImage<vpRGBa> &I, const vpHomogeneousMatrix &cMo, const vpCameraParameters &cam,
843 double size, const vpColor &color = vpColor::none, unsigned int thickness = 1,
844 const vpImagePoint &offset = vpImagePoint(0, 0), const std::string &frameName = "",
845 const vpColor &textColor = vpColor::black, const vpImagePoint &textOffset = vpImagePoint(15, 15));
846 static void displayLine(const vpImage<vpRGBa> &I, const vpImagePoint &ip1, const vpImagePoint &ip2,
847 const vpColor &color, unsigned int thickness = 1, bool segment = true);
848 static void displayLine(const vpImage<vpRGBa> &I, int i1, int j1, int i2, int j2, const vpColor &color,
849 unsigned int thickness = 1, bool segment = true);
850 static void displayLine(const vpImage<vpRGBa> &I, const std::vector<vpImagePoint> &ips, bool closeTheShape,
851 const vpColor &color, unsigned int thickness = 1);
852 static void displayLine(const vpImage<vpRGBa> &I, const std::list<vpImagePoint> &ips, bool closeTheShape,
853 const vpColor &color, unsigned int thickness = 1);
854 static void displayPoint(const vpImage<vpRGBa> &I, const vpImagePoint &ip, const vpColor &color,
855 unsigned int thickness = 1);
856 static void displayPoint(const vpImage<vpRGBa> &I, int i, int j, const vpColor &color, unsigned int thickness = 1);
857 static void displayPolygon(const vpImage<vpRGBa> &I, const std::vector<vpImagePoint> &vip, const vpColor &color,
858 unsigned int thickness = 1, bool closed = true);
859 static void displayPolygon(const vpImage<vpRGBa> &I, const vpPolygon &polygon,
860 const vpColor &color, unsigned int thickness = 1, bool closed = true);
861 static void displayRectangle(const vpImage<vpRGBa> &I, const vpImagePoint &topLeft, unsigned int width,
862 unsigned int height, const vpColor &color, bool fill = false,
863 unsigned int thickness = 1);
864 static void displayRectangle(const vpImage<vpRGBa> &I, const vpImagePoint &topLeft, const vpImagePoint &bottomRight,
865 const vpColor &color, bool fill = false, unsigned int thickness = 1);
866 static void displayRectangle(const vpImage<vpRGBa> &I, const vpRect &rectangle, const vpColor &color,
867 bool fill = false, unsigned int thickness = 1);
868 static void displayRectangle(const vpImage<vpRGBa> &I, const vpImagePoint &center, float angle, unsigned int width,
869 unsigned int height, const vpColor &color, unsigned int thickness = 1);
870 static void displayRectangle(const vpImage<vpRGBa> &I, int i, int j, unsigned int width, unsigned int height,
871 const vpColor &color, bool fill = false, unsigned int thickness = 1);
872 static void displayRectangle(const vpImage<vpRGBa> &I, unsigned int i, unsigned int j, float angle,
873 unsigned int width, unsigned int height, const vpColor &color,
874 unsigned int thickness = 1);
875 static void displayROI(const vpImage<vpRGBa> &I, const vpRect &roi);
876 static void displayText(const vpImage<vpRGBa> &I, const vpImagePoint &ip, const std::string &s, const vpColor &color);
877 static void displayText(const vpImage<vpRGBa> &I, int i, int j, const std::string &s, const vpColor &color);
878
879 static void flush(const vpImage<vpRGBa> &I);
880 static void flushROI(const vpImage<vpRGBa> &I, const vpRect &roi);
881
882 static bool getClick(const vpImage<vpRGBa> &I, bool blocking = true);
883 static bool getClick(const vpImage<vpRGBa> &I, vpImagePoint &ip, bool blocking = true);
884 static bool getClick(const vpImage<vpRGBa> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
885 bool blocking = true);
886 static bool getClick(const vpImage<vpRGBa> &I, vpMouseButton::vpMouseButtonType &button, bool blocking = true);
887 static bool getClickUp(const vpImage<vpRGBa> &I, vpImagePoint &ip, vpMouseButton::vpMouseButtonType &button,
888 bool blocking = true);
889 static bool getClickUp(const vpImage<vpRGBa> &I, vpMouseButton::vpMouseButtonType &button, bool blocking = true);
890 static unsigned int getDownScalingFactor(const vpImage<vpRGBa> &I);
891 static void getImage(const vpImage<vpRGBa> &Is, vpImage<vpRGBa> &Id);
892 static bool getKeyboardEvent(const vpImage<vpRGBa> &I, bool blocking = true);
893 static bool getKeyboardEvent(const vpImage<vpRGBa> &I, std::string &key, bool blocking = true);
894 static bool getKeyboardEvent(const vpImage<vpRGBa> &I, char *key, bool blocking = true);
895 static bool getPointerMotionEvent(const vpImage<vpRGBa> &I, vpImagePoint &ip);
896 static bool getPointerPosition(const vpImage<vpRGBa> &I, vpImagePoint &ip);
897
898 static void setBackground(const vpImage<vpRGBa> &I, const vpColor &color);
899 static void setFont(const vpImage<vpRGBa> &I, const std::string &font);
900 static void setTitle(const vpImage<vpRGBa> &I, const std::string &windowtitle);
901 static void setWindowPosition(const vpImage<vpRGBa> &I, int winx, int winy);
903
904#if defined(VISP_BUILD_DEPRECATED_FUNCTIONS)
909 VP_DEPRECATED static void displayCharString(const vpImage<unsigned char> &I, const vpImagePoint &ip, const char *string,
910 const vpColor &color);
911 VP_DEPRECATED static void displayCharString(const vpImage<unsigned char> &I, int i, int j, const char *string,
912 const vpColor &color);
913 VP_DEPRECATED static void displayCharString(const vpImage<vpRGBa> &I, const vpImagePoint &ip, const char *string,
914 const vpColor &color);
915 VP_DEPRECATED static void displayCharString(const vpImage<vpRGBa> &I, int i, int j, const char *string,
916 const vpColor &color);
918#endif
919
920protected:
927 unsigned int m_width;
928 unsigned int m_height;
929 std::string m_title;
930 unsigned int m_scale;
932
933 void setScale(vpScaleType scaleType, unsigned int width, unsigned int height);
934
935private:
937 virtual void getImage(vpImage<vpRGBa> &I) = 0;
938};
939END_VISP_NAMESPACE
940#endif
Class to define RGB colors available for display functionalities.
Definition vpColor.h:157
static const vpColor white
Definition vpColor.h:193
static const vpColor none
Definition vpColor.h:210
static const vpColor black
Definition vpColor.h:192
static const vpColor green
Definition vpColor.h:201
Class that defines generic functionalities for display.
Definition vpDisplay.h:171
unsigned int m_height
Definition vpDisplay.h:928
vpScaleType m_scaleType
Definition vpDisplay.h:931
unsigned int m_width
Definition vpDisplay.h:927
int getWindowXPosition() const
Definition vpDisplay.h:234
bool isInitialised()
Definition vpDisplay.h:246
int m_windowXPosition
display position
Definition vpDisplay.h:924
std::string m_title
Definition vpDisplay.h:929
static void getImage(const vpImage< unsigned char > &Is, vpImage< vpRGBa > &Id)
int m_windowYPosition
display position
Definition vpDisplay.h:926
unsigned int m_scale
Definition vpDisplay.h:930
int getWindowYPosition() const
Definition vpDisplay.h:239
unsigned int getHeight() const
Definition vpDisplay.h:223
vpDisplay & operator=(const vpDisplay &)=default
@ SCALE_DEFAULT
Definition vpDisplay.h:198
bool m_displayHasBeenInitialized
display has been initialized
Definition vpDisplay.h:922
unsigned int computeAutoScale(unsigned int width, unsigned int height)
void setScale(vpScaleType scaleType, unsigned int width, unsigned int height)
unsigned int getDownScalingFactor()
Definition vpDisplay.h:218
unsigned int getWidth() const
Definition vpDisplay.h:228
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:131