惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
Stack Overflow Blog
Stack Overflow Blog
Hugging Face - Blog
Hugging Face - Blog
博客园_首页
T
The Blog of Author Tim Ferriss
博客园 - 叶小钗
N
Netflix TechBlog - Medium
腾讯CDC
C
Check Point Blog
P
Proofpoint News Feed
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
S
SegmentFault 最新的问题
F
Fortinet All Blogs
美团技术团队
U
Unit 42
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 司徒正美
F
Full Disclosure
Recorded Future
Recorded Future
D
DataBreaches.Net
博客园 - 【当耐特】
Martin Fowler
Martin Fowler
J
Java Code Geeks
I
InfoQ
Y
Y Combinator Blog
A
About on SuperTechFans
AI
AI
爱范儿
爱范儿
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Forbes - Security
Forbes - Security
W
WeLiveSecurity
M
MIT News - Artificial intelligence
雷峰网
雷峰网
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
Schneier on Security
Schneier on Security
The GitHub Blog
The GitHub Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
aimingoo的专栏
aimingoo的专栏
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
G
GRAHAM CLULEY
Know Your Adversary
Know Your Adversary
Latest news
Latest news
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
D
Docker
Recent Commits to openclaw:main
Recent Commits to openclaw:main
量子位
V2EX - 技术
V2EX - 技术
Project Zero
Project Zero

博客园 - Tony Wu

关于研究性和工程性 送出orkut邀请,当然如果需要gmail邀请,还有很多 原来好男人还真不容易做啊! 第一次上班吃便当 预测分析研究 地理信息系统应用于教育领域之查询功能 关于点相对于线的位置判定 <用演示说话>读书笔记 网络数据集的构建以及基于网络数据集的路径分析 天。鬼。法 开始在NEC做事,心情愉快 元月6日的回忆 关于大学 自己录了一首歌,嘻嘻 使用jxl读和写Excel文件 关于JSP发布地图服务 java的一些基本概念 .NET启动时,出现无法加载MSXML3.dll ArcIMS 开发学习笔记(一)
超图SuperMap Is.Net开发心得及一些问题
Tony Wu · 2005-10-22 · via 博客园 - Tony Wu
  • 客户端地图操作的地理坐标传递

         可以通过自定义Action事件获得,自定义Action事件封装好的参数ActionEventArgs中有MapCoods地理坐标数组,这个数组代表客户端在地图上的起始点、中间点和结束点的地理坐标。

  • 查询结果的地理坐标获得

          在通过MapControl.QueryBySQL等其它查询之后,将返回一个ResultSet结果集,通过这个结果集可以获得每一个地理空间实体的中心坐标和指定的返回属性值。Record具有Center字段和FieldValues字段,分别是地理中心坐标和指定返回值数组。

  • 临近查询

          所谓的临近查询就是指以某一点为中心查找周围感兴趣的空间实体。一般情况是输入中心地物名称,通过QueryBySQL()查询到这个物体的地理坐标,然后再通过QueryByDistance()查找周边地物。

  • 某一范围中的专题显示

          某一范围的专题显示就是说有时候要对用户指定的区域进行专题渲染,这种情况下首先是要确定用户指定的区域,然后确定专题图的相关字段和渲染方式,再通过Layer.DisplayFilter进行部分渲染。根据用户指定的区域获取到需要渲染的空间实体的某一属性值如“SmID”,以方便DisplayFilter设置条件;确定专题图的相关字段是需要注意到不同的图层类型(点、线、面)最好使用不同的专题渲染方式。

关于Distance
distance在SuperMap Is中表示的是以度为单位的地理距离,如果是平面坐标,可以根据比例尺进行直接转换,如1:5000的平面坐标地图(单位meter),5000米就相当于地图上面的1米。但是如果是经纬度坐标系,则需要进行转换。如WGS1984的经纬度坐标,1秒相当于33米,那么根据用户输入的以米为单位的平面距离转换成为distance的时候,应该是X/3600*33,因为1度等于3600秒。

关于专题图
根据我自己的开发经验,SuperMap IS.NET 5.0如果存在几个AppServer的话,很可能除了第一个AppServer能够出现专题图外,其余的都不行,这个应该是AppServer的问题,所以在制作专题图的时候,建议采用第一个AppServer。下面说明范围分段专题图的C#代码。

Layer objLayer=new Layer();
int layerCount=this.MapControl1Layers.Length;
for(int i=0;i<layerCount;i++)
{
if(this.MapControl1.Layers[i].Name.Equals(layername)
{
objLayer=this.MapControl1.Layers[i];
}
}

if(objLayer==null)
{
return;
}
if(objLayer.ThemeRange!=null)
{
objLayer.ThemeRange=null;
}
//最好同时去掉该图层已经存在的不相关的专题图
RangeTheme theme = objLayer.ThemeRange;
   theme.Valid = true;
   theme.Caption = "aaa";
   theme.Expression = "SmID";
   theme.BreakCount = 3;//表示分开的段数
   theme.BreakValues = new double[2];//断点数
   theme.BreakValues[0] = 50;
   theme.BreakValues[1] = 100;
   theme.Displays = new SuperMap.IS.Utility.Style[3];
   theme.Displays[0] = new SuperMap.IS.Utility.Style();
   theme.Displays[1] = new SuperMap.IS.Utility.Style();
   theme.Displays[2] = new SuperMap.IS.Utility.Style();
   theme.Displays[0].BrushColor = 65535;//BrushColor表示填充,所以最好面图层使用这种渲染方式
   theme.Displays[1].BrushColor = 255;
   theme.Displays[2].BrushColor = 16711680;
//Display还有BrushStyle,PenColor,PenStyle,SymbolSize,SymbolStyle等属性
   this.MapControl1.Update();

关于Pan的问题
如果存在多个AppServer,可能只有第一个AppServer的pan功能正常