add missing functions to the nvg wrapper

pull/3471/head
kallaballa 2 years ago
parent 533727570a
commit fd158a3800
  1. 14
      modules/v4d/include/opencv2/v4d/nvg.hpp
  2. 48
      modules/v4d/src/nvg.cpp

@ -143,6 +143,13 @@ public:
float degToRad(float deg);
float radToDeg(float rad);
int createImage(const char* filename, int imageFlags);
int createImageMem(int imageFlags, unsigned char* data, int ndata);
int createImageRGBA(int w, int h, int imageFlags, const unsigned char* data);
void updateImage(int image, const unsigned char* data);
void imageSize(int image, int* w, int* h);
void deleteImage(int image);
void beginPath();
void moveTo(float x, float y);
void lineTo(float x, float y);
@ -388,6 +395,13 @@ CV_EXPORTS float degToRad(float deg);
*/
CV_EXPORTS float radToDeg(float rad);
CV_EXPORTS int createImage(const char* filename, int imageFlags);
CV_EXPORTS int createImageMem(int imageFlags, unsigned char* data, int ndata);
CV_EXPORTS int createImageRGBA(int w, int h, int imageFlags, const unsigned char* data);
CV_EXPORTS void updateImage(int image, const unsigned char* data);
CV_EXPORTS void imageSize(int image, int* w, int* h);
CV_EXPORTS void deleteImage(int image);
/*!
* A forward to nvgBeginPath. See https://github.com/memononen/nanovg/blob/master/src/nanovg.h
*/

@ -238,6 +238,30 @@ float NVG::radToDeg(float rad) {
return nvgRadToDeg(rad);
}
int NVG::createImage(const char* filename, int imageFlags) {
return nvgCreateImage(getContext(), filename, imageFlags);
}
int NVG::createImageMem(int imageFlags, unsigned char* data, int ndata) {
return nvgCreateImageMem(getContext(), imageFlags, data, ndata);
}
int NVG::createImageRGBA(int w, int h, int imageFlags, const unsigned char* data) {
return nvgCreateImageRGBA(getContext(), w, h, imageFlags, data);
}
void NVG::updateImage(int image, const unsigned char* data) {
nvgUpdateImage(getContext(), image, data);
}
void NVG::imageSize(int image, int* w, int* h) {
nvgImageSize(getContext(), image, w, h);
}
void NVG::deleteImage(int image) {
nvgDeleteImage(getContext(), image);
}
void NVG::beginPath() {
nvgBeginPath(getContext());
}
@ -559,6 +583,30 @@ float radToDeg(float rad) {
return detail::NVG::getCurrentContext()->radToDeg(rad);
}
int createImage(const char* filename, int imageFlags) {
return detail::NVG::getCurrentContext()->createImage(filename, imageFlags);
}
int createImageMem(int imageFlags, unsigned char* data, int ndata) {
return detail::NVG::getCurrentContext()->createImageMem(imageFlags, data, ndata);
}
int createImageRGBA(int w, int h, int imageFlags, const unsigned char* data) {
return detail::NVG::getCurrentContext()->createImageRGBA(w, h, imageFlags, data);
}
void updateImage(int image, const unsigned char* data) {
detail::NVG::getCurrentContext()->updateImage(image, data);
}
void imageSize(int image, int* w, int* h) {
detail::NVG::getCurrentContext()->imageSize(image, w, h);
}
void deleteImage(int image) {
detail::NVG::getCurrentContext()->deleteImage(image);
}
void beginPath() {
detail::NVG::getCurrentContext()->beginPath();
}

Loading…
Cancel
Save