📄 使用arcgis engine 开发自定义gis应用--第四部分 - gis大讲堂.htm
字号:
style="FONT-SIZE: 10pt"></FONT></FONT></B></FONT></P><FONT
face=Tahoma><FONT face=宋体><FONT style="FONT-SIZE: 10pt"><FONT
face=宋体><FONT style="FONT-SIZE: 10pt">在上面我们已经就</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">ArcGIS</FONT></FONT></FONT><FONT
face=宋体><FONT style="FONT-SIZE: 10pt">系统是基于一个共享式的</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">GIS</FONT></FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">组件库叫</FONT></FONT><I><FONT
face=TimesNewRoman,Italic><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">ArcObjects</FONT></FONT></FONT></I><FONT
face=宋体><FONT style="FONT-SIZE: 10pt">,其中</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">AE</FONT></FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">也是基于</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">ArcObjects </FONT></FONT></FONT><FONT
face=宋体><FONT
style="FONT-SIZE: 10pt">的一个开发组件,在这个组件中定义了开发</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">GIS</FONT></FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">的所有的类,主要有三种</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">Abstract Classes</FONT></FONT></FONT><FONT
face=宋体><FONT style="FONT-SIZE: 10pt">,</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">Coclasses</FONT></FONT></FONT><FONT
face=宋体><FONT style="FONT-SIZE: 10pt">和</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">Classes</FONT></FONT></FONT><FONT
face=宋体><FONT style="FONT-SIZE: 10pt">。</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">Coclasses</FONT></FONT></FONT><FONT
face=宋体><FONT
style="FONT-SIZE: 10pt">可在开发环境中直接定义并实例化;</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">Classes</FONT></FONT></FONT><FONT
face=宋体><FONT
style="FONT-SIZE: 10pt">不能直接实例化,只能从其他类接口的属性函数或其他方法的输出参数中获得;而</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">Abstract Classes</FONT></FONT></FONT><FONT
face=宋体><FONT
style="FONT-SIZE: 10pt">为抽象类,不能定义及实例化,只是用来派生其他类。那么在</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"><FONT
face="Times New Roman">ArcGIS</FONT></FONT></FONT><FONT
face=宋体><FONT
style="FONT-SIZE: 10pt">的类库中,它们又有什么关联呢?或者说它们之间到底是一个什么关系呢?</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt"></FONT></FONT><BR></FONT></FONT></FONT><BR>
<P align=left><FONT face=Tahoma><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">在</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">ArcGIS
9</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">的架构中包含了许可</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库,这些类库通过</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">DLLs
</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">文件或者</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"> EXEs
</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">文件存储了</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">ArcObjects</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">组件</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">.
</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">这些组件通过内部的接口来进行相互通信,例如:</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">,
</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">一个</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库</FONT></FONT><FONT size=2><FONT
face=CourierNew><FONT style="FONT-SIZE: 9pt">esriGeometry
</FONT></FONT><FONT face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">(</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">设置了基础地图服务模型</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">)</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">,这是一个可持续开发、升级或继承的</FONT></FONT><FONT
face=宋体><FONT
style="FONT-SIZE: 10pt">类库且是没有界面的组件,你可以通过它进行我们现实世界的基本定义,而这个类库在</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">ArcGIS Desktop,
Engine, </FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">和</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">
Server</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">都可以使用,另外这三个产品共享的类库还有:</FONT></FONT><FONT
face=CourierNew><FONT
style="FONT-SIZE: 9pt">System</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">,
</FONT></FONT><FONT face=CourierNew><FONT
style="FONT-SIZE: 9pt">SystemUI</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">,
</FONT></FONT><FONT face=CourierNew><FONT
style="FONT-SIZE: 9pt">Geometry</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">,
</FONT></FONT><FONT face=CourierNew><FONT
style="FONT-SIZE: 9pt">Geodatabase</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">,
</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">和</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt"></FONT></FONT></FONT></FONT></P>
<P align=left><FONT size=2><FONT face=CourierNew><FONT
style="FONT-SIZE: 9pt">Carto </FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">to name a few.
</FONT></FONT><FONT face=Tahoma><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">其中类库中后两位有</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">UI</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">都是提供给</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">ArcGIS
Desktop</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">使用的,当然</FONT></FONT><FONT
face=CourierNew><FONT
style="FONT-SIZE: 9pt">SystemUI</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库除外,这些</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">UI</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库都是定义了界面与</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">Desktop</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">相互交互起作用</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">.
</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">也可以说这些</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">ArcObjects</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库在三个产品中是一个从属关系,例如:你在帮助中查找</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt"> “Display Library
Overview” ,</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">你将查找到所有有关显示的类库方面的信息,与这个有关系的类库</FONT></FONT><FONT
face=CourierNew><FONT
style="FONT-SIZE: 9pt">System</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">,
</FONT></FONT><FONT face=CourierNew><FONT
style="FONT-SIZE: 9pt">SystemUI</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">,
</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">和</FONT></FONT><FONT face=CourierNew><FONT
style="FONT-SIZE: 9pt">Geometry</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库都显示出来,因为这三个类库是</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">ArcGIS</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">架构中的最基本的类库。</FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt"></FONT></FONT></FONT></FONT></P>
<P align=left><FONT face=Tahoma><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">其中你可以通过帮助来查看</FONT></FONT><FONT
color=#000000><FONT face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt">ArcObjects</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库是否能使用,或者通过在线帮助系统来查询是否可以在</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">ArcGIS
Engine</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">中来应用,我们也可以查看</FONT></FONT><FONT
face=TimesNewRoman><FONT style="FONT-SIZE: 10pt">
ArcEngine</FONT></FONT><FONT face=宋体><FONT
style="FONT-SIZE: 10pt">类库架构,如图所示:</FONT></FONT></FONT><FONT
face=TimesNewRoman><FONT
style="FONT-SIZE: 10pt"></FONT></FONT></FONT></P><FONT
size=2></FONT><BR><BR><BR><IMG class=absmiddle alt=""
src="使用ArcGIS Engine 开发自定义GIS应用--第四部分 - GIS大讲堂.files/image.gif"
border=0> <A title=查看积分策略说明
href="http://bbs.esrichina-bj.cn/ESRI/member.php?action=credits&view=getattach"
target=_blank>图片附件</A>: <A class=bold
href="http://bbs.esrichina-bj.cn/ESRI/attachment.php?aid=448"
target=_blank>2.JPG</A> (2006-12-25 10:54 AM, 259.97 K)<BR><BR><IMG
onmousewheel="return imgzoom(this);"
onmouseover="if(this.resized) this.style.cursor='hand';"
onclick="if(!this.resized) {return false;} else {window.open('attachments/forumid_14/2_U44C43yNKtlb.jpg');}"
alt=""
src="使用ArcGIS Engine 开发自定义GIS应用--第四部分 - GIS大讲堂.files/2_U44C43yNKtlb.jpg"
onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='点击在新窗口查看全图\nCTRL+鼠标滚轮放大或缩小';}"
border=0><BR><BR><FONT
size=2><<<未完待续2006122502>>></FONT><BR><BR>[<I>
本帖最后由 北斗星 于 2006-12-26 03:49 PM 编辑 </I>]</DIV></TD></TR>
<TR>
<TD vAlign=bottom><BR><BR><BR><IMG alt=""
src="使用ArcGIS Engine 开发自定义GIS应用--第四部分 - GIS大讲堂.files/sigline.gif"><BR>
<DIV class=signature
style="OVERFLOW: hidden; max-height: 20em; maxHeight: 245px">欢迎参加ESRI2007巡展</DIV></TD></TR>
<TR>
<TD align=right> <A
href="http://bbs.esrichina-bj.cn/ESRI/post.php?action=reply&fid=14&tid=4234&repquote=17857&extra=page%3D1">引用</A>
<A
href="http://bbs.esrichina-bj.cn/ESRI/misc.php?action=report&fid=14&tid=4234&pid=17857&page=1">报告</A>
<A onclick="fastreply('回复 #2 北斗星 的帖子')"
href="http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=4234&extra=page%3D1###">回复</A>
<A onclick=scroll(0,0)
href="http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=4234&extra=page%3D1###"><IMG
alt=顶部 src="使用ArcGIS Engine 开发自定义GIS应用--第四部分 - GIS大讲堂.files/top.gif"
border=0></A> </TD></TR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -