gvsig-3d / 2.1 / trunk / org.gvsig.view3d / doc / re-visor-3d.rst @ 393
History | View | Annotate | Download (5.79 KB)
1 |
=================================================== |
---|---|
2 |
Visor 3D básico que integra Nasa WW SDK |
3 |
=================================================== |
4 |
|
5 |
---------------------- |
6 |
Análisis de requisitos |
7 |
---------------------- |
8 |
|
9 |
:Company: Asociación gvSIG |
10 |
:Author: DiSiD Technologies, S.L. |
11 |
:Revision: $Rev: $ |
12 |
:Date: $Date: 2015-02-02 $ |
13 |
:Copyright: |
14 |
|
15 |
.. contents:: |
16 |
:depth: 2 |
17 |
:backlinks: none |
18 |
|
19 |
.. sectnum:: |
20 |
:depth: 1 |
21 |
:start: 1 |
22 |
|
23 |
.. |year| date:: %Y |
24 |
|
25 |
.. header:: |
26 |
|
27 |
.. class:: headertable |
28 |
|
29 |
+-----------------------+-------------------------+ |
30 |
|.. class:: left |.. class:: right | |
31 |
| | | |
32 |
| Requisitos |###Page### | |
33 |
+-----------------------+-------------------------+ |
34 |
|
35 |
|
36 |
.. footer:: |
37 |
|
38 |
.. include:: <isonum.txt> |
39 |
|
40 |
.. class:: left |
41 |
|
42 |
*Requisitos funcionales y no funcionales del visor 3D que integra Nasa WW SDK * |
43 |
|
44 |
|copy| |year| ** |
45 |
|
46 |
Introducción |
47 |
============ |
48 |
|
49 |
Descripción |
50 |
----------- |
51 |
|
52 |
En este documento se realiza un análisis de los requisitos funcionales y no funcionales del nuevo visor 3D básico integrando la librería Nasa WW SDK 2.0 o superior. Para más información: |
53 |
|
54 |
* http://worldwind.arc.nasa.gov/java/ |
55 |
* http://goworldwind.org/ |
56 |
|
57 |
El visor 3D debe ser una ventana complementaria a la vista 2D de gvSIG. Debe permitir al usuario visualizar las capas visibles de la vista 2D en 3D. Para ello, el usuario definirá el modo de carga de cada una de las capas de la vista 2D. Por otra parte, el visor 3D debe permitir al usuario navegar por el espacio tridimensional. |
58 |
|
59 |
Requisitos funcionales |
60 |
====================== |
61 |
|
62 |
**RF01** Ventana complementaria en 3D |
63 |
|
64 |
El visor debe ser una ventana independiente y que complemente a la vista 2D. El visor tendrá dos opciones: esférico o plano. Se podrán tener tantos visores como el usuario requiera. Cada visor representará la información de la vista enlazada en 3D. Además, también se debe poder redimensionar, miniminzar y maximizar la ventana del visor. Opcionalmente realizar una animación del movimiento del plano hasta adaptar el enfoque de la vista 2D en el momento en el que la ventana se abre. |
65 |
|
66 |
**RF02** Creación a partir de una vista 2D |
67 |
|
68 |
El visor debe ser creado a partir de una vista, que quedará enlazada al visor. El visor obtendrá la información relevante de la vista para la visualización en 3D como son capas, leyendas, modo de carga, orden en el toc, visibilidad, proyección (solo en caso de que el visor esté en modo plano)... y la representará en 3D. |
69 |
|
70 |
**RF03** Definir modo de carga de la capas de una vista 2D |
71 |
|
72 |
Se debe poder definir el modo de carga de las diferentes capas en una vista 2D. Los modos de carga son: vectorial con simbología 3D, vertorial rasterizada, raster de tipo imagen y raster de tipo elevación. Las capas raster tendrán los modos de carga raster imagen y raster elevación mientras que la capa vectoriales tendrán vectorial con simbología 3D y vectorial rasterizada. |
73 |
|
74 |
**RF04** Actualizar el visor 3D |
75 |
|
76 |
Una vez creado el visor 3D a partir de una vista, este no refleja los posibles cambios realizados en la vista 2D por lo que es necesario una herramienta para actualizar el visor. El visor accederá de nuevo a la información relevante de la vista a la que esta enlazada y recargará de nuevo la representación 3D de la información. |
77 |
|
78 |
**RF05** Navegación por el espacio tridimensional |
79 |
|
80 |
El visor debe integrar herramientas de navegación que permitan al usuario desplazarse por el espacio tridimensional. Se requieren al menos la herramienta pan, zoom in, zoom out, rotación y elevación. |
81 |
|
82 |
**RF06** Sincronización de enfoques |
83 |
|
84 |
Herramienta para sincronizar el enfoque de la vista 2D con el de la vista 3D. El visor deberá adaptar el enfoque de la vista con la inclinación por defecto. Una vez que se sincronizen los enfoques cada uno vuelve a ser idependiente. Opcionalmente, realizar una animación de desplazamiento para mejorar la visualización. |
85 |
|
86 |
**RF07** Aumentar / disminuir exageración vertical |
87 |
|
88 |
Herramienta para aumentar o disminuir la exageración vertical del visor. El efecto del aumento o reducción se debe reflejar en el visor automáticamente. |
89 |
|
90 |
**RF08** Preferencias del plugin |
91 |
|
92 |
El usuario debe poder establecer valores por defecto para el tamaño del visor y la exageración vertical. Integrar estas preferencias en gvSIG. |
93 |
|
94 |
Soporte de capas y archivos |
95 |
--------------------------- |
96 |
|
97 |
**RF09** Soporte para capas raster de tipo imagen |
98 |
|
99 |
El plugin debe soportar capas raster de tipo imagen. Al cargar un raster debe preguntar al usuario si teselar dicho raster o no. |
100 |
|
101 |
**RF10** Soporte para capas raster de tipo elevación (modelo digital de terreno-MDT) |
102 |
|
103 |
El plugin debe soportar modelos digitales del terreno. Debe ofrecer al usuario la posibilidad de exagerar la elevación vertical ya sea |
104 |
mediante las propiedades de capa o al añadir el MDT. |
105 |
|
106 |
**RF11** Soporte para capas vectoriales 2D |
107 |
|
108 |
Abordar el requisito por versiones. |
109 |
|
110 |
En las primeras versiones del plugin, debe ser capaz de rasterizar capas vectoriales 2D manteniendo la leyenda y etiquetado que tenían. El resultado de esta rasterización se cargará en el documento 3D. Además, este resultado debe ser tileado y adecuado al zoom, rasterizando a medida de que el zoom aumente o disminuya para evitar el pixelado del raster. Este proceso debe ser transparente al usuario. El plugin debe poder rasterizar capas de tipo punto, línea, polígono y multigeometrías. |
111 |
|
112 |
En versiones posteriores, el plugin debe ser capaz de cargar capas vectoriales 2D sin rasterizarlas, por lo que debe soportar simbología y etiquetado 2D. |
113 |
|
114 |
**RF12** Soporte para capas vectoriales 3D |
115 |
|
116 |
El plugin debe soportar capas vectoriales 3D usando simbología 3D. |
117 |
|
118 |
Requisitos no funcionales |
119 |
========================= |
120 |
|
121 |
**RNF01** El plugin debe ser compatible para las siguientes plataformas: |
122 |
|
123 |
* Linux 32b |
124 |
* Linux 64b |
125 |
* Windows 32b |
126 |
* Windows 64b |