14.4. 创建3D符号
样式管理器 可帮助您在 3D地图视图 中渲染各种几何图形类型来创建和储存3D符号。
14.4.1. 点图层
可以定义不同3D类型的 形状 用于点符号。主要是由它们的维度来定义,其单位是指工程的CRS。可用类型包括:
球体 由 半径 定义
圆柱 由 半径 和 长度 定义
立方形 由 大小 定义
圆锥 由 顶部半径 、 底部半径 和 长度 定义
平面 由 大小 定义
圆环 由 半径 和 短半径 定义
3D模型 使用3D模型文件:支持的格式包括波阵面
.obj
、.glTF
和.fbx
。模型可以是磁盘上的文件、远程URL或 嵌入工程中 。社区创建的模型是在 QGIS Hub 上共享,网址是 https://plugins.qgis.org/wavefronts 。Billboard 由 Billboard高度 和 Billboard符号 (通常基于 标记符号) 定义。该符号将具有稳定的尺寸,便于可视化3D点云形状。
海拔限制 可以设置为 绝对 、 相对 或 地形 。当3D矢量的高度值被提供为从 0 开始的绝对测量时,可以使用 绝对 设置。 相对 和 地形 将给定的高程值添加到基础地形高程中。
可以定义 晕渲 属性。
在 变换 框架下,可以对符号应用仿射变换:
平移 可以在 x、y 和 z 轴移动对象。
比例 可以调整3D形状的大小
旋转角度 围绕 x、y 和 z 轴旋转。
14.4.2. 线图层
在 宽度 和 高度 设置之下,可以定义矢量线的 拉伸 。如果线没有Z值,可以使用此设置定义3D体积。
如果已包含栅格高程或其他3D矢量数据,可以使用 海拔限制 定义3D线相对于基础地形表面的位置。
海拔约束 用于定义如何将要素限制到地形。要素的每个 顶点 都将被限制到地形,或者是 质心 。
可以定义 晕渲 属性。
14.4.3. 多边形图层
同样,缺少Z值时可能会出现 拉伸 选项。此外,对于拉伸,您可以点击 按钮来使用矢量图层的值,为每个多边形获得不同的结果:
海拔限制 和 海拔约束 可以如上所述进行定义。
应用于符号的 剔除模式 ,可以是:
未剔除: 有助于避免在 polygonZ/multipatch 数据的顶点排序不一致时 (例如,所有顺时针或逆时针方向),看似缺失的表面
正面
或 后面
渲染外观 确定要显示的面。可使用的值是 无立面 、 立面 、 顶部 或 立面和顶部
添加背面: 对于每个三角形,创建具有正确法线的正面和背面 - 以增加顶点数据数量为代价。此选项可用于解决晕渲问题 (例如,数据顶点顺序不一致)。
可以定义 晕渲 属性。
提示
组合设置可实现3D数据的最佳渲染效果
剔除模式 、 添加背面 和 反转法线 都是为了在3D数据看起来不正确的情况下修复其外观。通常,在加载某些数据时,最好先尝试 剔除模式=后面
和 添加背面=禁用
- 这是最有效的设置。如果渲染看起来不正确,请尝试 添加背面=启用
,并保持 剔除模式=未剔除
。其他更高级的组合设置,仅在基于输入数据集的混合程度的某些场景中有效。
14.4.4. 晕渲纹理
晕渲有助于显示对象的3D细节,否则可能会因场景的照明而被隐藏。最终,它是一种更容易使用的材质,因为不需要担心设置是否为恰当的场景照明而影响可视化要素。
QGIS使用了各种晕渲技术,其可用性取决于符号的几何图形类型:
写实 (材质): 将表面反射光线的方式描述为粗糙表面的 漫反射 与有光滑表面的 镜面 反射 (光滑度) 的组合。它还包括一个 环境光 选项,用于考虑整个场景中散射的少量光线。使用 不透明度 滑块以3D形式渲染半透明对象。更多信息,请访问 https://en.wikipedia.org/wiki/Phong_reflection_model#Description
写实纹理 (材质): 与 写实 (材质) 相同,不同之处在于将图像用作 漫反射纹理 。图像可以是磁盘的文件、远程URL或 嵌入到工程中 。 纹理缩放 和 纹理旋转角度 是必需项。使用 不透明度 滑块以3D形式渲染半透明对象。
CAD (Gooch着色): 这种技术允许仅在中间色调中使用晕渲处理,从而使边缘线和高光在视觉上保持突显。除了 漫反射 、 高光 、 光滑度 选项外,还需要提供 暖色 (用于面向光源的表面) 和 冷色 (用于背对的表面)。此外,漫反射颜色对冷色和暖色的相对贡献分别由 透明度 和 贝塔 属性控制。另请参阅 https://en.wikipedia.org/wiki/Gooch_shading
具有3D模型形状的 嵌入式纹理
14.4.5. 应用示例
要完成上述设置,您可以查看 https://app.merginmaps.com/projects/saber/luxembourg/tree 。