曲线要素五大坐标怎么计算

曲线要素五大坐标怎么计算,第1张

这个。。您能表达得更具体点吗?

这个。。。貌似我还没学到。。抱歉、帮不上忙了

下面有种、你参考下,不知道对不对

程序目的:依平曲线要素计算直线、圆曲线、缓和曲线的任意中桩、左、右桩坐标

程序说明:K0:起始桩号

X0:起始X坐标

Y0:起始Y坐标

ALF:起始方位角

R:半径

LS:缓和曲线长

N:曲线左转N=1,右转N=2

K:待求桩号

LL、LR:左、右桩距离

Q:左、右桩与中线斜交角

求得XZ、YZ、XL、YL、XR、YR分别为中桩、左、右桩坐标。

一、

直线段

文件名:ZX

(COMP)

程式:

L”K0”:O”X0”:P”Y0”:W”ALF”:

Lbl

0:{K}:X”XZ”=O+(K-L)cosW◢

Y”YZ”=P+(K-L)sinW◢

{B}:S”XL”=X-B”LL”cos(W+Q)

T”YL”=Y-Bsin(W+Q)

{C}:U”XR”=X+C”LR”cos(W+Q)

V”YR”=Y+Csin(W+Q)

Goto

0

注:在程序执行过程中,赋给的要素变数的值被固定不变,可对变数(K、LL、LR)赋予不同值,迅速求得所需坐标。

二、

圆曲线段

文件名:YQX

(COMP)

程式:

L”K0”:O”X0”:P”Y0”:W”ALF”:

Lbl

1:{K}:

J=(-1)^N

(K-L)÷R×180÷π:D=2Rsin((-1)^N

J÷2):

X”XZ”=O+Dcos(W+J÷2)

Y”YZ”=P+Dsin(W+J÷2)

{B}:S”XL”=X-B”LL”cos(W+J+Q)

T”YL”=Y-Bsin(W+J+Q)

{C}:U”XR”=X+C”LR”cos(W+J+Q)

V”YR”=Y+Csin(W+J+Q)

Goto

1

注:若没有直接HY点方位角,则ALFHY=ALFZH±Ls/2/R×180/π,(左转-,右转+)。

三、

缓和曲线

文件名:HHQX

(COMP)

程式:

L”K0”:O”X0”:P”Y0”:W”ALF”:

M”LS”:Lbl

3:{K}:

I=(-1)^N×(K-L)^2÷M÷R÷6×180÷π:

D=(K-L)-(K-L)^5÷90÷(RM)^2:

X”XZ”=O+Dcos(W+I)◢

Y”YZ”=P+Dsin(W+I)

{B}:S”XL”=X-B”LL”cos(W+3I+Q)

T”YL”=Y-Bsin(W+3I+Q)

{C}:U”XR”=X+C”LR”cos(W+3I+Q)

V”YR”=Y+Csin(W+3I+Q)

Goto

3

注:1、坐标计算方法是根据偏角法原理;

2、缓和曲线(ZH~HY或YH~HZ)以ZH(或HZ)为起始点;

3、平曲线左转(ZH~HY段N=1,YH~HZ段N=2),曲线右转(ZH~HY段N=2,YH~HZ段N=1)。

解: 本题实际就是一个已知两点坐标求直线方程的问题,应该应用两点式直线方程,即

(y-y1)/(y2-y1)=(x-x1)/(x2-x1),而A(3,4)即为(x1,y1),B(8,7)为(x2,y2)。

(y-4)/(7-4)=(x-3)/(8-3),即(y-4)/3=(x-3)/5

5(y-4)=3(x-3),5y-20=3x-9,5y=3x+11

y=(3/5)x+(11/5)通过此式可以只使用计算器就可计算得到直线上任意一点x坐标对应的y坐标。

在fx-5800中,字母变量 I 和 J 专用于储存极坐标函数 Pol() 的计算结果:距离赋值给 I ,角度赋值给 J,所以,在编程中一般不用字母 I 和 J,以免重复赋值使程序计算出错

字母 I 和 J 不用定义,只要有极坐标运算,系统便自动赋值定义

曲线要素值 交 点 号 1 起点 1 2 3交点坐标 交点桩号 x 2 0 17575 391220628 #DIV/0! 3 y 4 度° 5 分′ 6秒″ 7 弧度 8 9 转角 半径 缓和曲 线长度 L1 10 缓和曲 线长度 L2 11 △R q 切线长度 切线长度 曲线长度 T! T2 14 15 16 外距 校正值 第一缓和 曲线起点 19

#include <stdioh>

struct point

{

double x;

double y;

} ;

struct line

{

double k;

double b;

};

main()

{

struct point kp[2];

struct point dp[1];

struct line  lf;

double pdy;

printf("请输入第一个已知点的坐标x和y:(并用空格隔开,回车确定输入)\n");

scanf("%f %f",&kp[1]x,&kp[1]y);

printf("请输入第二个已知点的坐标x和y:(并用空格隔开,回车确定输入)\n");

scanf("%f %f",&kp[2]x,&kp[2]y);

lfk=(kp[2]y-kp[1]y)/ (kp[2]x-kp[1]x);

lfb=-(lfkkp[1]x-kp[1]y);

printf("请输入一个未知点的坐标x和y:(并用空格隔开,回车确定输入)\n");

scanf("%f %f",&dp[1]x,&dp[1]y);

pdy=lfkdp[1]x+lfb;

if (pdy==dp[1]y)

{

printf("\n\a该点在直线上\n");

}

else

{

printf("\n\a该点不在直线上\n");

}

return 0;

}

以上就是关于曲线要素五大坐标怎么计算全部的内容,包括:曲线要素五大坐标怎么计算、求直线任意点坐标的表达式、在卡西欧5800编程中,未定义I,J的含义,与未定义就可以使用吗程序见问题补充,这是直线的坐标反算程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10103819.html

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

发表评论

登录后才能评论

评论列表(0条)

保存