文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 在之前的博文<WebGIS中等值面展示的相关方案简析>中我提到了两种生成等值面的方法: a.使用GP服务发布等值面生成服务,前端调用该服务生成等值面图片然后叠加至地图上. b.使用AE开发等值面生成工具,将等值面图片瓦片化后叠加至地图上. 从实现方式上来说,这两种方案均是通过后台生成等值面图片,前端进行图片叠加展示. 如果项目中我们的观察值频繁变化,比如五分…
最近,我一直对学习Node.js比较感兴趣.下面是小编给大家带来的Centos7 中 Node.js安装简单方法,在此记录一下,方便自己也方便大家,一起看看吧! 安装node.js 登陆Centos 终端登录 $ ssh root@192.168.0.23 IP可以是局域网内或者公网IP. 下载node 根据你的系统,在官网找到 https://nodejs.org/en/download/ 你需要下载的版本.比如我选择的 Linux Binaries (x86/x64) 64bit ,点击右键…
1.通过jsonp跨域2.通过修改document.domain来跨子域(iframe)3.隐藏的iframe+window.name跨域4.iframe+跨文档消息传递(XDM)5.跨域资源共享 CORS6.WebSockets JS跨域方法学习了很多,也实践了很多,一直没有完整的整理一下. js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被当作是不同的…
目的: 对字符串‘123456’进行后端加密,前端js可解密出真实字符 测试代码php: static $hashMap = array( '0' => '4', '1' => '9', '2' => '1', '3' => '7', '4' => '2', '5' => '8', '6' => '3', '7' => '6', '8' => '5', '9' => '0', ); print_r(array_keys($hashMap));ec…
事因: 我所维护的项目为旧项目,接手项目后并没有什么开发文档留下,导致很多时候一出现问题就需要自己去研究整个过程. 项目中一直使用一个"$.download()"的方法进行文件下载.后续出现很奇怪的情况,我将原本项目的js都引用到新的项目中去, 可是在我的环境中无法成功执行,在另一位同事的环境下却可以正常执行.(若看到此文章的大神能提供一些比较好的解决 方式给我亦可以留言,十分感谢!) 小白之一些维护开发想法: 倘若原本的方法,作为一个开发者的你,并不了解究竟有多少处使用.很多开发者都…
ios 有如下三种随机数方法:…
function GUID() { this.date = new Date(); /* 判断是否初始化过,如果初始化过以下代码,则以下代码将不再执行,实际中只执行一次 */ if (typeof this.newGUID != 'function') { /* 生成GUID码 */ GUID.prototype.newGUID = function () { this.date = new Date(); var guidStr = ''; sexadecimalDate = this.hex…
为了配合所使用的URL模式,我们需要能够动态的根据当前的URL设置生成对应的URL地址,为此,ThinkPHP内置提供了U方法,用于URL的动态生成,可以确保项目在移植过程中不受环境的影响.U方法的定义规则如下(方括号内参数根据实际应用决定): U('[分组/模块/操作]?参数' [,'参数','伪静态后缀','是否跳转','显示域名']) 如果不定义项目和模块的话 就表示当前项目和模块名称,下面是一些简单的例子: U('User/add') // 生成User模块的add操作的URL地址 U(…
ios 有如下三种随机数方法:…
每一个模块.方法都有一个 ID,通过 ID 来调用. m_registry->callNativeMethod(call.moduleId, call.methodId, std::move(call.arguments), call.callId); 找到对应的模块 所有的模块在 ModuleRegistry 都有,存在 modules_ 变量中,通过下面的代码来调用模块对应的方法. modules_[moduleId]->invoke(methodId, std::move(params)…
var Guid={NewGuid: function () { var guid = (this._G() + this._G() +"-"+ this._G() +"-"+ this._G() +"-"+ this._G() +"-"+ this._G() + this._G() + this._G()).toUpperCase(); return guid; }, _G: function () { return (((…
$(function () { /*生成32位随机流水号*/ /*默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1*/ var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; var maxPos = $chars.length; var pwd = ''; for (i = 0; i < 32; i++) { pwd += $chars.charAt(Math.floor(Math.random() * max…
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.前言 在之前的五个章节中,我们在第一章节里介绍了WebGIS的基本框架和技术,第二章节里介绍了什么是瓦片行列号以及计算它的原因,第三章节里介绍了如何通过地理范围计算出这个范围内瓦片的行列号,第四和第五章节里介绍了在得到瓦片行列号后如何获得离线和在线地图的URL,这个章节里,我们将介绍在通过URL得到瓦片后,如何将其显示在浏览器相对应的地方,拼接出整块地图. 2.左…
从底层谈WebGIS 原理设计与实现(六):WebGIS中地图瓦片在Canvas上的拼接显示原理 作者:naaoveGI…    文章来源:naaoveGIS    点击数:1145    更新时间:2014-9-14 摘要:在之前的五个章节中,我们在第一章节里介绍了WebGIS的基本框架和技术,第二章节里介绍了什么是瓦片行列号以及计算它的原因,第三章节里介绍了如何通过地理范围计算出这个范围内瓦片的行列号,第四和第五章节里介绍了在得到瓦片行列号后如何获得离线和在线地图的URL,这个章节里,我们将…
一,页面上引用jar包中的js文件的方法 使用java web框架AppFuse的时候发现,jquery.bootstrap等js框架都封装到jar包里面了.这些js文件通过一个wro4j的工具对其进行了压缩集成到一个js文件里面.页面使用的时候的时候,引用这一个js文件即可.通过解读wro对于js处理的过程,找到了html或者jsp引用jar包中的js文件的方法: <c:set var="base" value="${pageContext.request.conte…
先将网页弄到iOS项目中: 网页内容如下, 仅供测试: <html> <head> <meta xmlns="http://www.w3.org/1999/xhtml" http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>这是一个示例html文件</title> <script Type='t…
非常多应用为了节约成本,做出同一时候在Android与iOS上都能使用的界面,这时就要使用WebView来做.Android和IOS上都有WebView,做起来非常省事.当然这时就要考虑怎样在Android或iOS中实现与网页的交互.对iOS而言,包含怎样在网页中调用OC,以及怎样在OC中对网页进行操作. 先将网页弄到iOS项目中: 网页内容例如以下, 仅供測试: <html> <head> <meta xmlns="http://www.w3.org/1999/x…
JS Object.defineProperties()方法 描述: Object.defineProperties()方法为目标对象同时配置多个属性. 语法: Object.defineProperties(obj, props) 参数: 参数 描述 obj 目标对象. props 包含一个或多个属性配置对象的对象. props对象每个属性的配置对象包含以下几个属性: configurable : 是否可以删除目标属性或是否可以再次配置属性的特性.设置为true表示可以被删除或可以重新设置特性…
引言 从毕业到年已经整整7年,期间一直从事.net开发做c/s从 c# 转到 wpf 而后又开始做b/s 用silverlight,从最开始的arcgis engine 到后来的silverlight api ,去年开始一直在涉及开源的GIS方面应用开发openlayers geoserver dotspatial等.c/s方面还可以用.net的一些开源库来搞,bs原本想凑合用sl混混,但是不会js实在是让我工作起来很难受.这次正好有个项目用涉及到的系统都是提供js接口,本屌丝连html页面标签…
package 测试包; import javax.script.*; public class SSSSSSSSS { public SSSSSSSSS() { // TODO Auto-generated constructor stub } public static void main(String[] args) { // TODO Auto-generated method stub ScriptEngineManager sem=new ScriptEngineManager();…
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 等值线是GIS制图中常见的功能,一般有两种思路:一种是先进行插值生成等值面栅格图,然后将等值面提取成等值线:另一种是进行插值后,直接再根据算法进行插值点连接生成一条尽量闭合以及平滑的曲线. 在进行插值中,有很多算法可以选择,各种算法中也会有不同的参数需要调试,并且更具实际情况,比如地理环境因素等进行微调,最后建模.这里我们要讨论的是忽略一切外在因素,只根据坐标…
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 前言 GIS代码进行更新后,由于用户前端已有缓存,导致更新的功能不能被及时同步.为避免前端请求读取缓存,常见方法是在每一个请求后面加上一个随机生成的变量参数,这样可以保证每个请求都不会跟历史请求重复.但是,这样处理是不合理的,我们虽然避免了读取缓存,但是却会导致系统效率降低. 所以,我们要解决的问题应该是:只有当代码更新后,客户前端第一次触发的所有请求都应该不走缓…
一.背景 使用Visual Studio Code写了一个简单的Html页面,想调试下其中script标签里的javascript代码,网上查了一通,基本都是复制粘贴或者大同小异的文章,就是要安装Debugger for Chrome插件,修改launch.json配置信息,F5启动,这些都照做了,但是仍有两个问题,一个是Html文件里不能打断点,只能在js文件里面打,二是chrome打开后说连接不到localhost,下面分别讲讲是怎么解决. 二.Html文件中不能打断点问题 默认情况下,VS…
在我的<FastReport报表随笔>介绍过各种FastReport的报表设计和使用,FastReport报表可以弹性的独立设计格式,并可以在Asp.net网站上.Winform端上使用,由于其主要是使用.net后端生成的报表方式,如果不考虑其在线设计处理,那么可以在在Vue&Element前端项目中使用,通过后端生成报表PDF文件,然后通过前端使用pdf.js来呈现报表最终效果即可. 1.使用FastReport生成自定义报表 我们通过定义自己FastReport报表格式,然后在后端…
1.在winform中调用js方法: --调js中的方法无 入参形式 webBrowser1.ExecuteJavascript("logout()"); --调js中的方法给js中的变量赋值操作 webBrowser1.ExecuteJavascript("jsFunction('var1','var2')"); webBrowser1.ExecuteJavascript("var3='hello word'");//调js中的方法,有 入参情…
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 等值面是气象.环保等相关项目上常用到的效果展示.在传统的CS项目中,可以利用一些二次开发工具进行开发,具有科研性质的项目上还会利用一些工具进行复杂建模出图然后流程化.这里,我们撇去复杂的建模各因子,谈谈通用的等值面如何在WebGIS中进行展示. 首先,我介绍下几种可以在前端进行等值面渲染的方案: a.利用arcgis的model进行建模,设置好输入项,插值工具…
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.背景 在上一章里讲解地图平移功能的实现时,我在最后提出了两个问题: A.在地图平移后,矢量图层的canvas的XY都发生了变化,此时根据地理坐标转换为屏幕坐标公式得出的屏幕坐标,在canvas上能将要素正确显示吗? B.矢量图层canvas的原点坐标XY有需要还原成初始的(0,0)的时候吗? 对这两个问题我给出的答案是:不能和需要. 在这一章里,我们将详细讲解得出…
由于primefaces在国内使用的并不是太多,因此,国内对jsf做系统.详细的介绍的资料很少,即使有一些资料,也仅仅是对国外资料的简单翻译或者是仅仅讲表面现象(皮毛而已),它们的语句甚至还是错误的,很可能会误导使用者. 相对来说,看国内的那些仅仅是翻译过来的文章或书籍不如直接看国外的官方文档或资料来的实在,在我讲述jsf页面中如何使用js调用后台bean方法之前,先给大家说几个国外的资料.在primefaces官方网站上,你可以搜索到几乎所有你需要的东西,primefaces官网为:http:…
前言 调试技巧,在任何一项技术研发中都可谓是必不可少的技能.掌握各种调试技巧,必定能在工作中起到事半功倍的效果.譬如,快速定位问题.降低故障概率.帮助分析逻辑错误等等.而在互联网前端开发越来越重要的今天,如何在前端开发中降低开发成本,提升工作效率,掌握前端开发调试技巧尤为重要. 本文将一一讲解各种前端JS调试技巧,也许你已经熟练掌握,那让我们一起来温习,也许有你没见过的方法,不妨一起来学习,也许你尚不知如何调试,赶紧趁此机会填补空白. 骨灰级调试大师Alert 那还是互联网刚刚起步的时代,网页前…
介绍:Leaflet是一个开源的JavaScript库,对移动端友好且对地图有很好的交互性. 大小仅仅只有 33 KB, 同时具有大多数地图所需要的特点. Leaflet设计的非常简单易懂, 同时具有很好的性能和易用性. 它在桌面端和移动端都工作的相当高效,并有大量的插件用于扩张Leaflet的功能.微信公众号:673399718嘻嘻demo图如下: 使用leaflet.js生成世界地图非常方便,配置参数记录下,有兴趣的可以看看本例中引入jquery操作dom.首先:在页面的头部引入css文件c…