C#如何通过DOM结构定位出需要获取的内容

xcfdsarfew 2018-04-08 04:50:24

比如说有个网站上面层级内容为
/html/BODY/DIV.header-top/DIV.block.content/DIV.recmd-list
我该怎么获取这个层级下面的内容呢?
...全文
386 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xcfdsarfew 2018-04-10
  • 打赏
  • 举报
回复
引用 1 楼 sby5104 的回复:
查查htmlagilitypack?
这个也是通过Xpath获取的吧
xcfdsarfew 2018-04-10
  • 打赏
  • 举报
回复
引用 2 楼 diaodiaop 的回复:
http://htmlagilitypack.codeplex.com/ xpath就行了一句话就可以搞定..
XPATH有在用了,现在需要获取这种层级
by_封爱 版主 2018-04-09
  • 打赏
  • 举报
回复
http://htmlagilitypack.codeplex.com/ xpath就行了一句话就可以搞定..
sby5104 2018-04-09
  • 打赏
  • 举报
回复
查查htmlagilitypack?
可执行Javascript代码、触发各类事件、操纵页面Dom结构。 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获取。 请求网页: 爬虫使用HTTP或其他协议向目标URL发起请求,获取网页的HTML内容。这通常通过HTTP请求库实现,如Python中的Requests库。 解析内容: 爬虫对获取的HTML进行解析,提取有用的信息。常用的解析工具有正则表达式、XPath、Beautiful Soup等。这些工具帮助爬虫定位和提取目标数据,如文本、图片、链接等。 数据存储: 爬虫将提取的数据存储到数据库、文件或其他存储介质中,以备后续分析或展示。常用的存储形式包括关系型数据库、NoSQL数据库、JSON文件等。 遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施,如验证码、IP封锁等。爬虫工程师需要设计相应的策略来应对这些挑战。 爬虫在各个领域都有广泛的应用,包括搜索引擎索引、数据挖掘、价格监测、新闻聚合等。然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。
手动优化了PDF的书签,书签可折叠,书签链接以目录方式保存,多达1000多页,每页都做了书签定位,手都累酸啦。 ============================== 因权限只能到60MB,分卷压缩了,共3个压缩包,需下载完3个一起解压, ============================== ASP.NET 4高级程序设计(第4版)》【原版书为:Pro ASP.NET 4 in C# 2010】是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET4的各种特性及其背后的工作原理,并给了许多针对如何构建复杂、可扩展的网站从实践中得的建议。书中还深入讲述了其他ASP.NET图书遗漏的高级主题,如自定义控件的创建、图像处理、加密等。此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软的ASP.NETAJAX平台。另外,还专门介绍了ASP.NET4 新增的功能,如MVC 和动态数据等。   《ASP.NET 4高级程序设计(第4版)》适合各层次的ASP.NET程序员阅读。 =================== 第一部分 核心概念 第1章 ASP.NET简介 1.1 ASP.NET的7大要点 1.1.1 要点1:ASP.NET是同.NETFramework集成在一起的 1.1.2 要点2:ASP.NET是编译执行的,而不是解释执行的 1.1.3 要点3:ASP.NET支持多语言 1.1.4 要点4:ASP.NET运行在公共语言运行库内 1.1.5 要点5:ASP.NET是面向对象的 1.1.6 要点6:ASP.NET支持所有的浏览器 1.1.7 要点7:ASP.NET易于部署和配置 1.2 ASP.NET的演变 1.2.1 ASP.NET1.0和ASP.NET1.1 1.2.2  ASP.NET2.0 1.2.3 ASP.NET3.5 1.2.4 ASP.NET4 1.2.5 Silverlight 1.3 总结 第2章 Visual Studio 2.1 Visual Studio 2.1.1 网站和Web项目 2.1.2 创建无项目文件的网站 2.1.3 设计网页 2.2 Visual StudioIDE 2.2.1 解决方案资源管理器 2.2.2 文档窗口 2.2.3 工具箱 2.2.4 错误列表和任务列表 2.2.5 服务器资源管理器 2.3 代码编辑器 2.3.1 添加程序集引用 2.3.2 智能感知和大纲显示 2.3.3 Visual Studio 2010改进 2.4 编码模型 2.4.1 代码隐藏文件如何与页面连接 2.4.2 控件标签如何与页面变量连接 2.4.3 事件如何与事件处理程序连接 2.5 Web项目 2.5.1 基于项目的开发 2.5.2 创建Web项目 2.5.3 迁移旧版Visual Studio创建的网站 2.6 Visual Studio调试 2.6.1 单步调试 2.6.2 变量监视 2.6.3 高级断点 2.7 WebDevelopment Helper 2.8 总结 第3章 Web窗体 3.1 页面处理 3.1.1 HTML表单 3.1.2 动态用户界面 3.1.3 ASP.NET事件模型 3.1.4 自动回送 3.1.5 视图状态 3.1.6 XHTML兼容性 3.1.7 客户端控件ID 3.2 Web窗体处理阶段 3.2.1 页面框架初始化 3.2.2 用户代码初始化 3.2.3 验证 3.2.4 事件处理 3.2.5 自动数据绑定 3.2.6 清除 3.2.7 页面流示例 3.3 作为控件容器的页面 3.3.1 显示控件树 3.3.2 页头 3.3.3 动态控件的创建 3.4 Page类 3.4.1 Session、Application和Cache 3.4.2 Request 3.4.3 Response 3.4.4 Server 3.4.5 User 3.4.6 Trace 3.4.7 访问其他类中的HTTP上下文 3.5 总结 第4章 服务器控件 4.1 服务器控件的类型 4.2 HTML服务器控件 4.2.1 HtmlControl类 4.2.2 HtmlContainerControl类 4.2.3 HtmlInputControl类 4.2.4 HTML服务器控件类 4.2.5 设置Style特性和其他属性 4.2.6 通过编程创建服务器控件 4.2.7 处理服务器端事件 4.3 Web控件 4.3.1 WebControl基类 4.3.2 基本的Web控件类 4.3.3 单位 4.3.4 枚举 4.3.5 颜色 4.3.6 字体 4.3.7 焦点 4.3.8 默认按钮 4.3.9 可滚动面板 4.3.10 处理Web控件事件 4.4 List控件 4.4.1 Selectable列表控件 4.4.2 BulletedList控件 4.5 输入验证控件 4.5.1 验证控件 4.5.2 验证流程 4.5.3 BaseValidator类 4.5.4 RequiredFieldValidator控件 4.5.5 RangeValidator控件 4.5.6 CompareValidator控件 4.5.7 RegularExpressionValidator控件 4.5.8 CustomValidator控件 4.5.9 ValidationSummary控件 4.5.10 通过编程使用验证器 4.5.11 验证组 4.6 富控件 4.6.1 AdRotator控件 4.6.2 Calendar控件 4.7 总结 第5章 ASP.NET应用程序 5.1 剖析ASP.NET应用程序 5.1.1 应用程序域 5.1.2 应用程序生命周期 5.1.3 应用程序更新 5.1.4 应用程序目录结构 5.2 global.asax应用程序文件 5.2.1 应用程序事件 5.2.2 演示应用程序事件 5.3 ASP.NET配置 5.3.1 machine.config文件 5.3.2 web.config文件 5.3.3 设置 5.3.4 5.3.5 5.3.6 5.3.7 通过编程读写配置节 5.3.8 网站管理工具(WAT) 5.3.9 扩展配置文件结构 5.3.10 加密配置节 5.4 .NET组件 5.4.1 创建组件 5.4.2 通过App_Code目录使用组件 5.4.3 通过Bin目录使用组件 5.5 扩展HTTP管道 5.5.1 HTTP处理程序 5.5.2 创建自定义的HTTP处理程序 5.5.3 配置自定义的HTTP处理程序 5.5.4 使用无须配置的HTTP处理程序 5.5.5 创建高级的HTTP处理程序 5.5.6 为非HTML内容创建HTTP处理程序 5.5.7 HTTP模块 5.5.8 创建自定义HTTP模块 5.6 总结 第6章 状态管理 6.1 ASP.NET状态管理 6.2 视图状态 6.2.1 视图状态示例 6.2.2 在视图状态中保存对象 6.2.3 视图状态评估 6.2.4 有选择地禁用视图状态 6.2.5 视图状态安全 6.3 在页面间传送信息 6.3.1 查询字符串 6.3.2 跨页回发 6.4 cookie 6.5 会话状态 6.5.1 会话架构 6.5.2 使用会话状态 6.5.3 配置会话状态 6.5.4 会话状态安全 6.6 应用程序状态 6.7 总结 第二部分 数据访问 第7章 基础 7.1 ADO.NET架构 7.1.1 ADO.NET数据提供程序 7.1.2 ADO.NET的标准化 7.1.3 基本ADO.NET类 7.2 Connection类 7.2.1 连接字符串 7.2.2 测试连接 7.2.3 连接池 7.3 Command类和DataReader类 7.3.1 Command基础 7.3.2 DataReader类 7.3.3  ExecuteReader()方法和DataReader 7.3.4 ExecuteScalar()方法 7.3.5 ExecuteNonQuery()方法 7.3.6 SQL注入攻击 7.3.7 使用参数化命令 7.3.8 调用存储过程 7.4 事务 7.4.1 事务和ASP.NET应用程序 7.4.2 隔离级别 7.4.3 保存点 7.5 提供程序无关的代码 7.5.1 创建工厂 7.5.2 用工厂创建对象 7.5.3 使用提供程序无关的代码的查询 7.6 总结 第8章 数据组件和DataSet 8.1 构建数据访问组件 8.1.1 数据包 8.1.2 存储过程 8.1.3 数据应用类 8.1.4 测试数据库组件 8.2 非连接的数据 8.2.1 Web应用程序和DataSet 8.2.2 XML集成 8.3 DataSet类 8.4  DataAdapter类 8.4.1 填充DataSet 8.4.2 使用多个表和关系 8.4.3 查找特定行 8.4.4 在数据访问类里使用DataSet 8.4.5 数据绑定 8.5 DataView类 8.5.1 使用DataView排序 8.5.2 使用DataView过滤 8.5.3 使用关系的高级过滤 8.5.4 计算列 8.6 总结 第9章 数据绑定 9.1 基本的数据绑定 9.1.1 单值绑定 9.1.2 其他类型的表达式 9.1.3 重复值绑定 9.2 数据源控件 9.3 SqlDataSource 9.3.1 选择记录 9.3.2 参数化命令 9.3.3 错误处理 9.3.4 更新记录 9.3.5 删除记录 9.3.6 插入记录 9.3.7 SqlDataSource的不足 9.4 ObjectDataSource 9.4.1 选择记录 9.4.2 更新记录 9.4.3 使用数据对象执行更新 9.5 数据源控件的限制 9.5.1 问题 9.5.2 添加其他项 9.5.3 使用SqlDataSource处理其他选项 9.5.4 使用ObjectDataSource处理其他选项 9.6 总结 第10章 富数据控件 10.1 GridView 10.2 格式化GridView 10.2.1 格式化字段 10.2.2 样式 10.2.3 格式化特定值 10.3 GridView行选择 10.3.1 使用选择来创建主-从表单 10.3.2 SelectedIndexChanged事件 10.3.3 将数据字段用作选择按钮 10.4 对GridView排序 10.4.1 使用SqlDataSource排序 10.4.2 使用ObjectDataSource排序 10.4.3 排序和选择 10.4.4 高级排序 10.5 GridView分页 10.5.1 自动分页 10.5.2 分页和选择 10.5.3 ObjectDataSource的自定义分页 10.5.4 定制分页栏 10.6 GridView模板 10.6.1 使用多个模板 10.6.2 在Visual Studio中编辑模板 10.6.3 绑定到方法 10.6.4 处理模板中的事件 10.6.5 使用模板编辑 10.6.6 模板中的客户端ID 10.7 ListView 10.7.1 分组 10.7.2 分页 10.8 DetailsView和FormView 10.8.1 DetailsView 10.8.2 FormView 10.9 高级网格 10.9.1 GridView中的汇总 10.9.2 单个表中的父/子视图 10.9.3 使用查找表编辑字段 10.9.4 处理来自数据库的图片 10.9.5 探测并发冲突 10.10 总结 第11章 缓存和异步页面 11.1 理解ASP.NET缓存 11.2 输缓存 11.2.1 声明性的输缓存 11.2.2 缓存和查询字符串 11.2.3 使用特定查询字符串参数的缓存 11.2.4 自定义缓存控制 11.2.5 使用HttpCachePolicy类进行缓存 11.2.6 缓存后替换和部分页缓存 11.2.7 缓存用户配置 11.2.8 缓存配置 11.2.9 输缓存扩展 11.3 数据缓存 11.3.1 向缓存添加项目 11.3.2 简单的缓存测试 11.3.3 缓存优先级 11.3.4 使用数据源控件的缓存 11.4 缓存依赖 11.4.1 文件和缓存项目依赖 11.4.2 聚合依赖 11.4.3 移除项目回调 11.4.4 理解SQL缓存通知 11.4.5 缓存通知的工作方式 11.4.6 启用通知 11.4.7 创建缓存依赖 11.5 自定义缓存依赖 11.5.1 基本的自定义缓存依赖 11.5.2 使用消息队列的自定义缓存依赖 11.6 异步页面 11.6.1 创建异步页面 11.6.2 在异步页面中查询数据 11.6.3 错误处理 11.6.4 在异步任务中使用缓存 11.6.5 多异步任务和超时 11.7 总结 第12章 文件和流 12.1 使用文件系统 12.1.1 Directory类和File类 12.1.2 DirectoryInfo类和FileInfo类 12.1.3 DriveInfo类 12.1.4 使用Attributes 12.1.5 使用通配符过滤文件 12.1.6 获取文件的版本信息 12.1.7 Path类 12.1.8 文件浏览器 12.2 使用流读写文件 12.2.1 文本文件 12.2.2 二进制文件 12.2.3 上传文件 12.2.4 使文件对多用户安全 12.2.5 压缩 12.3 序列化 12.4 总结 第13章 LINQ 13.1 LINQ基础 13.1.1 延迟执行 13.1.2 LINQ是如何工作的 13.1.3 LINQ表达式 13.1.4 揭秘LINQ表达式 13.2 LINQ to DataSet 13.2.1 强类型的DataSet 13.2.2 空值 13.3 LINQ to Entities 13.3.1 生成数据模型 13.3.2 数据模型类 13.3.3 实体关系 13.3.4 查询存储过程 13.3.5 LINQ to Entities查询揭秘 13.4 数据库操作 13.4.1 插入 13.4.2 更新 13.4.3 删除 13.4.4 管理并发 13.4.5 处理并发冲突 13.5 EntityDataSource控件 13.5.1 显示数据 13.5.2 获取关联数据 13.5.3 编辑数据 13.5.4 验证 13.6 使用QueryExtender控件 13.6.1 使用SearchExperssion 13.6.2 使用RangeExpression 13.6.3 使用PropertyExpression 13.6.4 使用MethodExpression 13.7 总结 第14章 XML 14.1 什么时候使用XML 14.2 XML简介 14.2.1 XML的优点 14.2.2 格式良好的XML 14.2.3 XML命名空间 14.2.4 XML架构 14.3 基于流的XML处理 14.3.1 写XML文件 14.3.2 读取XML文件 14.4 内存中的XML处理 14.4.1 XmlDocument 14.4.2 XPathNavigator 14.4.3 XDocument 14.5 搜索XML内容 14.5.1 搜索XmlDocument 14.5.2 使用XPath搜索XmlDocument 14.5.3 使用LINQ搜索XDocument 14.6 验证XML内容 14.6.1 基本架构 14.6.2 验证XmlDocument 14.6.3 使用XDocument进行验证 14.7 转换XML内容 14.7.1 基本的样式表 14.7.2 使用XslCompiledTransform 14.7.3 使用Xml控件 14.7.4 使用LINQ to XML转换XML 14.8 XML数据绑定 14.8.1 非层次化绑定 14.8.2 使用XPath 14.8.3 嵌套的网格 14.8.4 使用TreeView的层次化绑定 14.8.5 使用XSLT 14.8.6 绑定到来自其他源的XML内容 14.8.7 通过XmlDataSource更新XML 14.9 XML和ADO.NET数据集 14.9.1 把DataSet转换为XML 14.9.2 把DataSet作为XML访问 14.10 总结 第三部分 构建ASP.NET网站 第15章 用户控件 15.1 用户控件基础 15.1.1 创建简单的用户控件 15.1.2 把页面转换成用户控件 15.2 为用户控件添加代码 15.2.1 处理事件 15.2.2 添加属性 15.2.3 使用自定义对象 15.2.4 添加事件 15.2.5 公开内部Web控件 15.3 动态加载用户控件 15.4 局部页面缓存 15.4.1 VaryByControl 15.4.2 共享缓存控件 15.5 总结 第16章 主题和母版页 16.1 层叠样式表 16.1.1 创建样式表 16.1.2 应用样式表规则 16.2 主题 16.2.1 主题文件夹和外观 16.2.2 应用简单主题 16.2.3 处理主题冲突 16.2.4 为同一控件创建多个外观 16.2.5 含有模板和图片的外观 16.2.6 在主题里使用CSS 16.2.7 通过配置文件来应用主题 16.2.8 动态应用主题 16.3 标准化网站布局 16.4 母版页基础 16.4.1 简单的母版页 16.4.2 简单的内容页 16.4.3 默认内容 16.4.4 具有表格和CSS布局的母版页 16.4.5 母版页和相对路径 16.4.6 通过配置文件应用母版页 16.5 高级母版页 16.5.1 和母版页类交互 16.5.2 动态设置母版页 16.5.3 嵌套母版页 16.6 总结 第17章 网站导航 17.1 多视图页面 17.1.1 MultiView控件 17.1.2 Wizard控件 17.2 站点地图 17.2.1 定义站点地图 17.2.2 绑定站点地图 17.2.3 导航路径 17.2.4 显示站点地图的一部分 17.2.5 站点地图对象 17.2.6 加入自定义站点地图信息 17.2.7 创建自定义的SiteMapProvider 17.2.8 安全调整 17.3 URL映射和路由 17.3.1 URL映射 17.3.2 URL路由 17.4 TreeView控件 17.4.1 TreeNode 17.4.2 按需填充节点 17.4.3 TreeView样式 17.5 Menu控件 17.5.1 Menu样式 17.5.2 Menu模板 17.6 总结 第18章 网站部署 18.1 安装和配置IIS 18.1.1 安装IIS 7 18.1.2 管理IIS 7 18.2 部署网站 18.2.1 通过复制文件进行部署 18.2.2 使用Web部署 18.2.3 通过FTP部署 18.3 管理网站 18.3.1 创建新站点 18.3.2 创建虚拟目录 18.3.3 使用VirtualPathProvider 18.3.4 使用应用程序池 18.3.5 使用应用程序预热 18.4 扩展集成管道 18.4.1 创建处理程序 18.4.2 部署处理程序 18.4.3 配置处理程序 18.4.4 测试处理程序 18.5 总结 第四部分 安全 第19章 ASP.NET安全模型 19.1 为何创建安全软件 19.1.1 理解潜在的威胁 19.1.2 安全编程原则 19.1.3 理解Gatekeeper 19.2 理解安全级别 19.2.1 验证 19.2.2 授权 19.2.3 机密性和完整性 19.2.4 互相协作 19.3 理解SSL 19.3.1 理解证书 19.3.2 理解SSL 19.3.3 在IIS 7.x中配置SSL 19.4 总结 第20章 表单验证 20.1 表单验证介绍 20.1.1 为什么使用表单验证 20.1.2 为什么不使用表单验证 20.1.3 为什么不自己实现cookie验证 20.1.4 表单验证类 20.2 实现表单验证 20.2.1 配置表单验证 20.2.2 禁止匿名用户访问 20.2.3 创建自定义登录页面 20.2.4 自定义凭证存储 20.2.5 表单验证中的持久化cookie 20.3 IIS 7.x和表单验证 20.4 总结 第21章 成员资格 21.1 介绍ASP.NET的成员资格API 21.2 使用成员资格API 21.2.1 配置表单验证 21.2.2 创建数据存储 21.2.3 配置连接字符串和成员资格提供程序 21.2.4 创建并验证用户 21.3 使用安全控件 21.3.1 Login控件 21.3.2 LoginStatus控件 21.3.3 LoginView控件 21.3.4 PasswordRecovery控件 21.3.5 ChangePassword控件 21.3.6 CreateUserWizard控件 21.4 在IIS 7.x里配置成员资格 21.4.1 配置提供程序和用户 21.4.2 在其他应用程序里使用成员资格API 21.5 使用Membership类 21.5.1 从存储中获得用户 21.5.2 更新存储中的用户 21.5.3 创建和删除用户 21.5.4 检验用户 21.6 总结 第22章 Windows验证 22.1 介绍Windows验证 22.1.1 为什么使用Windows验证 22.1.2 为什么不使用Windows验证 22.1.3 Windows验证机制 22.2 实现Windows验证 22.2.1 配置IIS 7.x 22.2.2 配置ASP.NET 22.2.3 IIS 7.x管道 22.2.4 禁止匿名用户访问 22.2.5 访问Windows用户信息 22.3 身份模拟 22.3.1 Windows中的身份模拟和委托 22.3.2 经过配置的身份模拟 22.3.3 可编程的身份模拟 22.4 总结 第23章 授权和角色 23.1 URL 授权 23.2 文件授权 23.3 在代码中检查授权 23.3.1 使用IsInRole()方法 23.3.2 使用PrincipalPermission类 23.4 为基于角色的授权使用角色API 23.4.1 和角色一起使用LoginView控件 23.4.2 通过编程访问角色 23.4.3 在Windows验证中使用角色API 23.5 IIS 7.x里的授权和角色 23.5.1 在IIS 7.x里使用ASP.NET角色授权 23.5.2 在IIS 7.x中管理ASP.NET角色 23.6 总结 第24章 用户配置 24.1 理解用户配置 24.1.1 用户配置的性能 24.1.2 用户配置如何存储数据 24.1.3 用户配置和验证 24.1.4 用户配置与自定义的数据组件 24.2 使用SqlProfileProvider 24.2.1 创建用户配置表 24.2.2 配置提供程序 24.2.3 定义用户配置属性 24.2.4 使用用户配置属性 24.2.5 用户配置序列化 24.2.6 用户配置组 24.2.7 用户配置和自定义的数据类型 24.2.8 用户配置API 24.2.9 匿名用户配置 24.3 自定义的用户配置提供程序 24.3.1 自定义的用户配置提供程序类 24.3.2 设计FactoredProfileProvider 24.3.3 通过编码实现FactoredProfileProvider 24.3.4 测试FactoredProfileProvider 24.4 总结 第25章 加密 25.1 加密数据:机密性问题 25.2 .NET加密命名空间 25.3 理解.NET加密类 25.3.1 对称加密算法 25.3.2 非对称加密 25.3.3 抽象加密类 25.3.4 ICryptoTransform接口 25.3.5 CryptoStream类 25.4 加密敏感数据 25.4.1 管理秘密信息 25.4.2 使用对称算法 25.4.3 使用非对称算法 25.4.4 加密数据库中的敏感数据 25.5 加密查询字符串 25.5.1 包装查询字符串 25.5.2 创建一个测试页面 25.6 总结 第26章 自定义成员资格提供程序 26.1 自定义提供程序的架构 26.2 创建自定义提供程序的基本步骤 26.2.1 自定义提供程序的总体设计 26.2.2 设计并实现自定义存储 26.2.3 实现提供程序类 26.2.4 使用自定义提供程序类 26.3 总结 第五部分 高级用户界面 第27章 自定义服务器控件 27.1 自定义服务器控件入门 27.1.1 创建简单的自定义控件 27.1.2 使用自定义控件 27.1.3 工具箱中的自定义控件 27.1.4 创建支持样式属性的Web控件 27.1.5 呈现过程 27.2 处理不同的浏览器 27.2.1 HtmlTextWriter 27.2.2 浏览器检测 27.2.3 浏览器属性 27.2.4 覆盖浏览器类型侦测 27.2.5 自适应呈现 27.3 控件状态和事件 27.3.1 视图状态 27.3.2 控件状态 27.3.3 回传数据和change事件 27.3.4 触发回传 27.4 扩展现有的Web控件 27.4.1 组合控件 27.4.2 派生控件 27.5 总结 第28章 图形、GDI+和图表 28.1 ImageMap控件 28.1.1 创建热点 28.1.2 处理热点单击 28.1.3 自定义热点 28.2 使用GDI+画图 28.2.1 简单绘制 28.2.2 图像格式和质量 28.2.3 Graphics类 28.2.4 使用GraphicsPath 28.2.5 画笔 28.2.6 画刷 28.3 在网页上嵌入动态图形 28.3.1 使用PNG格式 28.3.2 传递信息给动态图像 28.3.3 使用GDI+的自定义控件 28.4 使用Chart控件 28.4.1 创建基本的图表 28.4.2 用数据填充图表 28.5 总结 第29章 JavaScript和Ajax技术 29.1 JavaScript本质 29.1.1 HTML DOM 29.1.2 客户端事件 29.1.3 脚本块 29.1.4 操纵HTML元素 29.1.5 调试JavaScript 29.2 基本的JavaScript示例 29.2.1 创建JavaScript页面处理器 29.2.2 使用JavaScript异步下载图片 29.2.3 呈现脚本块 29.3 脚本注入攻击 29.3.1 请求验证 29.3.2 禁用请求验证 29.3.3 扩展请求验证 29.4 带有JavaScript的自定义控件 29.4.1 弹窗口 29.4.2 滚动按钮 29.5 框架 29.5.1 框架导航 29.5.2 内联框架 29.6 理解Ajax 29.6.1 XMLHttpRequest对象 29.6.2 Ajax示例 29.7 在客户端回调中使用Ajax 29.7.1 创建客户端回调 29.7.2 深入了解客户端回调 29.7.3 自定义控件里的客户端回调 29.8 总结 第30章 ASP.NETAJAX 30.1 介绍ASP.NETAJAX 30.1.1 客户端的ASP.NETAJAX:脚本库 30.1.2 服务器端的ASP.NETAJAX:ScriptManager 30.2 服务器回调 30.2.1 ASP.NETAJAX中的Web服务 30.2.2 在页面里放置Web方法 30.2.3 ASP.NETAJAX应用程序服务 30.3 ASP.NETAJAX服务器控件 30.3.1 使用UpdatePanel的局部呈现 30.3.2 使用Timer的定时刷新 30.3.3 使用UpdateProgress的耗时更新 30.3.4 管理浏览器历史 30.4 深入客户端库 30.4.1 理解客户端模型 30.4.2 JavaScript的面向对象编程 30.4.3 网页框架 30.5 控件扩展器 30.5.1 安装ASP.NETAJAX控件工具包 30.5.2 AutoCompleteExtender 30.5.3 ASP.NETAJAX控件工具包 30.6 总结 第31章 使用Web部件页面的门户网站 31.1 典型门户页面 31.2 基本Web部件页面 31.2.1 创建页面设计 31.2.2 WebPartManager和WebPartZone 31.2.3 向页面添加Web部件 31.2.4 定制页面 31.3 创建Web部件 31.3.1 简单的Web部件任务 31.3.2 开发高级Web部件 31.3.3 Web部件编辑器 31.3.4 连接Web部件 31.3.5 自定义动词和Web部件 31.3.6 用户控件和高级Web部件 31.3.7 动态上传Web部件 31.3.8 对Web部件的授权 31.3.9 个性化的最后任务 31.4 总结 第32章 MVC 32.1 MVC和Web表单的选择 32.2 创建基本的MVC应用程序 32.2.1 创建模型 32.2.2 创建控制器 32.2.3 创建Index视图 32.2.4 测试(未完成的)应用程序 32.2.5 完成控制器和视图 32.2.6 修改Site.Master文件 32.3 扩展基础的MVC应用程序 32.3.1 配置路由 32.3.2 增加错误处理 32.3.3 增加验证 32.3.4 增强数据存储访问 32.3.5 增加对外键约束的支持 32.4 自定义视图 32.4.1 修改视图 32.4.2 增加视图数据 32.5 强化模型 32.6 验证数据 32.6.1 执行基本的验证 32.6.2 增加验证标注 32.7 使用动作结果 32.7.1 返回JSON数据 32.7.2 调用其他控制器方法 32.8 总结 第33章 动态数据 33.1 创建动态数据应用程序 33.1.1 创建动态数据网站 33.1.2 检验动态数据网站 33.2 深入理解动态数据项目 33.3 自定义动态数据网站 33.3.1 使用模板进行自定义 33.3.2 使用路由进行自定义 33.3.3 使用元数据进行自定义 33.3.4 自定义验证 33.4 总结 第34章 Silverlight 34.1 理解Silverlight 34.1.1 Silverlight与Flash对比 34.1.2 Silverlight系统需求 34.2 创建Silverlight解决方案 34.2. 1 Silverlight编译 34.2.2 入口页面 34.3 创建Silverlight项目 34.3.1 设计Silverlight页面 34.3.2 理解XAML 34.3.3 设置属性 34.3.4 XAML 代码隐藏 34.3.5 处理事件 34.3.6 了解Silverlight类库 34.4 布局 34.4.1 Canvas 34.4.2 网格 34.5 动画 34.5.1 动画基础知识 34.5.2 定义动画 34.5.3 StoryBoard类 34.5.4 交互式动画实例 34.5.5 变换 34.6 Silverlight使用Web服务 34.6.1 创建Web服务 34.6.2 添加Web引用 34.6.3 调用Web服务 34.6.4 配置Web服务URL 34.6.5 跨域Web服务调用 34.7 总结
我国GIS经过三十多年的发展,理论和技术日趋成熟,在传统二维GIS已不能满足应用需求的情况下,三维GIS应运而生,并成为GIS的重要发展方向之一。上世纪八十年代末以来,空间信息三维可视化技术成为业界研究的热点并以惊人的速度迅速发展起来,首先是美国推Google Earth、Skyline、World Wind、 Virtual Earth、ArcGIS Explorer等,我国也紧随推了EV-Globe 、GeoGlobe、VRMap、IMAGIS等软件与国外软件竞争本土市场。三维GIS得到了各行业用户的认同,在城市规划、综合应急、军事仿真、虚拟旅游、智能交通、海洋资源管理、石油设施管理、无线通信基站选址、环保监测、地下管线等领域备受青睐。目前,我国国产三维GIS软件已占据了国内市场的半壁江山。   本文唱谈了十九个国内外主流的三维GIS软件,并对其基本特点、发展历程、应用等方面做了总结概述。由于作者水平有限,不足之处恳请读者批评指正。   国外三维GIS软件:   一重唱·美国谷歌公司:Google Earth--用户最多的三维地球软件   介绍:Google Earth以三维地球的形式把大量卫星图片、航拍照片和模拟三维图像组织在一起,使用户从不同角度浏览地球。Google Earth的数据来源于商业遥感卫星影像和航片,包括DigitalGlobe公司的QuickBird,IKOONOS及法国SPOTS。   特点:Google Earth凭借其强大的技术实力和经验,以其操作简单、用户体验超群的优势吸引了全球近十分之一的人口使用。   发展历程:Google于2004年10月收购了Keyhole公司,随之次年6月推Google Earth系列软件。   产品形式:Google Earth客户端软件提供三个版本:个人免费版、Plus版、Pro版以及企业级解决方案,用于在企业内部部署Google Earth应用。   二重唱·美国国家航空和航天管理局(NASA):World Wind--最强大的开源地理科普软件   介绍:World Wind是NASA发布的一个开放源代码的地理科普软件,由NASA Research开发,NASA Learning Technologies来发展,它是一个可视化地球仪,将NASA、USGS以及其它WMS服务商提供的图像通过一个三维的地球模型展现,还包含了火星和月球的展现。软件用C#编写,调用微软SQL Server影像库Terrain Server来进行全球地形三维显示。它通过将遥感影像与SRTM高程(航天飞机雷达拓扑测绘)叠加生成三维地形。   特点:World Wind最大的特性是卫星数据的自动更新能力。这种能力使得World Wind具有在世界范围内跟踪近期事件、天气变化、火灾等情况的能力。   拥有NASA血统的World Wind可以利用Landsat 7、SRTM、MODIS、GLOBE , Landmark Set等多颗卫星的数据,将Landsat卫星的图像和航天飞机雷达遥感数据结合在一起,让用户体验三维地球遨游的感觉。采用了先进的流传输技术。   World Wind是个完全免费的软件,在使用上没有任何限制,主要面向科学家、研究工作者和学生群体。另外World Wind是完全开放的,用户可以修改World Wind软件本身。目前,包括国内部分三维GIS软件在内的全球许多主流三维软件都是以World Wind为技术内核发展而来。   三重唱·美国Skyline公司:Skyline Globe--个性化的三维地理信息系统   介绍:SkylineGlobe产品能够基于地表的卫星影像、航空影像创建高分辨率的三维虚拟地球场景。Skyline具有强大空间信息展示功能,支持交互式绘图工具,提供三维测量及地形分析工具,提供数据库接口支持如Oracle,ArcSDE,拥有强大数据处理能力。   特点:Skyline Globe Enterprise Solution是美国Skyline公司为网络运营三维地理信息提供的企业级解决方案。包括了Skyline整套软件工具,给客户提供一站式服务,并开放了所有的API,不论是在网络环境中还是单机应用,让用户能够根据自己的需求定制功能,建立个性化的三维地理信息系统。   产品形式:TerraExplorer、TerraExplorer Pro、TerraBuilder、TerraGate。   应用:中国数字海洋系统、公安部警卫基础工作信息系统、数字深圳三维平台、黄河可视化防汛预案管理系统、数字烟台三维城市规划信息系统等。   四重唱·美国微软公司:Virtual Earth--可以在浏览器中直接运行的三维地球软件   介绍:Virtual Earth 3D可以呈现完整交互式的三维图片,是基于地图的搜索工具,集航拍照片、地图、黄页数据于一体。在Virtual Earth 3D中,就象在大型3D游戏的虚拟现实环境中一样,用户可以在城市之间、建筑物之间“飞来飞去”。除了真实地“再现”城市的地形外,Virtual Earth 3D中也包含一些现实世界中不存在的东西。   特点:Virtual Earth 3D不要求用户在硬盘上下载应用软件,而是直接在浏览器中运行。   发展历程:在Google宣布推Google Earth后,微软也紧跟其后启动了相关计划。2005年12月23日,微软公司收购一家从事三维地球研究的华人公司GeoTange。2006年5月3日,又收购一家专门从事遥感领域研究的公司Vexcel。随后,在2006年11月初微软发布了Virtual Earth 3D。今年6月,微软推Bing搜索后,意味着原来的“Virtual Earth”变成了“Bing Maps and Bing Maps for Enterprise”。   五重唱·美国环境系统研究所公司(ESRI): ArcGIS Explorer--ArcGIS家族的3D后代   介绍:ArcGIS Explorer是一个免费的虚拟地球浏览器,提供自由、快速的2D和3D地理信息浏览,充满趣味性且简捷易用。ArcGIS Explorer通过继承ArcGIS Server完整的GIS性能(包括空间处理和3D服务),达到整合丰富的GIS数据集和服务器空间处理应用的目的。   特点:AreG1S Explore具有和Google Earth相似的功能,支持来自ArcGIS Server、GML、WMS、Google Earth(KML)的数据。   发展历程:ArcGIS Explorer是2006年8月推。在明年即将发布的ArcGIS9.4中也将加强三维GIS功能。 间奏曲   国内三维GIS产品:   六重唱·北京国遥新天地信息技术有限公司:EV-Globe--国内三维海量空间信息平台佼佼者   介绍:EV-Globe具有大范围的、海量的、多源的数据一体化管理和快速三维实时漫游功能,支持三维空间查询、分析和运算,可与常规GIS软件集成,可方便快速构建三维空间信息服务系统,亦可快速在二维GIS系统完成向三维的扩展。EV-Globe提供距离测量、线段剖面、折线剖面、区域淹没、通视分析等三维GIS特色的空间分析功能。可以在EV-Globe中看到烟雾、尘暴、火焰以及下雨、下雪等特殊效果。   特点:EV-Globe基于组件式开发,所有功能以控件或类的方式封装在dll中,用户可以很方便进行各种功能定制,甚至将EV-Globe嵌入各类信息系统中。EV-Globe具备在普通PC机上就能实现的海量三维模型和影像流畅地进行各项漫游操作的功能。此外在EV-Globe服务器端,用户可根据需要绑定常规GIS平台如SuperMap,ArcGIS等。   发展历程:EV-Globe于2008年12月、2009年5月、7月分别发布了EV-Globe SDK、EV-Globe Sea和EV-Globe Web版,并将于今年12月3日正式发布EV-Globe 2.0。   产品形式:EV-Globe SDK(开发包)、EV-Globe Pro(数据浏览工具)、EV-Globe Creater(数据制作工具)、EV-Globe Datasets(影像数据集)。   应用:全国海岛海岸带三维可视化信息系统、中石油海外应急系统、中国石油中长期油气管网建设预测分析、宁波镇海环保三维影像浏览系统、遨游天府--四川省地理空间三维管理系统。   七重唱·武大吉奥信息技术有限公司:GeoGlobe--加入实时三维量测功能   介绍:GeoGlobe是武汉大学李德仁和龚建雅等教授花了近10年时间打造,由武汉大学测绘遥感信息工程国家重点实验室研发的网络环境下全球海量无缝空间数据组织、管理与可视化软件。GeoGlobe提供了一系列三维可视化及应用的功能:可视化导航与操作、可视化查询与三维分析、兴趣点标注及定位等。还提供了二次开发功能,用户可以根据应用的需要自行设计界面,调用所提供的动态库进行二次开发。   特点:GeoGlobe具有和World Wind相似的功能,加入了实时三维量测等功能。能同时处理多种来源的数据,包括三维地形图、航拍影像图、三维模型,矢量数据,是Google Earth所没有的。GeoGlobe2.0提供了海量4D数据(DEM、DOM、DLG、DRG)、地名数据、三维模型数据的完整解决方案。   发展历程:GeoGlobe于2006年4月推,现已推至GeoGlobe2.0。   产品形式: GeoGlobe Server、GeoGlobe Builder、GeoGlobe Viewer。   八重唱·适普软件有限公司:IMAGIS--管理意义上的“所见即所得”   介绍:IMAGIS三维可视地理信息系统是一套以数字正射影像(DOM)、数字地面模型(DEM)、数字线划图 (DLG)和数字栅格图 (DRG)作为处理对象的 GIS 系统。结合了三维可视化技术与虚拟现实技术,完全再现管理环境下的真实情况,把所有管理对象都置于一个真实的三维世界中,真正做到了管理意义上的“所见即所得”。   特点:IMAGIS在数据管理上采用了矢量数据和栅格数据混合管理的数据结构,二者可以相互独立存在,同时,栅格数据也可以作为矢量数据的属性,以适应不同情况下的要求。   发展历程:2003年3月推IMAGIS V2.3,2004年6月推增强版本IMAGIS V2.3.6,并在该版本中正式推IMAGIS Web3D V1.0 中英文版本。   产品形式:   IMAGIS Education:三维可视地理信息系统教育版;   IMAGIS Classic:三维可视地理信息系统;   IMAGIS Magixity:城市建模与可视化地理信息系统;   IMAGIS 3DBrowser:影像快速漫游系统;   IMAGIS Web3D:三维场景数据网络发布系统;   IMAGIS Sup3DBrowser:3DBrowser 通用控件。   九重唱·伟景行数字城市科技有限公司:CityMaker--数字城市的三维应用   介绍:CityMaker 是数字城市三维可视化平台,主要针对城市规划领域,提供覆盖规划设计、展示、评估、管理的全方位服务。提供从三维地理信息系统建设到应用的全面解决方案。通过CityMaker三维地理信息平台,可以叠加显示城市面貌、规划图则、户籍信息、监控视频等各种二三维数据,还可快速集成已有专业系统,开展基于网络的三维专业应用。   特点:是面向规划设计师和建筑师的三维辅助设计软件,它将虚拟可视化技术融入设计过程,让设计师在三维环境下进行城市的设计、评估、分析和交流。它可以与3ds MAX等建模软件配合使用,支持材质编辑和物体运动编辑,支持火焰、喷泉、爆炸和雨雪等虚拟现实效果的制作等。   产品形式:   CityMaker Network:专业的城市级三维地理空间信息网络应用平台;   CityMaker Professional:专业的城市规划三维分析软件;   CityMaker Builder:城市级三维地理空间创建软件平台;   CityMaker Designer:面向规划设计师和建筑师的三维辅助设计软件;   CityMaker Simulation System:专业的多通道三维模拟仿真软件。   应用:数字北京、数字斯图加特、虚拟圆明园、上海世博会虚拟现实系统等。   十重唱·杭州阿拉丁信息科技股份有限公司:AlaGIS--网络仿真城市E都市的同门   介绍:AlaGIS与全球首个大规模网络仿真城市E都市同属于杭州阿拉丁公司,采用面向网络的分布式空间信息应用服务支撑平台,集二维、三维、遥感影像于一体,全面整合了GIS与数据库、软件工程、人工智能、网络技术及其他多种计算机主流技术。   特点:二三维叠加是AlaGIS的主要特点,AlaGIS平台采用的合理的二三维映射使二维图形和三维图形的数据一一对应,从而实现了二维图形和三维图形的有效结合,通过二三维的切换或者透明度变化来达到所期望的图形效果。   应用:三维地名管理系统、三维警务地理信息系统、三维数字房产管理系统、三维税源网络管理系统、三维旅游展示管理平台等。   十一重唱·北京灵图软件技术有限公司:VRMap--首次在微机上再现真三维景观   介绍:三维地理信息系统软件VRMap实现了VR和GIS技术的完美结合,可以根据卫星影像、航空影像、电子地图、高程数据、城市模型数据、虚拟效果数据生成虚拟地理场景;通过VRMap提供的二次开发包,可实现规划、国土、电信、交通、水利等各行业的专业分析。   特点:VRMap采用J2EE体系架构,快速、灵活构建基于Web的三维业务应用系统;同时VRMap提供城市级别的基于网络的海量精细场景,可快速建立三维应用。   发展历程:从2000年诞生的VRMap1.0至今,VRMap产品已升级到4.0。但是受2007年底灵图公司裁员事件影响,原VRMap团队成员流失较为严重,产品后续发展堪忧。   产品形式:VRMap标准版、VRMap专业版、VRMap企业版。   十二重唱·北京海澄华图科技有限公司:NEOMAP VPlatform--灵图VRMap的变身   介绍:NEOMAP VPlatform的简称是NVP,它可以在网络发布全球高精度DEM/DOM/DLG数据和特大城市级三维精细模型。NVP提供服务接口,支持灵活的二次开发和二三维一体化应用。NVP包含三维数据处理、三维场景整合、三维网络服务平台、三维数据浏览、运维支撑、二次开发SDK共六个子系统。   特点:NVP的多项核心技术,包括高效的海量空间数据管理技术、海量三维数据网络发布技术、地形、影像数据存储压缩技术、多精度地形、影像数据融合技术,处于国内外领先水平,在对于三维GIS系统最重要的海量数据支持、稳定性、二次开发支持、三维效果方面有显著优势。   发展历程:2008年8月成立公司,随即推NEOMAP VPlatform。   产品形式:三维数据处理、三维场景整合、三维网络服务平台、三维数据浏览、运维支撑、二次开发SDK。   应用:数字延吉城市地理信息共享平台、苏州市基础地理信息共享平台、青岛市南区空间信息服务平台及应用、秦皇岛城市管理局。   十三重唱·中国资源卫星应用中心、北京视宝卫星图像公司、北京星天地信息科技公司:数据地球(中国)--卫星、航空、地面三种采集方式的集成   介绍:数据地球(中国)(Data Earth China)是我国第一个集数据与软件一体化的三维地理空间信息系统,它在国家863计划地球观测与导航技术领域项目支持下,由中国资源卫星应用中心、视宝公司和北京星天地公司三家联合研发的新一代自主产权的三维地理空间信息服务平台,标志着我国已拥有基于卫星、航空、地面三种方式采集到的地理信息综合开发而成的三维立体地理空间信息系统。   特点:该平台集成了国内领先的Uniscope三维GIS引擎技术,覆盖全域的高分辨率卫星影像(CBERS-02B、SPOT5)、较高精度的地形高程数据、导航用道路和POI等矢量信息,符合保密规定的政府用户还可以享受航空影像数据服务,是数据和平台,航天和航空、宏观和微观、矢量和栅格相结合的新一代三维地理信息产品。   发展历程: 2009年9月发布。   应用:城市应急指挥、国防信息化建设、国土资源管理、城市规划、环境保护、灾害防治等。   十四重唱·武汉地大信息科技发展有限公司:InfoEarth TelluroMap--三维应用系统集成   介绍:InfoEarth TelluroMap采用面向Internet的分布式计算技术和三维可视化技术,支持跨区域、跨网络的复杂大型网络三维应用系统集成。为海量三维空间数据的发布提供了可扩展的开发平台,开发者可以方便、灵活地实现网络空间数据的共享和三维可视化。   特点:InfoEarth TelluroMap基于主流技术平台。NET开发,产品开放性好、架构灵活、三维功能和GIS功能强大、支持TB级海量空间和三维模型数据发布和应用。   产品形式:   InfoEarth TelluroMap Server:服务器端应用程序和组件库;   InfoEarth TelluroMap GlobeEngine:基于组件技术的三维可视化组件;   InfoEarth TelluroMap Map:基于Ajax的WebGIS客户端组件;   InfoEarth TelluroMap Fusion:空间数据、三维模型数据入库、预处理模块。   应用:数字汉江、数字地大、移动基站三维地理信息系统设计方案、山洪(灾害)预警系统工程解决方案等。   十五重唱·北京朝夕科技有限责任公司:Drawsee Earth--在线开发的三维地理信息系统   介绍:Drawsee Earth是结合三维和网络技术的互联网三维GIS开发平台,构建企业级B/S结构三维行业应用的工具。它基于Microsoft .NET与ActiveX软件平台,通过海量数据管理、网络数据流传输、三维模型高速显示等技术,把卫星影像、数字高程、普通矢量地图、精细建筑模型等数据融合到一起。   特点:Drawsee Earth不仅可以提供三维场景可视化、海量数据管理,而是结合行业,提供三维场景动态模拟分析。将三维场景各类实体的可预见态势、不可预见态势,通过动态分析真实展现来。   产品形式:   Drawsee EarthDesk:数据融合工具;   Drawsee EarthServer:数据服务器;   Drawsee EarthViewer:客户端插件。   应用:三维森林防火指挥系统、三维油罐监控系统、互联网3DGPS车辆监控系统等。   十六重唱·北京超维创想信息技术有限公司:Creatar --真三维地学信息系统   介绍:Creatar 1.0三维地学信息系统是超维创想公司基于北京大学科研实力进行技术创新,自主研发的新一代真三维地学信息系统系列软件。该软件是我国第一个参加科技部软件测评的真三维地学信息系统软件。   特点:完善的三维空间信息基础服务、开放的系统平台、多应用模式支持。   应用:城市地质、岩土工程、环境地质、矿产资源勘查等众多地学相关领域。   十七重唱·北京超图软件股份有限公司:SuperMap iSpace--二三维一体化的三维 GIS模块   介绍:SuperMap iSpace是SuperMap UGC新增三维GIS模块的产品研发代号。采用了SuperMap SDX+空间数据库技术来高效地、一体化地存储和管理二维三维空间数据,升级了二维显示的功能,不仅能够支持将二维的GIS数据和地图直接加载到真三维场景中进行显示,而且可以在二维窗口中显示三维数据,在二维地图中使用三维符号,真正实现了二维三维数据一体化。   特点:二维三维数据一体化、多元数据无缝集成、多元数据无缝集成、三维web浏览等;提供基本的三维空间分析能力包括:量算分析、查询统计分析、通视性分析。   发展历程:2009年10月在超图用户大会上宣布,但目前尚未看到成熟的产品。   十八重唱·中地数码集团:MapGIS-TDE--地上、地表、地下的三维空间数据模型   介绍:MAPGIS-TDE 三维处理平台是中地公司在 MAPGIS7.0 中推的一套支持真三维数据处理及3DGIS 应用项目二次开发平台。采用三维空间数据模型、构模算法、三维可视化技术及框架加插件的软件体系结构,具备集成管理地上、地表、地下的三维空间模型的能力,可以管理从2.5维到3维、从矢量到栅格等多种三维空间数据模型,并提供多种模型建立、管理及显示的工具及接口。   特点:MAPGIS-TDE在提供一般三维空间数据模型及其管理功能的基础上,平台允许针对特定应用领域动态扩展建模及其分析功能插件,以适应特定的三维应用。   应用:MAPGIS三维数码景观系统、MAPGIS 工程勘察信息系统、MAPGIS 城市地质信息系统、MAPGIS 综合管网信息系统等。   十九重唱·广州市红鹏直升机应用服务有限公司:真三维地理信息系统--航空摄影测量的延伸   介绍:红鹏真三维地理信息系统是以普通数字地图数据为基础,利用虚拟现实技术,将高程数据用形象的方式表现来;同时运用多媒体和三维可视化技术将图形、图像、文字和数据纳入统一的窗口系统下管理,使其具有虚拟、动态、交互等特征。   特点:红鹏真实三维数字地图不同于其它城市虚拟仿真系统,而是利用其自身优势,从低空(300米)获取高分辨率的航空影像。同时,高分辨率的航空影像也有助于量测精准的城市建筑的空间尺度。三维数字地图的平均误差不超过1.5 米。利用航空摄影测量的方式,可以快捷、准确、低成本地构建大范围的城市三维地图。 尾声   技术的进步和用户需求的拉动在GIS从二维向三维的发展中起到了决定性的作用。GIS的三维时代,已经悄然来临并广泛应用发展。随着计算机与空间技术的进步与发展, GIS 将由各自分开独立的系统走向兼容与集成;由二维走向三维和四维, 由单机走向网络, 并最终走向社会和家庭。

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧