• arcgis > 通过ArcGIS Engine构建GIS应用
  • 通过ArcGIS Engine构建GIS应用

    免费下载 下载该文档 文档格式:PDF   更新时间:2003-10-02   下载次数:0   点击次数:1
    文档基本属性
    文档语言:
    文档格式:pdf
    文档作者:abusis
    关键词:
    主题:
    备注:
    点击这里显示更多文档属性
    通过ArcGIS Engine构建GIS应用
    朱政 ESRI中国(北京)有限公司
    目录
    ArcGIS Engine的概要 ArcGIS Engine的开发包 ArcGIS Engine的运行时 ArcGIS Engine应用的分发和部署 开发资源
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine
    ArcGIS 9中新的开发产品 从核心ArcObjects中构建 可以创建独立的应用程序或者集成到第 三方的软件系统中
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine
    Web 浏览器
    在其他应用中 嵌入GIS 嵌入 GIS 功能 自定义应用
    GIS 桌面应用
    简单, 简单 , 重点的功能
    完全的GIS功能 完全的 GIS功能
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine 开发
    自定义应用
    COM .NET JAVA C++
    ArcGIS Engine
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    工程的类型
    独立应用
    无可视化界面应用
    嵌入式应用
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine 功能
    读取所有支持的ESRI数据格式包括 geodatabase 地图制作(创建和编辑MXD) ArcGIS 级别的绘图 查询和分析 地理编码 简单编辑(shp 和 pGDB)
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine 扩展
    Geodatabase Update Spatial 3D With Global Visualization StreetMap USA
    Engine 开发包包括高级的Engine扩展
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine
    两个产品 Engine 开发包 是创建自定义的GIS和制图 应用的工具包. Engine 运行时 是为了运行自定义的Engine 应用的可分发的ArcObejcts.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine 开发包
    组件, APIs和工具的集合, 开发人员可以用来创建 高级的GIS应用 组件
    – Engine 库 – 制图, 绘制, 选择, 编辑, 等. – Control 库 – 地图控件, 布局控件, 工具条, 等.
    APIs
    – COM, .NET, Java, and C++
    工具
    – 文档 – 开发工具
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine组件库
    System SystemUI Geometry Display Server Output Geodatabase GISClient GeoDatabaseDistributed DataSourcesFile DataSourcesOleDB DataSourcesRaster Cato Location NetWorkAnalysis Controls GeoAnalyst 3DAnalyst GlobeCore SpatialAnalyst GeoStatisticalAnalyst Publisher ArcReaderControl
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    主要Library介绍
    System System库是ArcGIS框架中最底层的一个库,它包含了一些被其他库使用 的一些组件.
    SystemUI SystemUI库定义了一些在ArcGIS中被用户界面组件使用的类型.象 Icommand和Itool这样的接口就在这里定义.
    这两个库一般不被扩展
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Geometry 几何库包含了核心的几何对象,比如点,面, 线等.在几何库中还定义和实现了空间参考的 对象,包括投影坐标系和几何坐标系.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    对象模型图图例 鸟
    Abstract
    继承 鸵鸟蛋 鸵鸟蛋 class class 产生 鸵鸟
    CoClass

    鸵鸟巢
    CoClass
    组成 * 鸵鸟翅膀 鸵鸟翅膀 class class
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Geometry库
    Geometry
    Envelop
    Point
    Multipoint
    Curve
    Ray
    Sphere
    Triangles
    GemetryBag
    TriangleFan MultiPatch
    TrangleStrip
    Segment
    *
    Path
    Polycurve
    *
    BezierCurve CircularArc EllipticArc
    Line Ring PolyLine Polygon
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Display 显示库包含了支持在输出设备上显示图形的 组件,屏幕显示,符号,颜色等都在这个库中 定义.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Display库
    Symbol
    TextSymbol
    MarkerSymbol
    LineSymbol
    FillSymbol
    3DchartSymbol
    CartographicMarkerSymbol
    SimpleMarkerSymbol
    MyMarkerSymbol
    CharacterMarkerSymbol
    PictureMarkerSymbol
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Carto Carto库包含了为数据显示服务的 对象.PageLayout和Map对象在这 个库中,以及支持各种数据类型的图层, 渲染.这个库中也包括了MxdServer 和MapServer对象,它们通常被 Server用来显示地图数据.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Carto库中的 Map, PageLayout, 和MapElements
    MxDocument
    *
    PageLayout Map
    *
    Element
    *
    Layer In Carto
    *
    MapSurrond
    FrameElement
    GraphicElement
    ScaleText
    MarkerNorthArrow
    Element
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Render
    FeatureRender
    Feature Layer TinRender RasterRender
    ChartRender UniqueValueRender ClassBreakRender
    SimpleRender
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Layers
    Layer
    DataLayer
    CompositeLayer
    DisplayLayer
    AnnotionLayer
    TableLayer
    TinLayer
    CatalogRasterLayer
    CADLayer
    AnalyseLayer
    RasterLayer
    FeatureLayer
    DemisionLayer
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    GeoDatabase GeoDatabase包含了所有相关数据组织的定 义类型.要素,表,网络,TIN都在这个库中 定义.其中一些类型的实现在各自的数据来源 的库中.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    GeoDatabase
    WorkspaceFactory Workspace Workspace
    *
    Datasets Datasets
    GeoDataset
    Row Row
    Cursor Cursor
    Table Table
    FeatureDataset FeatureDataset
    RasterDataset RasterDataset
    Object Object
    ObjectClass ObjectClass
    1
    Feature Feature Feature Feature Cursor Cursor
    Relationshi Relationshi pclass pclass
    FeatureClass FeatureClass
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    *
    WorkspaceFactory
    ArcInfoWorkspaceFactory
    SDEWorkspaceFactory
    ShapeFileWorkspaceFactory
    TINWorkspaceFactory
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    DataSourcesFile DataSourcesFile库包含了为支持的矢量数据格式提供的工作空间工厂和工 作空间. DataSourcesGDB DataSourcesGDB 库包含了为存储在RDBMS中的矢量和栅格数据提供的 工作空间工厂和工作空间. GeoDatabaseDistributed GeoDatabaseDistributed 库包含了需要执行checkout/checkin 的离线 GeoDatabase的对象. DataSourcesOleDB DataSourcesOleDB 库为通过OleDB方式提供的数据提供空组空间. DataSourcesRaster DataSourcesRaster 包含了为基于文件方式的栅格数据提供的工作空间工 厂和工作空间.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    GISClient GISClient库包含了作用于远程GIS服务的对象.这些 远程服务可以由ArcGIS Server和ArcIMS提供. Server库包含了连接ArcGIS Server的对象,以及管 理这个连接的对象. Controls 控件库包含了应用程序开发中用到的控件,包括在控件 中使用的命令和工具.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    GeoAnalyst GeoAnalyst库包含了核心的空间分析功能,这些功能是在 spatialAnalyst和3DAnalyst扩展都会用到的功能. 3DAnalyst 3DAnalyst库包含了数据的3d分析对象,也包括显示3d数据,在 这个库中有一个控件SceneControl可用. GlobeCore GlobeCore库包含了globe数据分析的对象,也包含了显示globe 数据,在这个库中有一个控件GlobeControl可用. SpatialAnalyst SpatialAnalyst库包含了在栅格和矢量数据上执行空间分析的对 象.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    开发控件
    MapControl PageLayoutControl ToolbarControl TOCControl ReaderControl SceneControl GlobeControl
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    命令和工具
    ArcGIS Engine 包括命令和工具 可以写自定义的命令和工具 HookHelper 对象帮助开发人员到达底层的 ArcObjects 命令和工具可以使用ArcGIS Engine的API来 写
    – COM, .NET, Java, C++
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    命令和工具
    提供超过100 个工具和命令
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    选择一种ArcGIS Engine API
    APIs 是到达底层的ArcObjects的函数 不同的APIs使用的是相同的底层的对象 和接口 COM, .NET, Java, and C++.
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    APIs 和开发环境
    COM
    – Visual Studio 6.0 (VB, VC++), Delphi…
    .NET
    – Visual Studio .NET (VB .NET, C#, VC++)…
    C++
    – Visual Studio 6.0, Borland C++, C++…
    Java
    – JBuilder, Eclipse, JDK…
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    使用 COM API编程
    需要
    – 引进类型库 (.olbs) ..\Program Files\ArcGIS\com
    应用的类型
    – Virtually any type – Windows and control based – Cross product: Desktop and ArcGIS Engine – Custom COM objects
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    使用.NET API编程
    需要
    – .NET Framework 1.1 – 引用 ESRI .NET assemblies (.dlls)
    ..\Program Files\ArcGIS\DotNet Primary Interop Assemblies (PIA) Signed by ESRI Registered in GAC when installed
    应用的类型
    – Virtually any type – Windows and control based – Cross product: Desktop and ArcGIS Engine – Web access classes
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    使用Java API编程
    需要
    – JDK 1.4.x – 引用 ESRI packages (.jar) ..\Program Files\ArcGIS\java\ – arcobjects.jar – jintegra.jar – arcgis_visualbeans.jar
    应用的类型
    – Virtually any type – Windows, utility, and control based – Cross platform (Windows and UNIX)
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    使用 C++ API编程
    需要
    – 引用 C++ header files (.h) – ..\Program Files\ArcGIS\include\CPPAPI
    ArcSDK.h
    应用的类型
    – Virtually any type – Windows, utility, and control based – Cross platform (Windows and UNIX)
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    开发资源 Engine 开发包包括
    – 帮助系统 – 开发文档 – 示例代码 (500+) – 详细的对象模型图 – 辅助的工具
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine 运行时
    运行包是所有的用Engine开发包开发的自定 义的应用程序所需要的 ArcObjects 的核心集合
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine 运行时 (续.)
    标准的 Engine 运行时
    – 数据的获得, 地图的制作, 分析, 以及简单的要素编 辑
    标准的 Engine 运行包的扩展模块
    – – – – Geodatabase Update 3D (Scene and Globe) Spatial StreetMap USA
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Geodatabase Update
    数据创建
    – – – – – – 编辑存储在多用户的DBMS中的GDB 在要素类和属性之间建立关系类 管理和编辑拓扑, 网络, 和关系类 创建和编辑维要素 编辑几何网络 创建要素关联的注记
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Geodatabase Update (续)
    数据管理
    – 加载数据 – 包括把栅格倒入到多用户的 geodatabases – 创建和管理版本 – 为 geodatabases创建子类 – 为geodatabases创建逻辑网络
    标准的 Engine 运行时+GDB Update 扩展模块 = ArcEditor 的功能
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    平台
    ArcGIS Engine 开发包和运行时 Version 9.0
    – Windows NT, 2000, XP, and 2003
    Version 9.0.1
    – Sun Solaris – Red Hat Linux
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine的部署策略
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    分发应用程序
    用Engine开发包创建的 Engine 应用程序可以运行在: – ArcGIS Engine 运行许可 – 存在的ArcGIS Desktop 9 许可 应用程序的开发人员可以控制运行应用程序使用什么 许可
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine的两种运行许可
    esriLicenseProductCodeEngine = 核心功能 esriLicenseProductCodeEngineGeoDB = 核心功能+geodatabase update
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    ArcGIS Engine的其他可用的运行许可
    esriLicenseProductCodeArcView esriLicenseProductCodeArcEditor esriLicenseProductCodeArcInfo
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    用合适的许可初始化应用程序
    用合适的许可初始化应用程序,既能使得应用 程序可以到达license许可的功能,也能保证 它在分发的任何机子上成功的运行
    1 检查license是否可用 2 检查应用的扩展模块的license是否可用(如果需要) 3 用相应的license初始化应用程序
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    举个例子
    用相应的license初始化应用程序的例子 应用程序定位:ArcEditor级别 可用的license: Engine
    EngineGeoDB ArcView ArcEditor ArcInfo
    用到的类:
    AOInitialize
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    创建一个新的 AOInitialize 对象
    示例过程

    是否拥有ArcEditor产品 许可并可用
    是否拥有一个 EngineGeoDB 产品许可

    是否拥有ArcInfo产品许 可并可用

    用此许可文件进行初始化应 用程序.是否成功检出

    用ArcEditor产品许可初始 化应用程序.是否成功检出

    用ArcInfo产品许可初始 化应用程序.是否成功检 出

    否 是
    许可配置不成功并退出应用 程序
    否 是
    许可配置不成功并退出应用 程序

    许可配置不成功并退出应用 程序
    许可配置成功
    许可配置成功
    许可配置成功
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    和MapObjects的比较
    读 / 写 geodatabase
    – 注记, 栅格, 自定义要素, 等.

    读 / 写 MXD 文件 更好的标注 更好的编辑 更多的符号和风格 支持ArcIMS 和 ArcGIS Server 的服务 高级的功能(3D, Globe, 和 Spatial) 以ArcObjects为基础 使用ArcMap 来创建地图
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    Demo演示
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
    谢谢!
    2004年第六届ArcGIS暨ERDAS中国用户大会 2004年第六届ArcGIS暨ERDAS中国用户大会
  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 PDF格式下载
  • 您可能感兴趣的
  • dgn数据arcgisserver  arcgis地图下载  arcgis9.3安装  arcgis10教程  arcgis下载  arcgis10中文版下载  arcgis10下载  arcgis10安装  arcgis教程