![]() |
OpenCV 4.11.0
开源计算机视觉
|
Viz3d 类表示一个 3D 可视化窗口。此类是隐式共享的。更多…
#include <opencv2/viz/viz3d.hpp>
公共类型 | |
| typedef cv::viz::Color | Color |
| typedef void(*) | KeyboardCallback(const KeyboardEvent &, void *) |
| typedef void(*) | MouseCallback(const MouseEvent &, void *) |
公共成员函数 | |
| Viz3d (const String &window_name=String()) | |
| 构造函数。 | |
| Viz3d (const Viz3d &) | |
| ~Viz3d () | |
| void | addLight (const Vec3d &position, const Vec3d &focalPoint=Vec3d(0, 0, 0), const Color &color=Color::white(), const Color &diffuseColor=Color::white(), const Color &ambientColor=Color::black(), const Color &specularColor=Color::white()) |
| 在场景中添加光源。 | |
| void | close () |
| void | converTo3DRay (const Point3d &window_coord, Point3d &origin, Vec3d &direction) |
| 将窗口坐标系中的点转换为世界坐标系中的 3D 射线。 | |
| void | convertToWindowCoordinates (const Point3d &pt, Point3d &window_coord) |
| 将世界坐标系中的点转换为窗口坐标系。 | |
| Camera | getCamera () const |
| 返回一个包含当前查看器内参的相机对象。 | |
| double | getRenderingProperty (const String &id, int property) |
| 返回小部件的渲染属性。 | |
| cv::Mat | getScreenshot () const |
| 返回当前场景的 Mat 屏幕截图。 | |
| Affine3d | getViewerPose () const |
| 返回查看器的当前姿态。 | |
| Widget | getWidget (const String &id) const |
| 从窗口中检索小部件。 | |
| Affine3d | getWidgetPose (const String &id) const |
| 返回窗口中小部件的当前姿态。 | |
| String | getWindowName () const |
返回在构造函数中设置的窗口名称。如有必要,会在名称前添加 Viz -。 | |
| Size | getWindowSize () const |
| 返回窗口的当前大小。 | |
| Viz3d & | operator= (const Viz3d &) |
| void | registerKeyboardCallback (KeyboardCallback callback, void *cookie=0) |
| 设置键盘处理程序。 | |
| void | registerMouseCallback (MouseCallback callback, void *cookie=0) |
| 设置鼠标处理程序。 | |
| void | removeAllLights () |
| 从当前场景中移除所有光源。 | |
| void | removeAllWidgets () |
| 从窗口中移除所有小部件。 | |
| void | removeWidget (const String &id) |
| 从窗口中移除小部件。 | |
| void | resetCamera () |
| 重置相机。 | |
| void | resetCameraViewpoint (const String &id) |
| 将相机视点重置到场景中的 3D 小部件。 | |
| void | saveScreenshot (const String &file) |
| 保存当前场景的屏幕截图。 | |
| void | setBackgroundColor (const Color &color=Color::black(), const Color &color2=Color::not_set()) |
| 设置背景颜色。 | |
| void | setBackgroundMeshLab () |
| void | setBackgroundTexture (InputArray image=noArray()) |
| void | setCamera (const Camera &camera) |
| 使用 Camera 设置查看器的内参。 | |
| void | setFullScreen (bool mode=true) |
| 设置或取消全屏渲染模式。 | |
| void | setGlobalWarnings (bool enabled=false) |
| void | setOffScreenRendering () |
| 在内存中而不是屏幕上创建窗口。 | |
| void | setRenderingProperty (const String &id, int property, double value) |
| 设置小部件的渲染属性。 | |
| void | setRepresentation (int representation) |
| 将小部件的几何表示设置为表面、线框或点。 | |
| void | setViewerPose (const Affine3d &pose) |
| 设置查看器的姿态。 | |
| void | setWidgetPose (const String &id, const Affine3d &pose) |
| 设置窗口中小部件的姿态。 | |
| void | setWindowPosition (const Point &window_position) |
| 设置窗口在屏幕上的位置。 | |
| void | setWindowSize (const Size &window_size) |
| 设置窗口大小。 | |
| void | showImage (InputArray image, const Size &window_size=Size(-1, -1)) |
| 移除所有窗口部件并显示缩放至整个窗口区域的图像。 | |
| void | showWidget (const String &id, const Widget &widget, const Affine3d &pose=Affine3d::Identity()) |
| 在窗口中显示窗口部件。 | |
| void | spin () |
| 窗口渲染并启动事件循环。 | |
| void | spinOnce (int time=1, bool force_redraw=false) |
| 启动指定时间的事件循环。 | |
| void | updateWidgetPose (const String &id, const Affine3d &pose) |
| 通过预乘其当前位姿来更新窗口中窗口部件的位姿。 | |
| bool | wasStopped () const |
| 返回事件循环是否已停止。 | |
友元 | |
| 类 | VizStorage |
Viz3d 类表示一个 3D 可视化窗口。此类是隐式共享的。
| void(*) cv::viz::Viz3d::KeyboardCallback(const KeyboardEvent &, void *) |
| void(*) cv::viz::Viz3d::MouseCallback(const MouseEvent &, void *) |
| cv::viz::Viz3d::Viz3d | ( | const Viz3d & | ) |
| cv::viz::Viz3d::~Viz3d | ( | ) |
| void cv::viz::Viz3d::addLight | ( | const Vec3d & | position, |
| const Vec3d & | focalPoint = Vec3d(0, 0, 0), | ||
| const Color & | color = Color::white(), | ||
| const Color & | diffuseColor = Color::white(), | ||
| const Color & | ambientColor = Color::black(), | ||
| const Color & | specularColor = Color::white() ) |
在场景中添加光源。
| position | 光源的位置。 |
| focalPoint | 光线照射的点 |
| color | 光线颜色 |
| diffuseColor | 光线的漫反射颜色 |
| ambientColor | 光线的环境光颜色 |
| specularColor | 光线的镜面反射颜色 |
| void cv::viz::Viz3d::close | ( | ) |
| void cv::viz::Viz3d::converTo3DRay | ( | const Point3d & | window_coord, |
| Point3d & | origin, | ||
| Vec3d & | direction ) |
将窗口坐标系中的点转换为世界坐标系中的 3D 射线。
| window_coord | 窗口坐标系中的点。 |
| origin | 光线的输出起点。 |
| direction | 光线的输出方向。 |
将世界坐标系中的点转换为窗口坐标系。
| pt | 世界坐标系中的点。 |
| window_coord | 窗口坐标系中的输出点。 |
| Camera cv::viz::Viz3d::getCamera | ( | ) | const |
返回一个包含当前查看器内参的相机对象。
| double cv::viz::Viz3d::getRenderingProperty | ( | const String & | id, |
| int | property ) |
返回小部件的渲染属性。
| id | 窗口部件的ID。 |
| property | 属性。 |
渲染属性可以是以下之一:
REPRESENTATION: 预期值为:
IMMEDIATE_RENDERING
SHADING: 预期值为:
| Affine3d cv::viz::Viz3d::getViewerPose | ( | ) | const |
返回查看器的当前姿态。
从窗口中检索小部件。
窗口部件是隐式共享的;也就是说,如果修改返回的窗口部件,则更改将立即在窗口中可见。
| id | 将返回的窗口部件的ID。 |
返回窗口中小部件的当前姿态。
| id | 将返回其位姿的窗口部件的ID。 |
| String cv::viz::Viz3d::getWindowName | ( | ) | const |
返回在构造函数中设置的窗口名称。如有必要,会在名称前添加 Viz -。
| 尺寸 cv::viz::Viz3d::getWindowSize | ( | ) | const |
返回窗口的当前大小。
| void cv::viz::Viz3d::registerKeyboardCallback | ( | 键盘回调函数 | 回调函数, |
| void * | cookie = 0 ) |
设置键盘处理程序。
| 回调函数 | 键盘回调函数 (void (*KeyboardCallbackFunction(const KeyboardEvent&, void*)). |
| cookie | 传递给回调函数的可选参数。 |
| void cv::viz::Viz3d::registerMouseCallback | ( | 鼠标回调函数 | 回调函数, |
| void * | cookie = 0 ) |
设置鼠标处理程序。
| 回调函数 | 鼠标回调函数 (void (*MouseCallback)(const MouseEvent&, void*)). |
| cookie | 传递给回调函数的可选参数。 |
| void cv::viz::Viz3d::removeAllLights | ( | ) |
从当前场景中移除所有光源。
| void cv::viz::Viz3d::removeAllWidgets | ( | ) |
从窗口中移除所有小部件。
| void cv::viz::Viz3d::removeWidget | ( | const String & | id | ) |
从窗口中移除小部件。
| id | 将被移除的小部件的ID。 |
| void cv::viz::Viz3d::resetCamera | ( | ) |
重置相机。
| void cv::viz::Viz3d::resetCameraViewpoint | ( | const String & | id | ) |
将相机视点重置到场景中的 3D 小部件。
| id | 3D小部件的ID。 |
| void cv::viz::Viz3d::saveScreenshot | ( | const String & | 文件 | ) |
保存当前场景的屏幕截图。
| 文件 | 文件名。 |
| void cv::viz::Viz3d::setBackgroundColor | ( | const Color & | color = Color::black(), |
| const Color & | color2 = Color::not_set() ) |
设置背景颜色。
| void cv::viz::Viz3d::setBackgroundMeshLab | ( | ) |
| void cv::viz::Viz3d::setBackgroundTexture | ( | InputArray | image = noArray() | ) |
| void cv::viz::Viz3d::setFullScreen | ( | bool | mode = true | ) |
设置或取消全屏渲染模式。
| 模式 | 如果为真,窗口将使用全屏模式。 |
| void cv::viz::Viz3d::setGlobalWarnings | ( | bool | enabled = false | ) |
| void cv::viz::Viz3d::setOffScreenRendering | ( | ) |
在内存中而不是屏幕上创建窗口。
| void cv::viz::Viz3d::setRenderingProperty | ( | const String & | id, |
| int | property, | ||
| double | value ) |
设置小部件的渲染属性。
| id | 窗口部件的ID。 |
| property | 将被修改的属性。 |
| 值 | 属性的新值。 |
渲染属性可以是以下之一:
REPRESENTATION: 预期值为:
IMMEDIATE_RENDERING
SHADING: 预期值为:
| void cv::viz::Viz3d::setRepresentation | ( | int | 表示方式 | ) |
将小部件的几何表示设置为表面、线框或点。
| 表示方式 | 几何表示,可以是以下之一
|
| void cv::viz::Viz3d::setViewerPose | ( | const Affine3d & | 姿态 | ) |
设置查看器的姿态。
| 姿态 | 观察者的新姿态。 |
设置窗口中小部件的姿态。
| id | 将设置姿态的小部件的ID。 |
| 姿态 | 小部件的新姿态。 |
| void cv::viz::Viz3d::setWindowPosition | ( | const Point & | 窗口位置 | ) |
设置窗口在屏幕上的位置。
| 窗口位置 | 窗口坐标 |
| void cv::viz::Viz3d::setWindowSize | ( | const Size & | 窗口大小 | ) |
设置窗口大小。
| 窗口大小 | 窗口的新大小。 |
| void cv::viz::Viz3d::showImage | ( | InputArray | 图像, |
| const Size & | window_size = Size(-1, -1) ) |
移除所有窗口部件并显示缩放至整个窗口区域的图像。
| 图像 | 要显示的图像。 |
| 窗口大小 | Viz3d窗口的大小。默认值表示无变化。 |
| void cv::viz::Viz3d::showWidget | ( | const String & | id, |
| const Widget & | 小部件, | ||
| const Affine3d & | pose = Affine3d::Identity() ) |
在窗口中显示窗口部件。
| id | 小部件的唯一ID。 |
| 小部件 | 要在窗口中显示的小部件。 |
| 姿态 | 小部件的姿态。 |
| void cv::viz::Viz3d::spin | ( | ) |
窗口渲染并启动事件循环。
| void cv::viz::Viz3d::spinOnce | ( | int | time = 1, |
| bool | force_redraw = false ) |
启动指定时间的事件循环。
| 时间 | 事件循环持续运行的时间(毫秒)。 |
| force_redraw | 如果为真,则窗口进行渲染。 |
通过预乘其当前位姿来更新窗口中窗口部件的位姿。
| id | 将更新姿态的小部件的ID。 |
| 姿态 | 当前小部件姿态将被预乘的姿态。 |
| bool cv::viz::Viz3d::wasStopped | ( | ) | const |
返回事件循环是否已停止。
|
friend |