SkylineGlobe 如何实现绘制圆形Polygon和对图层的圆形范围选择查询
//结束绘制圆形之前,得到Polygon
var pos = gPolyObj.Position;
var bufferR = gPolyObj.Radius;
var cVerticesArray = [-122.415025, 37.76059, 10, ];
var point = sgworld.Creator.GeometryCreator.CreatePointGeometry(cVerticesArray);
point.X = pos.X;
point.Y = pos.Y;
point.Z = pos.Altitude;
var newGeo = point.SpatialOperator.buffer(bufferR);
ExecuteSpatialQuery(null, newGeo);
function ExecuteSpatialQuery(pLayer, pGeo) {
var sgworld = CreateSGObj();
var htmlStr = "";
var layerItemId = sgworld.ProjectTree.FindItem("Building");
if (layerItemId != sgworld.ProjectTree.RootID) {
var pipeLayer = sgworld.ProjectTree.GetObject(layerItemId);
if (pipeLayer.ObjectType == 36) { // OT_FEATURE_LAYER = 36 // OT_3D_MESH_FEATURE_LAYER = 39
var statisticsedLayer = pipeLayer.ExecuteSpatialQuery(pGeo, 1);
//alert(statisticsedLayer.Count);
sgworld.Command.Execute(1086,0);
htmlStr = "<html><head><title></title>";
htmlStr += "<style>table{border-right:1px solid #ED7D31;border-bottom:1px solid #ED7D31}table td{border-left:1px solid #ED7D31;border-top:1px solid #ED7D31}</style>";
htmlStr += "</head><body style='width:100%;height:100%; margin:2px; padding:2px;'><table style='width:100%; text-align:center;font-size:12px;' border='0' cellspacing='0' cellpadding='0'><tr style='background-color:#ED7D31'>";
// var firstFeature = statisticsedLayer(0);
htmlStr += "<td>";
htmlStr += "选取设备数量";
htmlStr += "</td>";
htmlStr += "<td>";
htmlStr += " " + statisticsedLayer.Count;
htmlStr += "</td>";
htmlStr += "</tr>";
htmlStr += "</table></body></html>";
if (htmlStr != "") {
var ScreenRectHeight = sgworld.Window.Rect.Height;
var ScreenRectWidth = sgworld.Window.Rect.Width;
var areaPopup = sgworld.Creator.CreatePopupMessage("检修计划表", "", 231, 150, 231, 120);
areaPopup.InnerText = htmlStr;
areaPopup.Flags = 512;
areaPopup.AllowResize = true;
areaPopup.AllowDrag = true;
sgworld.Window.ShowPopup(areaPopup);
}
}
}
}
SkylineGlobe 如何实现绘制圆形Polygon和对图层的圆形范围选择查询的更多相关文章
- [RGEOS]绘制多边形Polygon
绘制OGIS定义的Polygon public void DrawPolygon(Polygon pol, Brush brush, Pen pen, bool clip) { gc = Graphi ...
- Altium Designer安装孔周围放置圆形Polygon Pour Cutout
1. 在Keep-Out层画2个圆, 中间的圆用作安装孔, 外圆做为禁止覆铜层. 这样做的好处是,放好安装孔后, 外面禁止覆铜层也覆不上铜, 防止螺钉与覆铜接触. 2. 选中外圆, Tools -& ...
- canvas自适应圆形时钟绘制
前面的话 前面介绍过canvas粒子时钟的绘制,本文将详细介绍canvas自适应圆形时钟绘制 效果演示 最终自适应圆形时钟的效果如下所示 功能分析 下面来分析一下该圆形时钟的功能 [1]静态背景 对于 ...
- Android ImageView加载圆形图片且同时绘制圆形图片的外部边缘边线及边框
Android ImageView加载圆形图片且同时绘制圆形图片的外部边缘边线及边框 在Android早期的开发中,如果涉及到圆形图片的处理,往往需要借助于第三方的实现,见附录文章1,2.And ...
- 绘制QQ圆形图像
思路:这里用到的是图像求交.现在画布上画上圆形,即所需要的圆形头像,然后设置paint的属性设置为求交集,再将bitmap划到canvas上面就好了. 代码如下: private static Bit ...
- Python Pygame(5)绘制基本图形
最近很火一些简单图形构成的小游戏,这里介绍一些绘制图形的函数. 1.绘制矩形 rect(Surface,color,Rect,width=0) 第一个参数指定矩形绘制到哪个Surface对象上 第二个 ...
- 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内。以及两点间的测距功能
权声明:本文为博主原创文章,未经博主允许不得转载. 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内.以及两点间的测距功能. 绘制多边形(蓝色) ...
- iOS常见用户头像的圆形图片裁剪常见的几种方法
在开发中,基本上APP的用户头像的处理都需要把用户所上传的方形图片,处理为圆形图片.在这里就总结三种常见的处理圆形图片的方法. 1.使用位图上下文 2.使用UIView的layer进行处理 3.使用r ...
- Android之圆形头像裁切
PS:今天项目测试组发现,百度地图定位的数据坐标位置是正确的,但是显示的数据是错误的.最后查来查去发现,那个商厦在百度地图上根本就没有那条数据,这让我如何显示,当初就推崇使用高德地图定位,上面的数据量 ...
随机推荐
- Android View体系(七)从源码解析View的measure流程
前言 在上一篇我们了解了Activity的构成后,开始了解一下View的工作流程,就是measure.layout和draw.measure用来测量View的宽高,layout用来确定View的位置, ...
- Android事件总线(三)otto用法全解析
前言 otto 是 Square公司发布的一个发布-订阅模式框架,它基于Google Guava 项目中的event bus模块开发,针对Android平台做了优化和加强.虽然Square已经停止了对 ...
- Python不可变对象
str是不变对象,而list是可变对象. 对于不可变对象,比如对str进行操作: # 对于list进行操作,list内部的内容是会变化的: >>> a = ['c', 'b', 'a ...
- Spark编译
Spark的运行版本使用mvn编译,已经集成在源码中.如果机器有外网或者配置了http代理,可以直接调用编译命令来进行编译. windows&Linux命令如下: ./build/mvn \ ...
- 简述 Spring Cloud 是什么1
很多同学都了解了Spring ,了解了 Spring Boot, 但对于 Spring Cloud 是什么还是比较懵逼的. 本文带你简单的了解下,什么是Spring Cloud. Spring Clo ...
- .net core 导出Excel(epplus 创建excel )
[Route("getopenfrequencyexcel")] [HttpGet] public IActionResult GetOpenFrequencyExcel(int ...
- sql2008和sql2012混合安装后打开SQL Server 配置管理器查看出现“远程过程调用失败”0x800706be
sql2008和sql2012混合安装后打开SQL Server 配置管理器SQL Server服务出现“远程过程调用失败”0x800706be 网上很多人都说这个解决方案,通过卸载“Microsof ...
- 自定义mysql类用于快速执行数据库查询以及将查询结果转为json文件
由于每次连接数据库进行查询比较麻烦,偶尔还需要将查询结果转为json格式的文件, 因此暂时定义一个mysql的类,将这些常用的方法进行封装,便于直接调用(代码如下,个人用,没写什么注释). 注:导入了 ...
- windwos安装RabbitMQ
目录 windows 安装RabbitMQ 安装erlang 安装rabbitmq 添加windows环境变量 检测rabbitmq状态 启动web管理插件 rabbitmq服务 windows 安装 ...
- python pip常用命令
pip安装命令: pip install packagename pip显示模块版本号: pip show packagename pip卸载模块: pip uninstall packagename ...