Revision 404 2.1/trunk/doc/Fase 1/dt-visor-3d.rst
dt-visor-3d.rst | ||
---|---|---|
62 | 62 |
Ejemplo de casos de uso |
63 | 63 |
------------------------------- |
64 | 64 |
|
65 |
A partir de una vista 2D, se desea representar la información cargada en la vista de forma tridimensional. Para ello, el usuario dispondrá de dos entradas de menú / botones para crear los dos tipos de visores: esférico y plano (View3DExtension, una única extensión para dos acciones). Al pulsar sobre uno de los botones, el plugin accederá a la información de la vista activa mediante la obtención del MapControl y la servirá a la librería NASA WW SDK mediante View3DPanel#add(FLayer layer). El panel obtendrá la capa equivalente mediante el View3DManager#getWWLayer(FLayer, loadMode) y la añadirá a un objeto gov.nasa.worldwind.Model. Cuando todas las capas hayan sido añadidas, se creará el visor mediante View3DSwingManager#createView3DPanel(MapControl, mode).
|
|
65 |
A partir de una vista 2D, se desea representar la información cargada en la vista de forma tridimensional. Para ello, el usuario dispondrá de dos entradas de menú / botones para crear los dos tipos de visores: esférico y plano (View3DExtension, una única extensión para dos acciones). Al pulsar sobre uno de los botones, el plugin accederá a la información de la vista activa mediante la obtención del MapContext y la servirá a la librería NASA WW SDK mediante View3DPanel#add(FLayer layer). El panel obtendrá la capa equivalente mediante el View3DManager#getWWLayer(FLayer, loadMode) y la añadirá a un objeto gov.nasa.worldwind.Model. Cuando todas las capas hayan sido añadidas, se creará el visor mediante View3DSwingManager#createView3DPanel(MapContext, mode).
|
|
66 | 66 |
|
67 | 67 |
Además de las dos extensiones para la creación de visores, el usuario también dispondrá de una extensión llamada RefreshView3DExtension para la actualización de los datos del visor activo con los posibles cambios efectuados sobre la vista 2D. La extensión ejecutará el método View3DPanel#reloadLayers(). |
68 | 68 |
|
69 |
Y finalmente, existirá una última extensión llamada SynchronizeView3DExtension que permitirá al usuario sincronizar los enfoques de la vista 2D y el visor 3D asociado a la vista. Se accederá al ViewPort del MapControl asociado para sincronizarlo con el enfoque del visor 3D.
|
|
69 |
Y finalmente, existirá una última extensión llamada SynchronizeView3DExtension que permitirá al usuario sincronizar los enfoques de la vista 2D y el visor 3D asociado a la vista. Se accederá al ViewPort del MapContext asociado para sincronizarlo con el enfoque del visor 3D.
|
|
70 | 70 |
|
71 | 71 |
LIB API |
72 | 72 |
-------- |
... | ... | |
114 | 114 |
View3DSwingManager |
115 | 115 |
******************** |
116 | 116 |
|
117 |
* createView3DPanel(MapControl theMapControl, int mode) : View3DPanel
|
|
117 |
* createView3DPanel(int mode) : View3DPanel |
|
118 | 118 |
|
119 |
Crea un panel con el componente para dibujar la información en 3D a partir de un MapControl y el modo del visor. Existen dos modos posibles View3DMode.SPHERE y View3DMode.FLAT.
|
|
119 |
Crea un panel con el componente para dibujar la información en 3D y lo configura dependiendo del modo indicado. Existen dos modos posibles View3DMode.SPHERE y View3DMode.FLAT.
|
|
120 | 120 |
|
121 |
* createView3DPanel(MapControl theMapControl, int mode, FLayers layers) View3DPanel
|
|
121 |
* createView3DPanel(MapContext theMapContext, int mode) : View3DPanel
|
|
122 | 122 |
|
123 |
Crea un panel con el componente para dibujar la información en 3D a partir de un MapControl y el modo del visor. Además añade la colección de layers a la vista.
|
|
123 |
Crea un panel con el componente para dibujar la información en 3D a partir de un MapContext y lo configura dependiendo del modo indicado. Existen dos modos posibles View3DMode.SPHERE y View3DMode.FLAT.
|
|
124 | 124 |
|
125 |
|
|
125 | 126 |
View3DPanel extends JPanel |
126 | 127 |
**************************** |
127 | 128 |
|
... | ... | |
135 | 136 |
|
136 | 137 |
A partir de la colección de capas, obtiene las capas equivalentes en la librería World Wind y las añade respetando el orden. |
137 | 138 |
|
138 |
* getMapControl() : MapControl
|
|
139 |
* getMapContext() : MapContext
|
|
139 | 140 |
|
140 |
Obtiene el mapControl asociado al panel. Del mapControl asociado se extrae la información necesaria para la representación de los datos en 3D y la sincronización de enfoques.
|
|
141 |
Obtiene el MapContext asociado al panel. Del MapContext asociado se extrae la información necesaria para la representación de los datos en 3D y la sincronización de enfoques.
|
|
141 | 142 |
|
142 | 143 |
* getVerticalExaggeration() : double |
143 | 144 |
|
... | ... | |
145 | 146 |
|
146 | 147 |
* reloadLayers() : void |
147 | 148 |
|
148 |
Elimina las capas cargadas. Accede al MapControl asociado al visor y carga de nuevo las capas. Se usa para actualizar el visor con los posibles cambios realizados sobre la vista 2D.
|
|
149 |
Elimina las capas cargadas. Accede al MapContext asociado al visor y carga de nuevo las capas. Se usa para actualizar el visor con los posibles cambios realizados sobre la vista 2D.
|
|
149 | 150 |
|
150 | 151 |
* remove(FLayer layer) : void |
151 | 152 |
|
... | ... | |
155 | 156 |
|
156 | 157 |
Elimina todas las capas cargadas. |
157 | 158 |
|
158 |
* setMapControl(MapControl theMapControl) : void
|
|
159 |
* setMapContext(MapContext theMapContext) : void
|
|
159 | 160 |
|
160 |
Establece el mapControl al visor.
|
|
161 |
Establece el MapContext al visor.
|
|
161 | 162 |
|
162 | 163 |
* setVerticalExaggeration(double verticalExaggeration) : void |
163 | 164 |
|
Also available in: Unified diff