46 #include <visp3/core/vpCameraParameters.h>
47 #include <visp3/core/vpColor.h>
48 #include <visp3/core/vpHomogeneousMatrix.h>
49 #include <visp3/core/vpImage.h>
50 #include <visp3/core/vpImagePoint.h>
51 #include <visp3/core/vpMouseButton.h>
52 #include <visp3/core/vpRect.h>
215 void setScale(
vpScaleType scaleType,
unsigned int width,
unsigned int height);
224 unsigned int computeAutoScale(
unsigned int width,
unsigned int height);
234 inline unsigned int getHeight()
const {
return m_height; }
239 inline unsigned int getWidth()
const {
return m_width; }
258 virtual void setDownScalingFactor(
unsigned int scale);
259 virtual void setDownScalingFactor(vpScaleType scaleType);
262 #ifndef DOXYGEN_SHOULD_SKIP_THIS
273 virtual void closeDisplay() = 0;
285 unsigned int w = 4,
unsigned int h = 2,
unsigned int thickness = 1) = 0;
307 virtual void displayCircle(
const vpImagePoint ¢er,
unsigned int radius,
const vpColor &color,
bool fill =
false,
308 unsigned int thickness = 1) = 0;
317 unsigned int thickness = 1) = 0;
326 unsigned int thickness = 1) = 0;
335 unsigned int thickness = 1) = 0;
364 unsigned int height) = 0;
366 unsigned int height) = 0;
374 virtual void displayPoint(
const vpImagePoint &ip,
const vpColor &color,
unsigned int thickness = 1) = 0;
390 virtual void displayRectangle(
const vpImagePoint &topLeft,
unsigned int width,
unsigned int height,
391 const vpColor &color,
bool fill =
false,
unsigned int thickness = 1) = 0;
406 bool fill =
false,
unsigned int thickness = 1) = 0;
420 virtual void displayRectangle(
const vpRect &rectangle,
const vpColor &color,
bool fill =
false,
421 unsigned int thickness = 1) = 0;
427 virtual void flushDisplay() = 0;
433 virtual void flushDisplayROI(
const vpImagePoint &iP,
unsigned int width,
unsigned int height) = 0;
452 virtual bool getClick(
bool blocking =
true) = 0;
469 virtual bool getClick(
vpImagePoint &ip,
bool blocking =
true) = 0;
528 virtual bool getKeyboardEvent(
bool blocking =
true) = 0;
548 virtual bool getKeyboardEvent(std::string &key,
bool blocking =
true) = 0;
559 virtual bool getPointerMotionEvent(
vpImagePoint &ip) = 0;
576 virtual unsigned int getScreenHeight() = 0;
581 virtual void getScreenSize(
unsigned int &width,
unsigned int &height) = 0;
585 virtual unsigned int getScreenWidth() = 0;
605 virtual void init(
vpImage<vpRGBa> &I,
int x = -1,
int y = -1,
const std::string &title =
"") = 0;
667 virtual void init(
unsigned int width,
unsigned int height,
int x = -1,
int y = -1,
const std::string &title =
"") = 0;
682 virtual void setFont(
const std::string &font) = 0;
687 virtual void setTitle(
const std::string &title) = 0;
695 virtual void setWindowPosition(
int x,
int y) = 0;
697 #endif // ifndef DOXYGEN_SHOULD_SKIP_THIS
707 unsigned int thickness = 1);
710 unsigned int thickness = 1);
718 const vpColor &color,
bool fill =
false,
unsigned int thickness = 1);
720 bool fill =
false,
unsigned int thickness = 1);
722 const vpColor &color,
unsigned int thickness = 1);
724 unsigned int thickness = 1);
726 const vpColor &color,
unsigned int thickness = 1);
728 unsigned int thickness = 1);
730 bool closeTheShape,
const vpColor &color,
unsigned int thickness = 1);
732 const double &coef2,
const double &coef3,
bool use_centered_moments,
const vpColor &color,
733 unsigned int thickness = 1);
735 const double &coef2,
const double &coef3,
const double &theta1,
const double &theta2,
736 bool use_centered_moments,
const vpColor &color,
unsigned int thickness = 1);
741 const vpColor &color,
unsigned int thickness = 1,
bool segment =
true);
743 unsigned int thickness = 1,
bool segment =
true);
745 bool closeTheShape,
const vpColor &color,
unsigned int thickness = 1);
747 unsigned int thickness = 1);
749 unsigned int thickness = 1);
751 const vpColor &color,
unsigned int thickness = 1,
bool closed =
true);
753 unsigned int height,
const vpColor &color,
bool fill =
false,
754 unsigned int thickness = 1);
757 unsigned int thickness = 1);
759 bool fill =
false,
unsigned int thickness = 1);
761 unsigned int width,
unsigned int height,
const vpColor &color,
762 unsigned int thickness = 1);
763 static void displayRectangle(
const vpImage<unsigned char> &I,
int i,
int j,
unsigned int width,
unsigned int height,
764 const vpColor &color,
bool fill =
false,
unsigned int thickness = 1);
765 static void displayRectangle(
const vpImage<unsigned char> &I,
unsigned int i,
unsigned int j,
float angle,
766 unsigned int width,
unsigned int height,
const vpColor &color,
767 unsigned int thickness = 1);
779 bool blocking =
true);
782 bool blocking =
true);
784 bool blocking =
true);
807 unsigned int thickness = 1);
808 static void displayArrow(
const vpImage<vpRGBa> &I,
int i1,
int j1,
int i2,
int j2,
810 unsigned int thickness = 1);
812 double size,
const vpColor &color,
unsigned int thickness);
815 static void displayCharString(
const vpImage<vpRGBa> &I,
int i,
int j,
const char *
string,
const vpColor &color);
817 const vpColor &color,
bool fill =
false,
unsigned int thickness = 1);
818 static void displayCircle(
const vpImage<vpRGBa> &I,
int i,
int j,
unsigned int radius,
const vpColor &color,
819 bool fill =
false,
unsigned int thickness = 1);
821 unsigned int thickness = 1);
823 unsigned int thickness = 1);
825 const vpColor &color,
unsigned int thickness = 1);
826 static void displayDotLine(
const vpImage<vpRGBa> &I,
int i1,
int j1,
int i2,
int j2,
const vpColor &color,
827 unsigned int thickness = 1);
828 static void displayDotLine(
const vpImage<vpRGBa> &I,
const std::vector<vpImagePoint> &ips,
bool closeTheShape,
829 const vpColor &color,
unsigned int thickness = 1);
831 const double &coef2,
const double &coef3,
bool use_centered_moments,
const vpColor &color,
832 unsigned int thickness = 1);
834 const double &coef2,
const double &coef3,
const double &theta1,
const double &theta2,
835 bool use_centered_moments,
const vpColor &color,
unsigned int thickness = 1);
840 const vpColor &color,
unsigned int thickness = 1,
bool segment =
true);
842 unsigned int thickness = 1,
bool segment =
true);
843 static void displayLine(
const vpImage<vpRGBa> &I,
const std::vector<vpImagePoint> &ips,
bool closeTheShape,
844 const vpColor &color,
unsigned int thickness = 1);
846 unsigned int thickness = 1);
847 static void displayPoint(
const vpImage<vpRGBa> &I,
int i,
int j,
const vpColor &color,
unsigned int thickness = 1);
848 static void displayPolygon(
const vpImage<vpRGBa> &I,
const std::vector<vpImagePoint> &vip,
const vpColor &color,
849 unsigned int thickness = 1,
bool closed =
true);
851 unsigned int height,
const vpColor &color,
bool fill =
false,
852 unsigned int thickness = 1);
854 const vpColor &color,
bool fill =
false,
unsigned int thickness = 1);
856 bool fill =
false,
unsigned int thickness = 1);
858 unsigned int height,
const vpColor &color,
unsigned int thickness = 1);
859 static void displayRectangle(
const vpImage<vpRGBa> &I,
int i,
int j,
unsigned int width,
unsigned int height,
860 const vpColor &color,
bool fill =
false,
unsigned int thickness = 1);
861 static void displayRectangle(
const vpImage<vpRGBa> &I,
unsigned int i,
unsigned int j,
float angle,
862 unsigned int width,
unsigned int height,
const vpColor &color,
863 unsigned int thickness = 1);
866 static void displayText(
const vpImage<vpRGBa> &I,
int i,
int j,
const std::string &s,
const vpColor &color);
874 bool blocking =
true);
877 bool blocking =
true);
881 static bool getKeyboardEvent(
const vpImage<vpRGBa> &I,
bool blocking =
true);
882 static bool getKeyboardEvent(
const vpImage<vpRGBa> &I, std::string &key,
bool blocking =
true);
883 static bool getKeyboardEvent(
const vpImage<vpRGBa> &I,
char *key,
bool blocking =
true);
888 static void setFont(
const vpImage<vpRGBa> &I,
const std::string &font);
889 static void setTitle(
const vpImage<vpRGBa> &I,
const std::string &windowtitle);
890 static void setWindowPosition(
const vpImage<vpRGBa> &I,
int winx,
int winy);