摘要:网上有篇http://blog.csdn.net/iwillsw/article/details/6069328是讲怎样用OpenLayers访问天地图的地图数据可是,天地图API的更新,使OL访问出现新的问题,地名点层出了覆盖层其实,是天地图更新Util类的API造成的我们只需要对OpenLayers对应的Util类进行改动/** * Function: onImageLoadError */OpenLayers.Util.onImageLoadError = function() { this._attempts = (this._attempts) ? (this._attemp...
阅读全文
摘要:思路:先通过指定一个featureName字段,在全表查询时,返回的数据就会比较小,这样会提高一些速度。返回数据中,我们取出featureid的值,再通过url进行GML格式的解析,从而得到查询后返回的全字段GML信息。实现代码:var filter = new OpenLayers.Filter.Logical({ type: OpenLayers.Filter.Logical.AND, filters: [ new OpenLayers.Filter.Spatial({ type: OpenLayers.Filter.Spatial.INTERSECTS, ...
阅读全文
摘要:1. 拖动矩形框查询var gemetry; // 添加dragbox控件 boxcontrol = new OpenLayers.Control(); OpenLayers.Util.extend(boxcontrol, { draw: function () { box = new OpenLayers.Handler.Box( boxcontrol, {"done": this.notice}); document.getElementById("dragpolygon").onclick= function(){ if(document.getE
阅读全文
摘要:1. 做个响应按钮:2. 写JS代码:(1) get方式请求:function query(){var str="碧桂园小区翠林环玉苑46栋03号"; new OpenLayers.Request.GET( { url : "http://localhost:8080/geoserver/ows?service=WFS&request=GetFeature", params: { typeName: "cite:tz_zd_WGS84",filter:"TDZL"+encodeURI(encodeURI(s
阅读全文
摘要:代码:package demo;import java.awt.image.BufferedImage;import java.io.IOException;import java.net.URL;import java.util.HashMap;import java.util.Map;import javax.imageio.ImageIO;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;impor
阅读全文
摘要:地图浏览 以上是用TMS请求天地图的一个影像图层,在改成JSP时,发现$(x)无法编译成servlet是忽略EL表达式的。加上这句就可以了
阅读全文
摘要:在一些情况下,我们需要把自己发布的图层放在网络底图上,做叠加。但是,我们不希望自己的图层覆盖住底图,这时,我们就要用到透明图层的处理。用WMS的方式发布图层吧,因为TMS没有尝试过,也觉得在理论上不可行,必定TMS方式无论怎样设置参数,始络是要覆盖整个地图的可视范围,这也是几天来一直纠结的一个问题。WMS就显得简单多了:var gmap= new OpenLayers.Layer.WMS("gmap","http://localhost:8080/geoserver/wms", { layers: 'cite:googlemap',tra
阅读全文
摘要:打开vc++6.0的OLEVIEW的Controls,找到要加的三维控件,选中点击鼠标右键,copyHTML到粘贴板,放在指定的html里,就可以了。 而判断三维控件是否加载可以在标签里加空的,然后用trycatch捕获异常,confirm("你尚未安装三维图形插件,是否安装?")来提示安装 在操作ActiveX时,要用到document.getElementById("objID").method(); 在这之前最好把焦点设在控件上, document.getElementById("objID").focus();
阅读全文
摘要:利用这种方法,可以在天地图上加上自己的图层,代码如下:var map; function init(){ var bounds = new GeoSurf.Bounds( 59.99166666666667,0.008333333333333304,152.49166666666667,90.00833333333334 ); var options = {units: 'degrees' }; map = new GeoSurf.PortalMap('map', options); var ll = new GeoSurf.Layer.WMS( "T
阅读全文
摘要://-----------------加marker-----------------------------var Layer = new GeoSurf.Layer.Markers("MarkerLayer");map.addLayer(Layer);var markerIcon = new GeoSurf.Icon();markerIcon.url = "icon/star.gif";markerIcon.size = new GeoSurf.Size(18,18);var lonlat = new GeoSurf.LonLat(116.4, 30
阅读全文
摘要:在官方的文档中说我们只需要修改Geoserver的WEB-INF目录下的web.xml GEOSERVER_DATA_DIR D:/source 指定param-value的值就可以了而我们在默认目录data下看到一些配置文件注意:这些也要在修改了param-value值后,一同复制到新的目录文件中,这样才可能保证不会出现错误。
阅读全文
摘要:map.js //--------------设置图层------------------------------ //------------------------矢量----------------------------- ll= new GeoSurf.Layer.GlobeTile("A0512_EMap", "http://tile0.tianditu.com/services/A0512_EMap", {transitionEffect: "resize", topLevel: 2, bottomLevel: 10,
阅读全文
摘要:很多网页在设计时就会使用到frame框架,要在一个menu.html去响应主窗体body.html的js,就得用上parent.body.call(); 其中body为body.html的frame名,call()为调用的js函数。有时为了让地图显示区域更广阔,我们可能会用到隐藏方式:style:"none";而要它显示出来,就在js里设置:style:"";就可以了。
阅读全文
摘要:用Fwtools切图,有两种方式,一种是有黑边,一种是没有黑边的。可是,在我们现在的项目里,是接以前的数据,当然是带着黑边的。用png方式,可以有两种32位和24位,放在一起又不能加mosaic,这时,我们就得用到geoserver的黑边处理了。我们只需要在发布时把layers里OutputTransparentColor值设为000000就可以了。还有要交待的是,在浏览openlayers图层的时候一定要先设置好图层所处的分辨率,不然让geoserver去做重采样工作,会让geoserver报timeout的错误
阅读全文
摘要:FWtools 2.4.7是很实用的一款gis工具。我们可以用gdal_retile.phy 很方便地切割出自己想要的金字塔格式。启动shell> gdal_retile会报错:line273: print(...,end='');这时,我们只需把",end=''"去掉就可以正常运行这个文件了。尝试中,好像指定输入文件目录的功能失效,于是,需要把输入文件放在FWtools根目录下,具体原因不详。
阅读全文
摘要:今天,我把影像金字塔用tiled加载,为得是想用geoserver 里自带的geowebcache. 偷懒的把layerpreview以html保存下来,它里面的map是以 map.addLayers([untiled, tiled]);方式加载的,也就是以singleTile方式加载,我想只是简单地把这顺序交换一下吧,写成:map.addLayers([tiled, untiled]); 果真是以tiled样式加载, 问题是加载瓦片的速度很慢,在边界出现重采样的图层,还有一些无法显示的区域。 问题其实出在了这句: displayOutsideMaxExtent: true 在默认的情况下,.
阅读全文
摘要:学习geotools,就会用到JAI. 最好不要把jar包放到jre环境下,而是在使用的时候,引入。因为在geoserver的web-lib目录下,存在JAI的jar.如果版本冲突,还会导致geoserver无法启动。版本正确也会报错:could not load mediaLib accelerator wrapperclasses continuing in pure Java model,geoserver却能正常工作。如果我们想忽略这类错误,可以删去geoserver的web-lib下的JAI包,并修改"tocat/bin"目录下的catalin.bat。在这行:
阅读全文
摘要:最近在看geoserver,由于geoserver的数据处理方面是交由geotools 管理的,所以就涉及到了geotools.目前,geoserver稳定版的是2.0.2。我们把geoserver在tomcat 里布署后,可以在geoserver项目的web-info目录里,找到gt-?-2.6.4之类的包,这说明geoserver在这一版本里,用的是geotools2.6.4版本写好的jar包。 在官网下载下如下包:geotools-2.6.4-bin.zip,geotools-2.6.4-project.zip,geotools-2.6.4-doc.zip 解压后,我们可以发现bin里.
阅读全文