QPC 是什么文件

QPC 是什么文件,第1张

QPREXT.QPC文件定义的函数 标签: QPREXT.QPC 分类: CARD/1二次开发 2007-02-07 09:26

你在学习编写横断面二次开发时,经常会看到语句:USE <?>QPREXT.QPC 。使用它这是为了满足某些特殊的要求,而实现这些要求的函数块集成到这一*.QPC文件里。因为一般用户看不到其中代码,所以将其中函数用法的帮助帖出来,希望对大家有帮助。

**************************************************************

* 函数调用方法:

* 1 - 数组:实参需要用中括弧括起来 [实参]

* 2 - 从函数中需要返回的值:参数也需要用中括弧括起来,如字符串

* 转换为实数函数StrToDbl调用方法:

* StrToDbl "123.456"[abc][Code]

**************************************************************

| 实数串转换为数 Code >0时转换成功,否则源串有错误

| !Text ->实型数字符串

| Value <- 返回的数值

| Code <- 如果转换成功则值为1,否则为 0

StrToDbl !TextValueCode

| 字符串中字符替换,Sum为替换的数目

| !Text <-->字符串,需要按照传址方式调用

| !SRC -> 需要替换的源字符,1字节长的字符串,长度大于1时自动为第一个字符

| !OBJ -> 目标字符,1字节长的字符串,长度大于1时自动为第一个字符

| Sum <- 被替换的数目

ReplaceChar !Text!SRC!OBJSum

| 从行串中读取指定字段 Code = 1 成功,Code = 0失败

| !Text -> 字符串,其中包含被空白分隔的多个字段

| ColNo -> 字段序号 >= 1

| !Out <- 返回的字段字符串

| Code <- 1 - !Out中值有效,否则无效

GetFieldStr !TextColNo!OutCode

| 文件打开 Handel = 0 失败 Handle >0 成功

| 在QPR文件运行结束后可自动关闭

| !Text ->文件名

| ReadOrWrite ->0 - 读 1 - 写 2 - 追加

| Handle <- 返回的文件号 >0 成功 ==0 打开失败

OpenFile !TextReadOrWriteHandle

| 从文件当前行读入实数到数组 返回 -1 严重错误 0 - 数据格式错误 1 - 成功

| 实际数组维数根据数据文件中数据量确定

| Handle ->用OpenFile命令打开的文件的有效句柄

| Array <- 数值型数组变量名

| Sum<- 数组中有效的数据个数

| Code <- -1 不可恢复的I/O错误 0 - 数据行中有非数值型字段 1 - 成功

| Code = 0时,Sum为发生转换错误的字段序号

ReadArray HandleArraySumCode

| 在文件当前位置写入字符串

| Handle ->用OpenFile命令打开的文件的有效句柄

| !OutStr->需要输出的字符串

| NewRow ->0 - 输出字符串后不换行 1 - 输出字符串后换行

| Code <- <0 不可恢复的I/O错误,否则为输出的字符数

WriteStr Handle!OutStrNewRowCode

| 关闭已经打开的文件

| Handle ->用OpenFile命令打开的文件的有效句柄

| Code <- 0 - 句柄非法 1 - 成功关闭

CloseFile HandleCode

| 修改文件的CARD/1说明信息,需要在文件存在后调用

| !FileName ->文件名

| !BezNote ->文件描述信息

FileInfo !FileName!BezNote

| 向点数据库写入点:如果该编号的点不存在,则创建它;

| 如果存在,则可修改其位置及编码

| !PointNo ->要写入的点编号

| xxyyzz ->点的三维坐标

| Kode ->点的编码

| Code <- 返回码,1 - 成功 其他值 - 失败

SavePoint !PointNoxxyyzzKodeCode

|计算点到轴线的投影坐标

|IA ->轴线号

|EE,NN ->已知点横纵坐标

|OS <- 返回投影桩号

|OY <- 返回投影横坐标<东>

|OX <- 返回投影纵坐标<北>

|Code <- 返回码 0 --- 成功 其他值代表失败

Project IAEENNOSOYOXCode

不过好像函数Project不能用,所以只好自己写了。求算点到线的最短距离,可能你会马上想到二分逼近的方法,不过这种方法太慢了,等不起啊。

你可以采用另外一种方法,就是分不同的单元进行判断,直线、圆以及缓和曲线采用不同的算法。一般来说,求点到轴线的距离时,参与计算的单元数目不会太多。首先用CALL函数找出各个单元的信息,存放在数组中,然后对每个单元计算,最后进行比较。

点与直线距离计算,采用计算点与直线组成的三角形为依据,海伦公式计算面积,用面积除以直线长度再乘以2就得到三角形的高,此高即是点与直线的垂直距离。海伦公式:p=(a+b+c)/2 '周长的一半,area=sqr(p*(p-a)*(p-b)*(p-c)) '面积,dist=2*area/c ;接着判断垂足是在直线上还是直线的延长线上。

点到圆的距离计算,判断点与圆弧的两种位置关系:一是点在圆弧的扇形区域内,二是在扇形外。第一种情况,点到圆弧的最小距离等于点到圆心距离与圆半径之差的绝对值;第二种情况,最小距离为点到圆弧两端点距离中最小的值。

点到缓和曲线的距离,暂时还采用二分,哪位高手有好办法请指教。

不好意思 之前没有看很清楚 我帮你找了 QPC是一种铃声格式,主要用于三洋手机。

目前没有看到哪个播放器可以播放它,但是可以用三洋自带的光盘将它转换为其它格式。 用一款软件可以把QPC文件转换为MP3形式

去下软件,格式工厂(Format Factory),很好用


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12031632.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存