0 / 0 / 0
Регистрация: 14.11.2014
Сообщений: 16
|
|
1 | |
Сделать, чтобы базовые слои layer и layer1, были в одном root а layer2 в другом root17.12.2014, 22:35. Просмотров 1354. Ответов 1
Метки нет Все метки)
(
Доброго времени суток. Вот код
Код
<html> <head> <title> A Basic GeoExt Page </title> <script type="text/javascript" src="http://extjs.cachefly.net/ext-3.4.0/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="http://extjs.cachefly.net/ext-3.4.0/ext-all.js"></script> <link rel="stylesheet" type="text/css" href="http://extjs.cachefly.net/ext-3.4.0/resources/css/ext-all.css" /> <link rel="stylesheet" type="text/css" href="http://extjs.cachefly.net/ext-3.4.0/examples/shared/examples.css" /> <script src="http://www.openlayers.org/api/2.11/OpenLayers.js"></script> <script type="text/javascript" src="http://localhost:8080/geoserver/www/GeoExt/script/GeoExt.js"></script> <script type="text/javascript"> var LayerNodeUI = Ext.extend( GeoExt.tree.LayerNodeUI, new GeoExt.tree.TreeNodeUIEventMixin() ); Ext.onReady(function() { var map = new OpenLayers.Map(); var layer = new OpenLayers.Layer.WMS( "Global Imagery", "http://maps.opengeo.org/geowebcache/service/wms", {layers: "bluemarble"} ); var layer1 = new OpenLayers.Layer.WMS( "OpenStreetMap WMS", "http://ows.terrestris.de/osm/service?", {layers: 'OSM-WMS'} ); var layer2 = new OpenLayers.Layer.WMS( "ДЦ", "http://localhost:8080/geoserver/IGDG_data/wms", { layers: 'I_data:churchu', transparent:true }); map.addLayers([layer,layer1,layer2]); var panel=new GeoExt.MapPanel({ center: [24, 50], zoom: 7, region: "center", map: map, }); var tree = new Ext.tree.TreePanel({ title: 'Layers', width: 250, rootVisible: true, region: "west", autoScroll: true, enableDD: true, plugins: [{ ptype: "gx_treenodecomponent" }], loader: { applyLoader: false, uiProviders: { "custom_ui": LayerNodeUI } }, root: { nodeType: "gx_layercontainer", loader: { baseAttrs: { uiProvider: "custom_ui" }, } }, lines: false }); var viev=new Ext.Viewport({ layout:'border', items: [panel, tree, { xtype: 'panel', title: 'Верхня панель', html: 'Верхня панель', region: 'north', height: 80 },{ xtype: 'panel', title: 'Нижня панель', html: 'Нижня панель', region: 'south', height: 200, collapsed: true, collapsible: true, titleCollapse: true, split: true },{ xtype: 'panel', title: 'Права панель', html: 'Права панель', region: 'east', width: 120 }] , }); }); </script> </head> <body> <div id="gxmap"></div> </body> </html> Код
var LayerNodeUI = Ext.extend( GeoExt.tree.LayerNodeUI, new GeoExt.tree.TreeNodeUIEventMixin() ); Код
plugins: [{ ptype: "gx_treenodecomponent" }], loader: { applyLoader: false, uiProviders: { "custom_ui": LayerNodeUI } }, root: { nodeType: "gx_layercontainer", loader: { baseAttrs: { uiProvider: "custom_ui" }, } }, И еще при отключении слоя layer2 в Ext.tree.TreePanel он исчезает с карты. Если сразу его включить то он появляется на карте только когда подвигать картой или при изменении масштаба. В чем проблема? Подозреваю что все дело в Ext.onReady но не знаю что именно. Заранее благодарю! Использую ExtJS+GeoExt+OprnLayers
0
|
|
17.12.2014, 22:35 | |
Как лечить shown root:root -R /
как сделать чтобы 2 блока были на одном уровне |
|
странник
|
||||||
18.12.2014, 09:23 | 2 | |||||
![]() Решение
Правило: если ты пользуешься ExtJS, то держи открытой документацию по этой библиотеке и этой версии
По поводу Ext.extend смотри тут: http://docs.sencha.com/extjs/3... hod-extend В твоем случае этот метод расширяет объект GeoExt.tree.LayerNodeUI новым объектом GeoExt.tree.TreeNodeUIEventMixin(). Скорее классы этих объектов описаны у тебя в
Про остальное (слои), т.к. не знаком с приведенными (GeoExt+OprnLayers) расширениями
1
|
18.12.2014, 09:23 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.
Как сделать так, чтобы на одном и том же сайте у разных аккаунтов были разные ip? Root или не Root
#define, чтобы поставлять info[s.id]->root Можно ли сделать программно root на Android? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |