在Pro7.0.0和7.0.1环境下测试可用。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" language="javascript">
// 执行ExecuteQuery方法
//zhaohe.2017.09.18.
function GetFeatureAll() {
try {
var strResult = "<table>";
var sg = CSGWorld();
//var sg = TerraExplorer3DWindowEx.CreateInstance("TerraExplorerX.SGWorld70");
var ItemID = sg.ProjectTree.FindItem("_县级城市名称.398244");
var obj = sg.ProjectTree.GetLayer(ItemID);
//查询条件
var attributeFilter = window.document.getElementById("Text1").value;
//最大查询数
var numOfFeatures = -1;
//查询起始feature的id
var fromDataSourFeaId = "";
var geometry = sg.Creator.GeometryCreator.CreatePolygonGeometry(null); var pIFeatureGroup = obj.ExecuteQuery(attributeFilter, numOfFeatures, fromDataSourFeaId, geometry);
// 遍历当前图层中符合查询条件的全部对象及其属性
alert(pIFeatureGroup.Count);
for (var i = 0; i < pIFeatureGroup.Count; i++) {
var pIFeature11 = pIFeatureGroup.Item(i);
sg.Navigate.FlyTo(pIFeature11.ID, 0);
//alert(pIFeature11.Geometry.Wks.ExportToWKT());
//alert(pIFeature11.Geometry.X);
}
for (var i = 0; i < pIFeatureGroup.Count; i++) {
strResult = strResult + "<tr>";
var pIFeature = pIFeatureGroup.Item(i);
for (var j = 0; j < pIFeature.FeatureAttributes.Count; j++) {
var pIFeatureAttribute = pIFeature.FeatureAttributes.Item(j); strResult = strResult + "<td style='cursor:pointer;'><a id="+pIFeature.ID+" onclick= \"JJJ\(this.id)\">" + pIFeatureAttribute.Name + "*" + pIFeatureAttribute.Value + "</a></td>"; }
strResult = strResult + "</tr>";
}
strResult = strResult + "</table>";
window.document.getElementById("result").innerHTML = strResult;
}
catch (e)
{
alert(e);
}
}
//GetCurrentFeatures 获取当前已经加载的Feature对象
//zhaohe.2017.09.18.
function GetCurrentFeatures() {
var strResult = "<table>";
var sg = CSGWorld();
var ItemID = sg.ProjectTree.FindItem("_县级城市名称.398244");
var obj = sg.ProjectTree.GetLayer(ItemID);
// 遍历当前图层中已经在地图上加载的全部对象及其属性
var pIFeatureGroup = obj.FeatureGroups(0).GetCurrentFeatures();
alert(pIFeatureGroup.Count);
for (var i = 0; i < pIFeatureGroup.Count; i++) {
strResult = strResult + "<tr>";
var pIFeature = pIFeatureGroup.Item(i);
//sg.Navigate.FlyTo(pIFeature.ID, 0);
//break;
for (var j = 0; j < pIFeature.FeatureAttributes.Count; j++) {
var pIFeatureAttribute = pIFeature.FeatureAttributes.Item(j);
strResult = strResult + "<td>" + pIFeatureAttribute.Name + "*" + pIFeatureAttribute.Value + "</td>";
}
strResult = strResult + "</tr>";
}
strResult = strResult + "</table>";
window.document.getElementById("result").innerHTML = strResult;
} //多边形查询
//zhaohe.2015.06.23.
function GetFeatureWithPoly() {
var strResult = "<table>";
var SGWorld = CSGWorld();
var ItemID = SGWorld.ProjectTree.FindItem("_县级城市名称.398244");
var obj = SGWorld.ProjectTree.GetLayer(ItemID);
// 遍历多边形内选中的对象及其属性
var qItemID = SGWorld.ProjectTree.GetNextItem("", 10);
// 在地图上创建一个Polygon,并选中这个对象
var qobj = SGWorld.ProjectTree.GetObject(qItemID);
var queryGeometry = qobj.Geometry;
var resFeatures = obj.ExecuteSpatialQuery(queryGeometry, 1);
for (var i = 0; i < resFeatures.Count; i++) {
strResult = strResult + "<tr>";
var pIFeature = resFeatures.Item(i);
for (var j = 0; j < pIFeature.FeatureAttributes.Count; j++) {
var pIFeatureAttribute = pIFeature.FeatureAttributes.Item(j);
strResult = strResult + "<td>" + pIFeatureAttribute.Name + "*" + pIFeatureAttribute.Value + "</td>";
}
strResult = strResult + "</tr>";
}
strResult = strResult + "</table>";
window.document.getElementById("result").innerHTML = strResult;
} //属性查询
//zhaohe.2015.06.23.
function GetFeatureWithPro() {
var SGWorld = CSGWorld();
var ItemID = SGWorld.ProjectTree.FindItem("_县级城市名称.398244");
var obj = SGWorld.ProjectTree.GetLayer(ItemID);
var clause = window.document.getElementById("Text1").value;
if (clause == "") {
obj.Filter = clause;
obj.Streaming = 1;
obj.Refresh();
}
else {
obj.Filter = clause;
obj.Streaming = 0;
obj.Refresh();
}
GetFeatureAll();
} function JJJ(id)
{
var SGWorld = CSGWorld();
SGWorld.Navigate.FlyTo(id, 0);
} // SGWorld70
function CSGWorld() {
try {
var obj = document.getElementById("SGWorld");
if (obj == null) {
obj = document.createElement('object');
obj.setAttribute("name", "SGWorld");
obj.setAttribute("id", "SGWorld");
obj.style.height = "1px";
obj.style.width = "1px";
obj.setAttribute("classid", "CLSID:3A4F919A-65A8-11D5-85C1-0001023952C1");
document.body.appendChild(obj);
}
return obj;
}
catch (e) {
alert(e);
}
}
</script>
</head>
<body>
<table>
<tr>
<td colspan="4" >
<input id="Button1" type="button" value="全部Feature" onclick="GetFeatureAll()" />
<input id="Button3" type="button" value="当前地图上已经加载的对象" onclick="GetCurrentFeatures()" />
<input id="Button2" type="button" value="空间查询" onclick="GetFeatureWithPoly()" />
</td>
</tr>
<tr>
<td colspan="4">
<input id="Text1" type="text" value="OBJECTID < 12" />
<input id="Button6" type="button" value="属性查询" onclick="GetFeatureWithPro()" />
</td>
</tr>
<tr>
<td>
<div id="result">
</div>
</td>
</tr>
</table>
<!--<object id="TerraExplorer3DWindowEx" classid="CLSID:3a4f9196-65a8-11d5-85c1-0001023952c1" style="width: 80%; height: 560px;"></object>-->
<object id="TerraExplorer3DWindow" classid="CLSID:3a4f9192-65a8-11d5-85c1-0001023952c1" style="width:500px;height:400px;"></object>
<object id="TerraExplorerInformationWindow" classid="CLSID:3a4f9193-65a8-11d5-85c1-0001023952c1" style="width:300px;height:400px;"></object>
</body>
</html>

SkylineGlobe 7.0版本 矢量数据查询示例代码的更多相关文章

  1. Skyline 二次实现单体化模型选择查询示例代码

      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or ...

  2. RSS介绍、RSS 2.0规范说明和示例代码

    RSS是一种消息来源格式规范,用以发布经常更新资料的网站,例如博客.新闻的网摘.RSS文件,又称做摘要.网摘.更新.频道等,包含了全文或节选文字,再加上一定的属性数据.RSS让发布者自动发布信息,也使 ...

  3. 使用mybatis实现分页查询示例代码分析

    *******************************************分页查询开始*************************************************** ...

  4. kafka consumer 0.8.2.1示例代码

    package test_kafka; import java.util.ArrayList; import java.util.HashMap; import java.util.List; imp ...

  5. python自动化测试之mysql5.0版本数据库查询数据时出现乱码问题分析

    1.确保数据库编码是utf8编码.若不是,请将my.ini的client,mysql,mysqld三个字段下面添加default-character-set = utf8,这样可以永久改变在新建数据库 ...

  6. TP5.0版本mysql查询语句 闭包

    Db::name('tiwen') ->where('user_id', $user_id) ->where(function ($query) { $query->where(fu ...

  7. RDIFramework.NET ━ .NET快速信息化系统开发框架钜献 V3.0 版本强势发布

    继上个版本“RDIFramework.NET V2.9版本”的推出,受到了重多客户的认可与选择,V2.9版本是非常成功与稳定的版本,感谢大家的认可与长期以来的关注与支持.V3.0版本在V2.9版本的基 ...

  8. 【SpringBoot】springboot -- 2.0版本自定义ReidsCacheManager的改变

    1. 问题发现 在1.0版本中,我们配置redis的cacheManager是这种方式: //缓存管理器 @Bean public CacheManager cacheManager(@Suppres ...

  9. 社会单位消防安全户籍化管理系统——半自动提交V1.0版本

    社会单位消防安全户籍化管理系统——半自动提交V1.0版本 首先先上代码,开发这个小程序其实是用来帮助同事完成一项每天都做的繁琐事件,以往需要花费十分钟做这件事情,现在就是傻瓜式,点几下鼠标就好了.本来 ...

随机推荐

  1. 如何用ABP框架快速完成项目(10) - ABP只要加人即可马上加快项目进展- 全栈篇(1) - 发挥DDD理论优势的时候到了!

    正如我在<程序员英语二三事(2) - 从听开始>里说的, 任何技术/工具/语言都有其适用场景和上下文环境. DDD理论同样是如此.   现在, 终于到了发挥DDD理论优势的时候啦!   一 ...

  2. 关系数据库标准语言SQL——概述

      SQL是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询.SQL是一个通用的.功能极强的关系数据库语言.SQL(Structured Query Language)结构化查询语 ...

  3. python爬虫学习记录——各种软件/库的安装

    Ubuntu18.04安装python3-pip 1.apt-get update更新源 2,ubuntu18.04默认安装了python3,但是pip没有安装,安装命令:apt install py ...

  4. 最详细的C++对应C#的数据类型转换

    C++ ---------------------- C# LDWORD ----------------IntPtr LLONG-------------------Intptr bool ---- ...

  5. [20181130]hash冲突导致查询缓慢.txt

    [20181130]hash冲突导致查询缓慢.txt --//昨天看了链接https://jonathanlewis.wordpress.com/2018/11/26/shrink-space-2/, ...

  6. SogouCloud.exe进程导致SQL Server服务无法启动

    早上打开笔记本想开启SQL Server服务时报错,于是根据提示查看windows日志: 依次点开报错发现第一条是1433端口被占用,于是找相关的进程: 于是杀掉此进程: taskkill /pid ...

  7. Windows Server 2016-管理站点复制(一)

    可以使用Active Directory站点和服务管理单元来管理实现站点间复制拓扑的特定于站点的对象.这些对象存储在Active Directory域服务 (AD DS) 的站点容器中.同一个站点内的 ...

  8. 《Java大学教程》—读后总结

    1.坚持就是胜利. 中间启动了许多次,但又因为各种原因被停.就连闭关学习期间,也多次想放弃,总觉得太简单,最后还是选择了这本书而放弃了其他书,原因是马上要还书了,"书是非借不能读!" ...

  9. 【Teradata】磁盘碎片整理(ferret工具)

    DEFRAGMENTcombines free sectors and moves them to the end of a cylinder.PACKDISKfill (or packs) cyli ...

  10. JavaScript的对象详解

    JavaScript对象的概述 什么是对象,代表现实中的某个事物, 是该事物在编程中的抽象,多个数据的集合体(封装体),用于保存多个数据的容器 为什么要用对象,便于对多个数据进行统一管理 对象属于一种 ...