云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > AE开发实例代码总结

AE开发实例代码总结

  • 62 次阅读
  • 3 次下载
  • 2025/12/10 0:11:50

上面这个例子只是用了空间过滤,没有用到属性过滤,我们将上面的代码稍微改动下,加上一句代码即可,

结果对照:

使用查询图层快速浏览:

我们可以按照以下步骤来执行一个QueryLayer。 1) 获取SqlWorkspaceFactory

2) 获取SqlWorkspace

3) 构造查询语句

4) 执行查询

5) 获取结果

public IFeatureLayer OracleQueryLayer() {

// 创建SqlWorkspaceFactory的对象

Type pFactoryType =Type.GetTypeFromProgID(\ IWorkspaceFactory pWorkspaceFactory =

(IWorkspaceFactory)Activator.CreateInstance(pFactoryType); // 构造连接数据库的参数

IPropertySet pConnectionProps = new PropertySetClass(); pConnectionProps.SetProperty(\, \ pConnectionProps.SetProperty(\, \ pConnectionProps.SetProperty(\, \pConnectionProps.SetProperty(\, \ pConnectionProps.SetProperty(\, \ // 打开工作空间

IWorkspace workspace = pWorkspaceFactory.Open(pConnectionProps, 0); ISqlWorkspace pSQLWorkspace = workspace as ISqlWorkspace; //获取数据库中的所有表的名称

IStringArray pStringArray= pSQLWorkspace.GetTables(); for (int i = 0; i < pStringArray.Count; i++) {

MessageBox.Show(pStringArray.get_Element(i)); }

// 构造过滤条件 SELECT * FROM PointQueryLayer

IQueryDescription queryDescription = pSQLWorkspace.GetQueryDescription(\PointQueryLayer\

ITable pTable = pSQLWorkspace.OpenQueryClass(\, queryDescription); IFeatureLayer pFeatureLayer = new FeatureLayerClass(); pFeatureLayer.FeatureClass = pTable as IFeatureClass; return pFeatureLayer; }

点几何对象:

Point是一个0维的几何图形,具有X,Y坐标值,以及一些可选的属性:如高程值(Z值),度量值(M值) M这个属性在线性参考和动态分段中经常用到和ID号,点对象用于描述精确定位的对象。同时,点对象还可以有Z和M两个可选属性,。以下代码演示如何创建一个Point对象:

///

/// 获取点 ///

///

private IPoint ConstructPoint(double x, double y) {

IPoint pPoint = new PointClass(); pPoint.PutCoords(x, y); return pPoint; }

MultiPoint对象是一系列无序的点的群集,这些点具有相同的属性信息。例如可以用一个点集来表示整个城市天然气调压站。如下图所示:一个Multipoint对象由8个Point对象组成。

以下代码片段演示如何构建Multipoint对象:

private object pMissing = Type.Missing; public IGeometry GetMultipointGeometry() {

const double MultipointPointCount = 25;

IPointCollection pPointCollection = new MultipointClass(); for (int i = 0; i < MultipointPointCount; i++) {

pPointCollection.AddPoint(GetPoint(), ref pMissing, ref pMissing); }

return pPointCollection as IGeometry; }

private IPoint GetPoint() {

const double Min = -10; const double Max = 10;

Random pRandom = new Random();

double x = Min + (Max - Min) * pRandom.NextDouble();

double y = Min + (Max - Min) * pRandom.NextDouble(); return ConstructPoint(x, y); }

Segment对象

Segment对象是一个有起点和终点的“线“,也就是说Segement只有两个点,至于两点之间的线是直的,还是曲的,需要其余的参数定义。所以Segment是由起点,终点和参数三个方面决定的。Segment有4个子类,它的4个子类(直线,圆弧,椭圆弧,贝赛尔曲线)。

ISegment有两个很有用的方法如下图:

这两个方法用于将该Segment进行分割成小的Segement

Path几何对象

Path是连续的Segment的集合,除了路径的第一个Segment和最后一个Segment外其余的Segment的起始点都是前一个Segment的终止点,即Path对象的中的Segment不能出现分离,Path可以是任意数的Segment子类的组合。

该Path对象有很多我们经常用到的方法,如平滑曲线,对曲线抽稀等操作

Ring几何对象

Ring是一个封闭的Path即起始和终止点有相同的坐标值,它有内部和外部属性。

Polyline几何对象

Polyline对象是由一个或多个相连或者不相连的path对象的有序集合,通常用来代表线状地物如道路,河

搜索更多关于: AE开发实例代码总结 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

上面这个例子只是用了空间过滤,没有用到属性过滤,我们将上面的代码稍微改动下,加上一句代码即可, 结果对照: 使用查询图层快速浏览: 我们可以按照以下步骤来执行一个QueryLayer。 1) 获取SqlWorkspaceFactory 2) 获取SqlWorkspace 3) 构造查询语句 4) 执行查询 5) 获取结果 public IFeatureLayer OracleQueryLayer() { // 创建SqlWorkspaceFactory的对象 Type pFactoryType =Type.GetTypeFromProgID(\ IWorkspaceFactory

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com