当前位置:首页 >> 电力/水利 >>

GDC函数


地理数据转换

——GDC 函 数
2007

武汉武大吉奥信息工程技术有限公司 E-Mail: techsupport@geostar.com.cn Web:www.geostar.com.cn

责任与担保
武汉武大吉奥信息工程技术有限公司对所有软件产品的销售合同或契约中已经说明的担保责任将 不

再阐述,简言之,本手册或手册中的内容将被认为是担保责任的更新. 对于本手册和本软件的更新或改变的有关信息, 恕不提供, 武汉武大吉奥信息工程技术有限公司不 对此承担义务. 本手册中讨论的软件产品受有关协议保护,对于使用或者拷贝也必须根据有关许可协议的条款. 对于在武汉武大吉奥信息工程技术有限公司其分销商没有声明支持的软硬件上使用本手册所讨论 的产品,武汉武大吉奥信息工程技术有限公司及其分销商将不承担责任.

商标
吉奥之星,GeoStar是武汉武大吉奥信息工程技术有限公司的注册商标.GeoImager, GeoTIN,GeoGrid, GeoImageDB,GeoSurf是武汉武大吉奥信息工程技术有限公司的 商标.其它商标或者产品名称为相关厂商所有.

版权声明
版权所有 2004-2007 保留所有权利 包括软件产品,文件格式,声像资料等,或许在软件产品使用许可协议的允许范围内使用的软件产 品, 所有包含武汉武大吉奥信息工程技术有限公司及其合作伙伴的商业机密等, 均受到有关版权和 商业机密法律保护.没有书面证明不得随意提供给第三方. 武汉武大吉奥信息工程技术有限公司 传真:027-87196133 Email:techsupport@geostar.com.cn Web:www.geostar.com.cn 中国武汉 手册名称:GDC 函数 手册最后修订时间: 2007 年 12 月 武汉武大吉奥信息工程技术有限公司

GDC 函数

目录

目 录
第一章 关于本手册............................................................................................................................................ 1 1.1 预期读者................................................................................................................................................... 1 1.2 更多信息................................................................................................................................................... 1 1.3 如何联系我们........................................................................................................................................... 1 第二章 函数定义................................................................................................................................................ 3 2.1 概述........................................................................................................................................................... 3 2.2 函数定义和实现....................................................................................................................................... 3 2.2.1 函数定义 ............................................................................................................................................ 3 2.2.2 函数注册 ............................................................................................................................................ 4 2.2.3 函数实现 ............................................................................................................................................ 4 2.3 如何自定义函数....................................................................................................................................... 5 第三章 GDC函数参考....................................................................................................................................... 7 3.1 @AFFINE .................................................................................................................................................... 7 3.2 @AREA ...................................................................................................................................................... 8 3.3 @BURSA_WOLF......................................................................................................................................... 8 3.4 @LENGTH .................................................................................................................................................. 9 3.5 @MAPCODECONVERSION ....................................................................................................................... 10 3.6 @MEANFILTER ........................................................................................................................................ 10 3.7 @MIDSTR .................................................................................................................................................11 3.8 @OFFSET ................................................................................................................................................. 12 3.9 @SCALE ................................................................................................................................................... 13

1

GDC 函数

第一章

关于本手册

第一章 关于本手册
本手册主要介绍 GDC 函数的定义,提供各个函数的详细参考信息.

1.1 预期读者
本手册可以作为 GDC Translator 使用者的参考.

1.2 更多信息
更多信息,请参考下列文档(这些文档可以从网站www.geostar.com.cn获得) : 《GDC Translatore 用户手册》 《GDC 映射文件》 《GDC Objects 参考手册》 《GDC Objects 开发帮助》 《GDC 读写参考手册》

1.3 如何联系我们
武汉武大吉奥信息工程技术有限公司网站包含最新的产品消息,示例,错误修正等,请注意浏 览www.geostar.com.cn中关于GDC Objects产品的消息.

从哪里得到技术支持
为了获得最新的GeoStar产品信息,您可以访问吉奥公司的网址 www.geostar.com.cn 或者在中国境内,请拨打电话:

1

第一章

关于本手册

GDC 函数

027-87196134 (35/36/37/39/40/41)

或者传真至: 027-87196133

或者发送电子邮件至: techsupport@geostar.com.cn

从哪里得到有关文档和软件产品的信息
与本软件产品有关的文档或许已更新,请征询最近的吉奥公司的分公司或代理 商,或者www.geostar.com.cn中关于GDC Objects产品的消息. 或拨打:027-87196134 (35/36/37/39/40/41) 或者传真至:027-87196133 或者发送电子邮件至:market@geostar.com.cn

从哪里得到有关培训的信息
请拨打电话:027-87196134 (35/36/37/39/40/41) 或者传真至:027-87196133 或者发送电子邮件至:market@geostar.com.cn

2

GDC 函数

第二章

函数定义

第二章 函数定义
2.1 概述
函数提供了一种灵活的方法以实现各种不同的数据转换需求,丰富了GDC的数据转换功能. 用户通过在映射文件中指定函数名和参数可以使用函数实现的功能. 关于映射文件中函数的详细信 息请参见《GDC 映射文件》 . GDC 函数分为 2 类: 1) 属性函数: 根据地物属性值计算,并返回一个值的函数. 2) 地物函数: 对地物的几何或属性进行处理的函数. 表 2.1-1中列出了 2 种函数的不同点.
表 2.1-1GDC 函数类型

属性函数 计算并返回一个值 不能修改地物

地物函数 没有返回值 修改地物的属性值或几何数据

2.2 函数定义和实现
2.2.1 函数定义
所有 GDC 函数申明以字符"@"开头,形式如下: @FuncName([<parameter>[,<parameter>]]) 参数以字符串的形式给出,各参数间以","分隔."[ ]"表示该参数可选. 函数参数可以是常量,变量,属性函数. 常量:传递给函数的参数为常数,如@Offset(500,500). 变量: 传递给函数的参数为变量. 变量以字符 "%" 开头表示. 如@MapCodeConversion(%MapCode), 表示将地物 MapCode 属性字段的值对应的图幅号进行转换.

3

第二章

函数定义

GDC 函数

属性函数:传递给函数的参数为属性函数.GDC 函数可以任意层次的嵌套.运行时,GDC 将调用 最深一层的函数,并计算其结果,作为上一层函数的参数,直到函数嵌套结束.只有属性函数可以 被嵌套.如@MidStr(@MapCodeConversion(%MapCode),1,1).

2.2.2 函数注册
所有函数必须以动态库(API)的形式实现,并进行注册.GDC 函数注册的规则是: 1)所有GDC函数必须注册在HKEY_CLASS_ROOT \GEOCOMPONENTCATEGORY \GeoStar\ GDCObjects\ Function项下,如图 2.2-1所示. 2)必须定义函数的类别标识,并作为 Function 的一个子项,如 GDCFunctions. 3)必须确定每一类别函数所对应的动态库文件的位置,如: C:\Program Files\GeoSoft\Common\Bin\GDCFunctions.dll.

图 2.2-1

GDC 函数注册项

2.2.3 函数实现
所有GDC函数在实现时必须按如下方式申明: char * FuncName(char * parameters, GDCOFeature **, ppiFeature, int * type) 返回值:所有GDC函数返回一个字符串.如果是地物函数,返回字符串内容为空. 参数: Char * parameters----用户在映射文件中使用函数时的所有参数, 各参数间以 分隔, "500, "," 如 500". GDCOFeature **, ppiFeature----应用该函数的地物对象.该对象作为传入和传出参数使用. 作为传入参数时,对象上的属性值可以作为函数参数的一部分.作为传出参数时,当函数执行完毕 后,该对象的几何信息或属性数据已经被修改了,调用者可以从该返回对象获得修改后的数据.只 有当函数为地物函数时,该对象才会被修改. int * type----返回该函数是否成功,及函数类型.具体含义如下:
4

GDC 函数

第二章

函数定义

1)0X00----函数执行失败. 2)0X01----函数执行成功,函数类型为属性函数. 3)0X10----函数执行成功,函数类型为地物函数. 提示:用户在映射文件中使用函数时不需要考虑后两个参数.

2.3 如何自定义函数
GDC提供了许多可以在映射文件中使用的函数,请参见第三章.用户也可以在映射文件中使用自 定义的函数. 用户自定义函数时必须根据2.2节中的规则进行定义,实现和注册函数.用户可以按以下步骤自定 义函数: 1)创建一个 API 工程,如 UserDefinedFunction.dll; 2 ) 按 2.2.3 节 的 方 法 在 该 工 程 中 实 现 用 户 自 定 义 函 数 , 如 char * UserFuncName(char *, GDCOFeature **, ppiFeature, int * type); 3)按2.2.2节中的方法注册UserDefinedFunction.dll. 提示:不能定义具有相同名称的函数.

5

GDC 函数

第三章

GDC 函数参考

第三章 GDC 函数参考
3.1 @Affine
@Affine (double a0, double a1, double a2, double b0, double b1, double b2) 功能描述:将地物的所有坐标进行仿射变换.按如下公式进行坐标变换 x2 = a0 + a1 * x1 + a2 * y1 y2 = b0 + b1 * x1 + b2 * y1 函数类型:地物函数 函数参数: 参数名 a0 a1 a2 b0 b1 b2 说明: 此函数用于进行坐标仿射变换. 返回值:无 类型 double double double double double double 描述 是否可选 否 否 否 否 否 否

7

第三章

GDC 函数参考

GDC 函数

示例: 例1 @ Affine (500,0.001,0,500,0,0.001)

3.2 @Area
@ Area([double factor]) 功能描述:计算面积. 函数类型:属性函数 函数参数: 参数名 factor 说明: 此函数用于计算地物的面积值. 返回值:面积值 示例: 例1 例2 @Area () @Area(100) 类型 double 描述 面积值缩放因子,缺省为 1.0. 是否可选 是

3.3 @Bursa_Wolf
@ Bursa_Wolf (double a0, double b0, double c0, double k, double rx, double ry, double rz) 功能描述: 将地物的所有坐标进行七参数坐标变换(布尔莎(Bursa)模型), 按如下公式进行坐标变换 x2 = a0 + k * x1 + rz * y1 - ry * z1 y2 = b0 + k * y1 - rz * x1 + rx * z1 z2 = c0 + k * z1 + ry * x1 + rx * y1 函数类型:地物函数 函数参数:
8

GDC 函数

第三章

GDC 函数参考

参数名 a0 b0 c0 k rx ry rz 说明:

类型 double double double double double double double

描述 x 坐标平移参数 y 坐标平移参数 z 坐标平移参数 尺度变化参数 x 轴旋转参数 y 轴旋转参数 z 轴旋转参数

是否可选 否 否 否 否 否 否 否

此函数用于进行七参数坐标变换(布尔莎(Bursa)模型). 返回值:无 示例: 例1 @ Bursa_Wolf (500,500,0,1.5,0,0,0)

3.4 @Length
@ Length([double factor]) 功能描述:计算长度. 函数类型:属性函数 函数参数: 参数名 factor 说明:
9

类型 double

描述 长度值缩放因子,缺省为 1.0.

是否可选 是

第三章

GDC 函数参考

GDC 函数

此函数用于计算地物的长度值. 返回值:长度值 示例: 例1 例2 @Length () @Length (100)

3.5 @MapCodeConversion
@ MapCodeConversion(char* strMapCode) 功能描述:国家标准新旧图幅号相互转换. 函数类型:属性函数 函数参数: 参数名 strMapCode 说明: 此函数用于进行国家标准新旧图幅号相互转换.函数将首先判断输入的是新图幅号还是旧图幅号. 如果输入的是新图幅号,则转换为旧图幅号.反之,如果输入的是旧图幅号,则转换为新图幅号. 如果输入的字符串不是国家标准图幅号,则返回空字符串. 返回值:新或旧图幅号 示例: 例1 例2 @MapCodeConversion (J-50-B) @MapCodeConversion (J50B001002) 结果为 J50B001002 结果为 J-50-B 类型 字符串 描述 新或旧图幅号. 是否可选 否

3.6 @MeanFilter
@ MeanFilter(long x[, long y]) 功能描述:对于图像中存在的随机不相关的加性噪声,可通过均值滤波来处理.窗口越大,对图像 的平滑效果越好,但图像的细节损失也越大.窗口的大小通常选择为 3*3,5*5,7*7,9*9.
10

GDC 函数

第三章

GDC 函数参考

函数类型:地物函数 函数参数: 参数名 x y 说明: 此函数用于栅格的均值滤波.如果 y 缺失,则 y 方向滤波窗口与 x 方向滤波窗口一致. 返回值:无 示例: 例1 例2 @ MeanFilter (3,3) @ MeanFilter (3) 类型 long long 描述 X 方向滤波窗口. y 方向滤波窗口. 是否可选 否 是

3.7 @MidStr
@ MidStr(char* string[,int pos][,int count]) 功能描述:取字符串中的子字符串. 函数类型:属性函数 函数参数: 参数名 string 类型 字符串 描述 字符串表达式,从中返回字符.如果string为 Null,将返回Null. pos int 取字符的起始位置.如果 pos 超过 string 的 字符数,将返回空字符串.缺省值为 0. count int 要返回的字符数. 如果省略或 count 超过可取 的字符数(从 pos 开始的字符数) ,将返回
11

是否可选 否





第三章

GDC 函数参考

GDC 函数

string 中从 pos 开始到尾端的所有字符. 说明: 此函数用于从指定字符串中取子字符串. 返回值:子字符串. 示例: 例1 例2 例3 @MidStr(abcd,1,2) @MidStr(abcd,1) @MidStr(abcd) 结果为 bc 结果为 bcd 结果为 abcd

3.8 @Offset
@ Offset(double x[, double y]) 功能描述:将地物的所有坐标进行平移. 函数类型:地物函数 函数参数: 参数名 x y 说明: 此函数用于进行坐标平移.如果 y 缺失,则 y 坐标平移值与 x 坐标平移值一致. 返回值:无 示例: 例1 例2 @Offset (500,500) @Offset (500) 类型 double double 描述 x 坐标平移值. y 坐标平移值. 是否可选 否 是

12

GDC 函数

第三章

GDC 函数参考

3.9 @Scale
@Scale(double sx [,double sy]) 功能描述:将地物的所有坐标进行缩放. 函数类型:地物函数 函数参数: 参数名 sx sy 说明: 此函数用于进行坐标缩放.如果 sy 缺失,则 y 坐标缩放因子与 x 坐标缩放因子一致. 返回值:无 示例: 例1 例2 @ Scale (1000,1000) @ Scale (0.001) 类型 double double 描述 x 坐标缩放因子. y 坐标缩放因子. 是否可选 否 是

13

相关文章:
ScreenToClient等4个函数的区别
它的构造函数调用 GegDC 函数,而析构函数调用 ReleaseDC 函数。 CClientDC(客户区设备上下文)用于客户区的输出,它在构造函数中封装了 GetDC(),在析 构函数中封装...
初二上册知识点复习
初二(上)知识点复习及综合训练 --- 一次函数、三角形版块 1.小华的爷爷每天...GEC =3, S ?GDC =4, 则△ABC 的面积是 . ? 3. 如图,在四边形 ABCD ...
2015数学中考
2 ①构造函数,画出图象:根据不等式特征构造二次函数 y ? ?2 x 2 ? 4 x...---7 分 ∴∠ABG =∠GDC,∠BAG=∠GCD, ∴△ABG∽△CDG, AG AB ? . ...
实验五
(n Mod 5) * 10); i; n = n + 1 End If Next End Sub 4、结果,如下图所示: 题目二:编写函数过程 Gdc 求两个数的最大公约数和最小公倍数, ...
浅析数学中的美
(a ? b ? c) 折到 ?GDC ,这 2 样既补全了完美的轴对称图形,又得到了...奈万林纳的亚纯函数值分布理论、 布尔巴基学派的数学原理、 陈省身的纤维丛与...
数学如何做到举一反三
我们一起来看具体例子,典型例题一: 考点: 动点问题的函数图象 分析:该题属于...根据圆周角定理和矩形的性质可证到∠GDC=∠FDE=定值,从而得到点 G 的 移动...
量线七大元素的公式归集
量線教材明天就能到手啦.:) 公式中的未来为画线函数.不影響分析. 本想試著...{取 DINGBUTS 值} GDCS13:=CONST(REF(HIGH,GDCS1-1)); DINGBUTS1:=REF...
2015黄浦二模卷及答案
x , DF ? y ,求 y 关于 x 的函数解析式,并写出它的 定义域; (3)联结...?GDC ,∴EF ∥DC , 2 3 ?1 CE DF x y 39 ? 3 x ? ? ? ∴ ,...
数学作业参考答案
?GDC ? 45? , 从而 ?CGD ? 90? ,则 CG ? GD ,设 AB ? λ ,则由...上的可导函数,若 xf ?( x) ? f ( x) 在 x ? 0 时恒成立. g ( ...
2015年滨州中考数学试题及答案word版
请确定该 T 恤涨价后每周的销售利润 y(元)与销售单价 x(元)之间的函数关系...---7 分 ∴∠ABG =∠GDC,∠BAG=∠GCD, ∴△ABG∽△CDG, AG AB ? ∴ ...
更多相关标签:
三角函数 | excel函数公式大全 | sumif函数的使用方法 | if函数 | 三角函数公式大全 | excel if函数 | if函数的使用方法 | match函数 |