幅杭計算(曲線)

CASIO fx-4850P版 測量計算ソフト プログラムソース




FX-603P版はこちらです→FX-603P 幅杭計算(曲線)

幅杭計算(曲線)

 曲線上の任意の点(P点)の座標と、幅杭(PL点、PR点)座標を計算します。
 幅員(Haba(L),Haba(R))が0以下の幅杭は計算しません。
 ※左右の幅員を0にすると、中心座標のみ計算します。

幅杭計算(曲線)画面

幅杭計算(曲線) 【ファイル名:P3】
   Fixm:Defm 10:H=0
Lbl 0:{H,K,L}:Cls
   "<HABA-CURVE>"
   K"HABA(L)_"
   L"HABA(R)_"
   Z[2]=180÷π
   Cls
   "LEFT_CURVE_⇒0"
   H"RIGHT_CURVE⇒1_"
Lbl 1:Cls:I=0
   {M,A,B,I,E}
   M"R_":M≦0⇒Goto 1△
   Cls
   A"BCX_":B"BCY_"
   Cls
   "IP_INPUT"
   "ZAHYO___⇒0"
   I"HOKOKAKU⇒1_"
   I=0⇒Goto 2△
   Cls
   E"IP_HOKO_":Goto 3
Lbl 2:Cls:{C,D}
   C"IPX_":D"IPY_"
   T=A:U=B:V=C:W=D
   Prog "ZA.SUB"
   Z=999⇒Goto 1△
   E=Y
   "KYORI=":X:Pause 0
   "HOKOKAKU=":E→DMS▲
Lbl 3:H=0⇒Goto 6△
Lbl 4:Cls:{N}
   N"(R)L_":N≦0⇒Goto 4△
   Z[4]=N÷M×Z[2]÷2
   Z[6]=sin Z[4]×2×M
   Z[5]=E+Z[4]
   Z[7]=cos Z[5]×Z[6]+A
   Z[8]=sin Z[5]×Z[6]+B
   "(R)PX=":Z[7]:Pause 0
   "(R)PY=":Z[8]▲
   F=Z[5]+Z[4]−90
   K≦0⇒Goto 5△
   P=cos F×K+Z[7]
   Q=sin F×K+Z[8]
   "(R)PLX=":P:Pause 0
   "(R)PLY=":Q▲
Lbl 5:L≦0⇒Goto 8△
   G=F+180
   R=cos G×L+Z[7]
   S=sin G×L+Z[8]
   "(R)PRX=":R:Pause 0
   "(R)PRY=":S▲
   Goto 8
Lbl 6:{N}:Cls
   N"(L)L_":N≦0⇒Goto 6△
   Z[4]=N÷M×Z[2]÷2
   Z[6]=sin Z[4]×2×M
   Z[5]=E-Z[4]
   Z[7]=cos Z[5]×Z[6]+A
   Z[8]=sin Z[5]×Z[6]+B
   "(L)PX=":Z[7]:Pause 0
   "(L)PY=":Z[8]▲
   F=Z[5]-Z[4]-90
   K≦0⇒Goto 7△
   P=cos F×K+Z[7]
   Q=sin F×K+Z[8]
   "(L)PLX=":P:Pause 0
   "(L)PLY=":Q▲
Lbl 7:L≦0⇒Goto 8△
   G=F+180
   R=cos G×L+Z[7]
   S=sin G×L+Z[8]
   "(L)PRX=":R:Pause 0
   "(L)PRY=":S▲
Lbl 8:J=0:Cls
   {J}
   "CONTINUE__⇒0"
   J"TOP⇒2__END⇒9_"
   J=2⇒Goto 0△
   J=9⇒Goto 9△
   J≠0⇒Goto 8△
   H=0⇒Goto 6△
   Goto 4
Lbl 9

エラー表示サブルーチン 【ファイル名:ER.SUB】
   Z=999
   "DATA_ERROR"
   Pause 3
   Cls

座標変換サブルーチン 【ファイル名:ZA.SUB】
   Fixm:Z=0
   (T-V)≠0⇒Goto 1△
   (U-W)≠0⇒Goto 1△
   Prog "ER.SUB":Goto 2
Lbl 1:X=W-U:Y=V-T
   Deg:Pol(Y,X):J≦0⇒J=J+360△
   X=I:Y=J
Lbl 2

ご注意下さい
  • 上記プログラムソースは見やすいようにインデントされていますが、fx-4850Pに入力する際には、インデントを無視してください。
  • ファイル名は変更可能ですが、ソフト起動プログラム(QUICK RUN)を利用する場合には変更しないでください。
  • サブルーチンは他のプログラムと共用しますのでファイル名を変更しないでください。
  • プログラムの入力やファイル名の変更は、fx-4850Pの取扱説明書をよくお読みになってから行ってください。
  • アルファベットの「O」と数字の「0」を区別するため、アルファベットの「 O 」にアンダーラインを入れて表示しています。
  • fx-4850Pのプログラムには通常のテキストでは忠実に表現できないものがあります。本プログラムリストでは下表の通り表現していますのでご注意ください。