13.4. Creando Símbolos 3D

El Administrador de estilo le ayuda a crear y almacenar símbolos 3D para cada tipo de geometría a renderizar en la vista de mapa 3D.

En cuanto a los demás elementos, habilitar la pestaña 3d Símbolos 3D y expanda el menú del botón symbologyAdd para crear:

13.4.1. Capas de puntos


Figura 13.29 Propiedades de un símbolo de punto 3D

  • You can define different types of 3D Shape to use for point symbols. They are mainly defined by their dimensions whose unit refers to the CRS of the project. Available types are:

    • Sphere defined by a Radius

    • Cylinder defined by a Radius and Length

    • Cube defined by a Size

    • Cone defined by a Top radius, a Bottom radius and a Length

    • Plane defined by a Size

    • Torus defined by a Radius and a Minor radius

    • 3D Model, using a 3D model file (several formats are supported) that can be a file on disk, a remote URL or embedded in the project.

    • Billboard, defined by the Billboard height and the Billboard symbol (usually based on a marker symbol). The symbol will have a stable size. Convenient for visualizing 3D point clouds Shapes.

  • The Altitude clamping can be set to Absolute, Relative or Terrain. The Absolute setting can be used when height values of the 3d vectors are provided as absolute measures from 0. Relative and Terrain add given elevation values to the underlying terrain elevation.

  • The shading can be defined.

  • Under the Transformations frame, you can apply affine transformation to the symbol:

    • Translation to move objects in x, y and z axis.

    • Scale to resize the 3D shapes

    • Rotation around the x-, y- and z-axis.

13.4.2. Capas lineales


Figura 13.30 Propiedades de símbolo lineal 3D

  • Debajo de las configuraciones Anchura y Altura puede definir Extrusión de las líneas vectoriales. Si las líneas no tienen valores z, puede definir los volúmenes 3d con esta configuración.

  • Con Fijación de altitud, define la posición de las líneas 3D en relación con la superficie del terreno subyacente, si ha incluido datos de elevación ráster u otros vectores 3D.

  • La Altitud de enlazado define cómo se fija el objeto al terreno. O cada Vértice de la entidad se sujetará al terreno o esto se hará por Centroide.

  • Es posible checkboxRenderizar como líneas simpes 3D.

  • El sombreado pude definirse en los menues Difuso, Ambiental, Especular y Brillante.

13.4.3. Capas Poligonales


Figura 13.31 Propiedades de un símbolo poligonal 3D

  • Como los demás, la Altura se puede definir en unidades SRC. También puede utilizar el botón dataDefine para sobrescribir el valor con una expresión personalizada, una variable o una entrada de la tabla de atributos

  • Nuevamente, la Extrusion es posible para valores z faltantes. También para la extrusión puede utilizar dataDefine para usar los valores de la capa vectorial y tener diferentes resultados para cada polígono:


    Figura 13.32 Extrusión Definida por Datos

  • La Altitud de anclaje, Altitud de enlazado puede ser definida como se explica arriba.

  • The Culling mode to apply to the symbol; it can be:

    • No Culling: this can help to avoid seemingly missing surfaces when polygonZ/multipatch data do not have consistent ordering of vertices (e.g. all clock-wise or counter clock-wise)

    • Front

    • or Back

  • The Rendered facade determines the faces to display. Possible values are No facades, Walls, Roofs, or Walls and roofs

  • checkbox Add back faces: for each triangle, creates both front and back face with correct normals - at the expense of increased number of vertex data. This option can be used to fix shading issues (e.g., due to data with inconsistent order of vertices).

  • checkbox Invert normals (experimental): can be useful for fixing clockwise/counter-clockwise face vertex orders

  • The shading can be defined.

  • Display of the checkbox Edges of the symbols can be enabled and assigned a Width and Color.


Combination for best rendering of 3D data

Culling mode, Add back faces and Invert normals are all meant to fix the look of 3D data if it does not look right. Typically when loading some data, it is best to first try culling mode=back and add back faces=disabled - it is the most efficient. If the rendering does not look correct, try add back faces=enabled and keep culling mode=no culling. Other combinations are more advanced and useful only in some scenarios based on how mixed up is the input dataset.

13.4.4. Shading the texture

Shading helps you reveal 3d details of objects which may otherwise be hidden due to the scene’s lighting. Ultimately, it’s an easier material to work with as you don’t need to worry about setting up appropriate scene lighting in order to visualise features.

Various techniques of shading are used in QGIS and their availability depends on the geometry type of the symbol:

  • Realistic (Phong): describes the way a surface reflects light as a combination of the Diffuse reflection of rough surfaces with the Specular reflection of shiny surfaces (Shininess). It also includes an Ambient option to account for the small amount of light that is scattered about the entire scene. Read more at https://en.wikipedia.org/wiki/Phong_reflection_model#Description

  • Realistic Textured (Phong): same as the Realistic (Phong) except that an image is used as Diffuse Texture. The image can be a file on disk, a remote URL or embedded in the project. The Texture scale and Texture rotation are required.

  • CAD (Gooch): this technique allows shading to occur only in mid-tones so that edge lines and highlights remain visually prominent. Along with the Diffuse, Specular, Shininess options, you need to provide a Warm color (for surface facing toward the light) and a Cool color (for the ones facing away). Also, the relative contributions to the cool and warm colors by the diffuse color are controlled by Alpha and Beta properties respectively. See also https://en.wikipedia.org/wiki/Gooch_shading

  • Embedded Textures with 3D models shape

13.4.5. Ejemplo de Aplicación

Para revisar la configuración explicada anteriormente, puede echar un vistazo a https://public.cloudmergin.com/projects/saber/luxembourg/tree.