opencascade V3d_Viwer源码学习 原创
类V3d_Viewer
在OpenCASCADE中,V3d_Viewer是用于管理三维场景的主要类之一。它负责管理视图(V3d_View)、光源、窗口和交互式上下文(如AIS_InteractiveContext)等元素。
管理视图:
V3d_Viewer可以创建一个或多个V3d_View对象。每个V3d_View对象表示一个三维视图,包含了用于显示、交互和控制视图中对象的方法和属性。
与OpenGL的交互:
V3d_Viewer建立用户GUI与OpenGL之间的连接,处理渲染,如着色、光照、投影方式等。同一个V3d_Viewer可以被多个交互场景使用,实现多个场景的快速切换。
图形设备对象:
在OpenCASCADE的一般使用中,会根据本机系统环境创建不同的图形设备对象。在创建V3d_Viewer对象时,必须给定相应的图形驱动程序与相关参数。一般一个V3d_Viewer对象会根据指定窗口(如Windows下)创建一个视图(V3d_View),用来显示绘制出的图像信息。然而,这种一对一的关系也可以转换成一对多的情况,这取决于实际使用中是否会对开发者有帮助。
代码内容
主要包含对光、对交互式对象、特定屏幕、网格的管理
中文翻译
- AddListener() - 添加监听器:向视图添加事件监听器。
- AllView() - 所有视图:返回当前查看器中所有视图的列表。
- AutomaticUpdate() - 自动更新:启用或禁用自动更新视图。
- BackView() - 后视图:将视图转换为背视图。
- BackgroundColor() - 背景颜色:设置视图的背景颜色。
- Clear() - 清除:清除视图中的所有显示对象。
- ColorScale() - 颜色比例:设置视图中颜色的比例尺。
- ComputedMode() - 计算模式:设置视图中对象的计算模式。
- CreateView() - 创建视图:在查看器中创建一个新视图。
- Deactivate() - 停用:停用视图。
- DeleteView() - 删除视图:删除指定的视图。
- Dump() - 转储:将视图的内容转储到文件中。
- EnableGrid() - 启用网格:启用或禁用视图中的网格。
- Export() - 导出:导出视图中的内容。
- FitAll() - 全部适配:将视图中的对象调整为适合视图窗口的大小。
- FitAll2d() - 2D 全部适配:将 2D 视图中的对象调整为适合视图窗口的大小。
- FrontView() - 前视图:将视图转换为前视图。
- Grid() - 网格:获取或设置视图中网格的属性。
- IsActive() - 是否激活:检查视图是否处于激活状态。
- IsDefinedView() - 是否已定义视图:检查视图是否已定义。
- MaxView() - 最大视图:将视图设置为最大化。
- MinView() - 最小视图:将视图设置为最小化。
- MoreViews() - 更多视图:检查是否可以在此查看器中定义一个以上的视图。
- Name() - 名称:获取或设置视图的名称。
- Next() - 下一个:将视图设置为下一个视图。
- Pan() - 平移:在视图中平移对象。
- PanMulti() - 多重平移:在视图中多重平移对象。
- PixelHeight() - 像素高度:获取视图窗口的像素高度。
- PixelWidth() - 像素宽度:获取视图窗口的像素宽度。
- Redraw() - 重绘:强制视图重新绘制。
- RemoveListener() - 移除监听器:从视图中移除事件监听器。
- Repaint() - 重绘:重绘视图。
- Reset() - 重置:重置视图的变换和裁剪。
- ResetCamera() - 重置相机:重置视图中的相机参数。
- ResetView() - 重置视图:重置视图的变换。
- Restore() - 恢复:恢复视图的状态。
- SetBackgroundColor() - 设置背景颜色:设置视图的背景颜色。
- SetComputedMode() - 设置计算模式:设置视图中对象的计算模式。
- SetDefaultLights() - 设置默认灯光:设置视图中的默认灯光。
- SetEnvironmentLight() - 设置环境光:设置视图中的环境光。
- SetImmediateUpdate() - 设置立即更新:设置是否立即更新视图。
- SetLightOn() - 设置灯光开启:设置视图中灯光的开启状态。
- SetLightOn3dView() - 设置3D视图的灯光开启:设置3D视图中灯光的开启状态。
- SetMapMode() - 设置映射模式:设置视图的映射模式。
- SetMinMaxValues() - 设置最小最大值:设置视图中对象的最小和最大值。
- SetSurfaceDetail() - 设置表面细节:设置视图中对象的表面细节。
- SetTransparency() - 设置透明度:设置视图中对象的透明度。
- SetViewOn() - 设置视图开启:设置视图的开启状态。
- SetVisualization() - 设置可视化:设置视图中对象的可视化方式。
- SetZBufferManagment() - 设置Z缓冲管理:设置视图中的Z缓冲管理。
- SetZClipSize() - 设置Z剪辑大小:设置视图中的Z剪辑大小。
- Show() - 显示:显示视图。
- StereoDump() - 立体转储:生成立体图像的转储。
- StereoMode() - 立体模式:设置立体视图的模式。
- Test() - 测试:执行视图测试。
- ToggleUpdate() - 切换更新:切换视图的更新状态。
- Update() - 更新:更新视图。
- UpdateLights() - 更新灯光:更新视图中的灯光。
- UpdateView() - 更新视图:更新视图的显示。
- View() - 视图:获取当前视图。
- ViewOrientation() - 视图方向:获取或设置视图的方向。
- ViewSize() - 视图大小:获取视图窗口的大小。
- ViewSizeChange() - 视图大小改变:处理视图大小变化。
- Window() - 窗口:获取与视图关联的窗口对象。