摘要:1)创建一个项目首先创建一个插件项目,本节介绍如何利用向导创建一个插件项目。创建任何一个ArcGIS插件产品的过程都是一样的。创建一个Python插件项目包括2个步骤:a) 选择一个插件项目文件夹打开addin_assistant.exe,程序会自动弹出目录选择对话框,必须选择一个空文件夹,或创建一个新的文件夹,点击确定。b)输入项目设置选择好文件夹后,在ProjectSettings 页面里输入该项目的元数据信息,这些信息会保存到config.xml文件中。这在发布的时候很重要。设置好信息后,在向导的底部点击"保存"按钮,不要关闭向导。点击"Add-InCont
阅读全文
摘要:如上图所示:插件文件夹在根目录下有一个config.xml文件,这个文件保存有在向导添加的描述该插件的定制信息。插件还有一个安装文件夹,这个文件夹的主要功能是存放Python脚本。你可以在安装文件夹下增加其他的文件夹。当你想在插件中附带数据的时候是很有用的。可以包括:图层文件,工具条和xml文件。可以用内建的__file__函数访问这些文件,如下所示:eq_layer =os.path.join(os.path.dirname(__file__), r'data\earth_quakes.lyr')大多数插件类型都是具有图片的,通过向导增加的所有图片都会显示在配制文件(conf
阅读全文
摘要:Python可以在ArcGIS 桌面程序中创建如下的插件类型:插件类型描述按钮(button)是一个简单功能定制形式,可以在点击情况下执行一些业务逻辑。它会执行一个或一系列的动作。按钮可以放在工具条或菜单上。工具(Tools)和按钮类似,然而,工具需要用户和应用程序的显示进行交互,在这些交互之上执行一些业务逻辑。比如拉框放大工具。工具可以放在工具条和工具板上。选项框(Combo Boxs)它提供了一组选项,看上去是一个下拉的列表框,选择一个选项,就可以根据该选项执行一个动作。也可以让用户在该选项框上增加选项。比如,ArcMap中的比例尺选项。当已知的地图数据增加到ArcMap 中的时候,比例尺
阅读全文
摘要:1) Python插件为何物一个插件(add-in)就是一个客户化,比如嵌入到ArcGIS应用程序中的工具条上的一系列工具,这些工具作为ArcGIS标准程序的补充可以为客户完成特殊任务。ArcGIS10中加入了一种新的插件模型,这种新的模型可以让我们更方便地定制和扩展ArcGIS应用程序功能。新的插件模型为我们提供了一种基于声明的框架,在这个框架基础上我们可以轻松的创建一系列定制包,这些包存在于一个以.esriaddin结尾的压缩包中。在ArcGIS10中,插件是采用.net或java以及XML进行编写的。XML描述定制信息,.net或java类提供定制行为。ArcObjects包括一个可以集
阅读全文
摘要:一、预备知识字符集1, 常用字符集分类ASCII及其扩展字符集作用:表语英语及西欧语言。位数:ASCII是用7位表示的,能表示128个字符;其扩展使用8位表示,表示256个字符。范围:ASCII从00到7F,扩展从00到FF。ISO-8859-1字符集作用:扩展ASCII,表示西欧、希腊语等。位数:8位,范围:从00到FF,兼容ASCII字符集。GB2312字符集作用:国家简体中文字符集,兼容ASCII。位数:使用2个字节表示,能表示7445个符号,包括6763个汉字,几乎覆盖所有高频率汉字。范围:高字节从A1到F7, 低字节从A1到FE。将高字节和低字节分别加上0XA0即可得到编码。BIG5
阅读全文
摘要:python 有str object 和 unicode object 两种字符串,都可以存放字符的字节编码,但是他们是不同的type,这一点很重要,也是为什么会有encode(编码)和decode(解码)。encode 和 decode在pyhton中的意义可表示为: encode unicode -------------------------> str unicode >> t='长城'2 >>> t3 '\xb3\xa4\xb3\xc7'4 >>> t.decode('gb2312'
阅读全文
摘要:谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词问题一使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式间相互转换。同样是txt文件,Windows是怎样识别编码方式的呢?我很早前就发现Unicode、Unicode big endian和UTF-8编码的txt文件的开头会多出几个字节,分别是FF、FE(Unicode),FE、FF(Unicode big endian),EF、BB、BF(UTF-8)。但这些标记是基于什么标准呢?问题二最近在网上看到一个 ConvertUTF.c,实现了UTF
阅读全文
摘要:下面介绍一下python的编码机制,unicode, utf-8, utf-16, GBK, GB2312,ISO-8859-1等编码之间的转换。1.自动识别字符串编码:#coding:utf8#chartdet官方下载网站:http://pypi.python.org/pypi/chardetimport urllibimport chardetrawdata = urllib.urlopen('http://www.google.cn/').read()print chardet.detect(rawdata)输出:#confidence是可信度,encoding是编码{&
阅读全文
摘要:VBA: 1 Sub deleteDuplicatedFeature() 2 3 Dim app As IApplication 4 Set app = Application 5 6 Dim pMxDocument As IMxDocument 7 Set pMxDocument = Application.Document 8 9 Dim pMap As IMap10 Set pMap = pMxDocument.FocusMap11 12 Dim pFeatureLayer As IFeatureLayer13 Set pFeatureLayer = pMap.Layer(0)14...
阅读全文
摘要:我们在使用新浪微博API时,有时需要得到一个微博的url,但是如statuses/public_timeline等接口中取得的微博status的字段中并没有包含。不过,status中包含了一个mid字段,通过mid,我们实际上是可以通过计算得到url的。在开始计算之前有必要说明一下,什么是base62编码。它实际上就是十进制和62位进制的互换。对于62进制,从0数到9以后,10用小写字母a表示,接着数完26个字母,到z为35,然后36为大写字母A,一直到61为大写字母Z。所以,我们可以实现十进制数字base62编码的encode和decode。下面的代码实际上来自stackoverflow:
阅读全文
摘要:最简单的排序有三种:插入排序,选择排序和冒泡排序。它们的平均时间复杂度均为O(n^2),在这里对原理就不加赘述了。贴出源代码:插入排序: 1 def insertion_sort(sort_list): 2 iter_len = len(sort_list) 3 if iter_len =0 and sort_list[j]>key: 9 sort_list[j+1] = sort_list[j]10 j =j - 111 sort_list[j+1] = key12 return sort_list冒泡排...
阅读全文
摘要:replace 方法:返回根据正则表达式进行文字替换后的字符串的复制。stringObj.replace(rgExp, replaceText)参数stringObj必选项。要执行该替换的 String 对象或字符串文字。该字符串不会被 replace 方法修改。rgExp必选项。为包含正则表达式模式或可用标志的正则表达式对象。也可以是 String 对象或文字。如果 rgExp 不是正则表达式对象,它将被转换为字符串,并进行精确的查找;不要尝试将字符串转化为正则表达式。replaceText必选项。是一个String 对象或字符串文字,对于stringObj 中每个匹配 rgExp 中的位置
阅读全文
摘要:原文地址:http://www.cnblogs.com/chenkai/archive/2013/01/31/2888110.html说实话.作为一个Coder.每天在各种IDE中切换编写Code.如果一个IDE Look and Feel总是无形中影响你每天Code Farm的心情.那该是多么不爽的事情.特别是针对本人对IDE总是有一种天生“洁癖感”.每当一们语言或技术在无意中吸引我.或是已经在粗糙的本文编辑器初体验.都会在两到三天体验期脱离出来.立马调到真正高效率的生成环境去Coding.高效率就意味当然脱不了IDE的支持.但是每次更换新的Coding环境.可能我会花上一到两天或更多的时间
阅读全文
摘要:安装python详细步骤见:地址1. 从http://www.python.org/download/下载最新的python版本 (我用的是python2.6, 当时最稳定的)2. 然后一路next, 安装到你想要的目录下3. 然后更改path, 点击控制面板->系统->高级->环境变量。在“系统变量”表单中点击叫做PATH的变量,然后编辑这个变量,把” ;C:\Python26\ArcGIS10.0; C:\Python26\ArcGIS10.0\Scripts; “加到它的结尾。当然,是Python所在的正确路径。安装django1. 从https://www.djang
阅读全文
摘要:1、下载安装 Pythonhttp://www.python.org/download/http://www.python.org/ftp/python/2.6/python-2.6.msihttp://www.python.org/ftp/python/2.6/python-2.6.amd64.msi如下载 Python 2.6,安装目录为C:\Python262、添加环境变量path =C:\Python26\ArcGIS10.0此步骤可实现在命令行下,不用进入 Python 目录即可执行 python.exe3、下载 setuptools注意对应 Python 的版本,完成后运行 exe
阅读全文