俄罗斯VS沙特直播

在这个过程中,赖斌斌先后出资创立香港天机国际控股集团有限公司、上海儒释道企业管理咨询有限公司,成为实业企业家。据主办方介绍,参与本次恐龙展的小朋友们还有机会得到主办方赠与的恐龙蛋玩具。面对如此好的市场环境,胡群云仍不满足。天机集团是赖斌斌于2012年6月2日在中国第一豪宅汤臣一品创办的一家跨产业集团,旗下拥有投资房产、教育、餐饮、服装、化工、陶瓷、金融、影视娱乐、高档礼品、食品副食、高档酒类等多家控股公司。他用不到一年的时间成为了湖南最有影响力的培训公司,去年公司教育培训产业营业额突破2亿,集团市值破15亿,成功晋升中国教育培训行业前十名,成为国内一线培训公司。
返回首页

ArcEngine中拓扑的使用基础教程

时间:2011-04-09 20:16来源:知行网www.youyuan-chem.com 编辑:麦田守望者

拓扑(ITopology)的使用包括
1.建立拓扑
2.验证拓扑
3.编辑过程中保证拓扑的正确
4.查询系统中存在的拓扑
1.首先 来看看建立拓扑
Topology实现了ITopology这个接口 但是给类是不能用来创建对象的。
必须要通过调用 ITopologyContainer::CreateTopology这个方法来建立一个Topology
FeatureDataset 实现了ITopologyContainer这个接口。那么 这就是说拓扑只能在一个
FeatureDataset的范围内建立。而不能独立存在于Workspace中。这样做的原因是需要保证
参与同一个拓扑的FeatureClass具有同一个投影坐标系统。 建立拓扑后需要将ObjectClass
加入到拓扑中去。这样这个拓扑就可以用来验证这几个ObjectClass 的对象之间的关系了。
验证关系就要有规则,规则是由ITopologyRule来表达的。ITopologyRule必须要被
加入到一个ITopologyRuleContainer中去。而Topology实现了这个接口。
一个ITopologyRule用来表达两个ObjectClass的对象之间的某个关系。
具体代码参看接口就可以了。
2.验证拓扑
ITopology有一个方法 ValidateTopology 用来验证指定区域内的拓扑。需要注意 没有版本
的拓扑可以在 任何时候验证。而有版本的拓扑必须在编辑回话中验证。
3.拓扑编辑
1.移动共用点
1.首先需要打开拓扑 建立拓扑图(ITopologyGraph)
代码如下:
//topoLayer 是一个打开的拓扑图层
ITopologyGraph pTG=topoLayer.Topology.Cache;
pTG.Build(pA.Extent,false);
2.然后 需要获得当前节点或者边 这个操作要使用拓扑图的点击测试
ITopologyElement topeEle
pTG.HitTest(... ref topeEle);
这个方法在点击测试成功的时候返回true.而且会通过topeEle这个ref 参数将选中的元素(点或者边)
返回.
3.还有一种获取节点的方法
首先调用拓扑图的Select方法 选中点击测试的元素(pTG.Select)
然后可以查询拓扑图的选中节点集合 就可以找到该节点(pTG.NodeSelection)
4.为该元素使用一个Feedback.
//其中 pNode 就是当前节点 sr 是参考坐标系 可以使用null
//还有给Feedback设置Display
m_pNodeFeedback =pTG.GetSplitMoveNodeFeedback(pNode,false,sr);
m_pNodeFeedback.Display= activeView.ScreenDisplay;
5.在鼠标移动的时候 调用Feedback的MoveTo 方法。
if(m_pNodeFeedback!=null)
{
//activeView 是活动的试图
//首先要把将点坐标转换为地图中的坐标。
//然后调用MoveTo 方法
IPoint pt=activeView.ScreenDisplay.DisplayTransformation.ToMapPoint(X,Y);
m_pNodeFeedback.MoveTo(pt);
}
6.在鼠标释放的时候
//获取拓扑图
ITopologyGraph pTG=topoLayer.Topology.Cache;
//转换坐标
IPoint pt=pA.ScreenDisplay.DisplayTransformation.ToMapPoint(X,Y);
//获得正在做拓扑编辑的元素
ITopologyNode pTN=(ITopologyNode)m_pTopoElement;
//实施拓扑编辑
pTG.SplitMoveNode(pTN,pt,false);
//提交拓扑编辑结果
IEnvelope pE;
pTG.Post(out pE);
4.查询系统中的拓扑
还是ITopologyContainer 这个接口 这个接口有FeatureDataset这个唯一的实现。
CreateTopology 建立一个新的拓扑
DefaultClusterTolerance The default cluster tolerance as per the topology engine.
MaximumClusterTolerance The maximal cluster tolerance as per the topology engine.
MinimumClusterTolerance The minimal cluster tolerance as per the topology engine.
Topology 通过索引打开拓扑.
TopologyByID 通过ID打开拓扑.
TopologyByName 通过名字打开拓扑
TopologyCount 拓扑的数目
 

顶一下
(0)
0%
踩一下
(0)
0%
标签(Tag):Arcgis Arcgis开发 Arcgis开发教程 Arcgis程序代码
------分隔线----------------------------
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片