Daugiau

Gaunate mastelio juostą, „WebMap“ su „GeoExt“?


Bandžiau sukurti „WebMap“ su „GeoExt“ ir viskas veikia, bet nematau mastelio juostos.

var mapPaneelis, medis; Ext.application ({name: 'test', launch: function () {mapPanel = Ext.create ('GeoExt.panel.Map', {title: 'test', border: true, region: "centre", žemėlapis: {allOverlays: false}, centras: [14.000000,47.00000], mastelis: 11, sluoksniai: [naujas OpenLayers.Layer.WMS ("OpenStreetMap", "http://ows.terrestris.de/osm-gray/service?" , {sluoksniai: 'OSM-WMS'}, {priskyrimas: '© terrestris GmbH & Co. KG 
' +' Duomenys © OpenStreetMap ' +'bendraautoriai'}),…] Var store = Ext.create (' Ext.data.TreeStore ', {model:' GeoExt.data.LayerTreeModel ', šaknis: {išplėstas: tiesa, vaikai: [{plugins: [' gx_overlaylayercontainer '] , išplėsta: true, text: "Layer"}, {plugins: ['gx_baselayercontainer'], išplėsta: true, text: "Base Maps"}]}}); tree = Ext.create ('GeoExt.tree.Panel', {border: true, region: "west", title: "Layers", plotis: 285, aukštis: 200, split: true, sulankstomas: true, collapseMode: " mini ", autoScroll: true, store: store, rootVisible: false, lines: false, tbar: true}); Ext.create ('Ext.Viewport', {layout: "fit", hideBorders: true, items: {layout: "border", background: "red", atidėtasRender: false, items: [mapPanel, tree, {contentEl: "desc", region: "north", bodyStyle: {"padding": "5px"}, sulankstomas: true, collapseMode: "mini", split: true, plotis: 200, aukštis: 150, title: "test"} ]}}); }});

Kaip pakeisti kodą, kad gautų OSM masto juostą?


Pavyzdžiui, kurdami „MapPanel“ galite apibrėžti žemėlapį kaip kintamąjį ir nukreipti į šį kintamąjį:

var your_map = naujas OpenLayers.Map ({allOverlays: false}); mapPanel = Ext.create ('GeoExt.panel.Map', {title: 'test', border: true, region: "center", map: your_map, centre: [14.000000,47.00000],… // kiti jūsų nustatymai} ); var your_scalebar = naujas OpenLayers.Control.ScaleLine (); your_map.addControl (jūsų_skalė);

Redaguoti1: „jsfiddle“ pridėta: http://jsfiddle.net/expedio/rxr2mhee/


Galbūt galėsite sukurti „OpenLayers“ valdiklį ir rodyti jį savo žemėlapyje.

naujos „OpenLayers.Control.ScaleLine“ ({})

Dokumentus rasite čia.

Panašu, kad „GeoExt“ čia taip pat šiek tiek paaiškina „OpenLayers“ valdiklius.