線上の点、幅杭計算(クロソイド曲線)CASIO fx-4800P版 測量計算ソフト プログラムソース |
|
|
FX-603P版はこちらです→FX-603P クロソイド曲線 【★印刷用ページ】
クロソイド曲線上の任意の点(P点)の座標と、幅杭(PL点、PR点)座標を計算します。
線上の点、幅杭計算(クロソイド曲線) 【ファイル名:P24】(783バイト)Fixm:Deg:H=0:G=0Lbl 0:{H} "<HABA-CLOTHOID>" "LEFT_CURVE_⇒1" H"RIGHT_CURVE⇒2_" H=1⇒N=-1:Goto 1△ H=2⇒N=1:Goto 1△ Goto 0 Lbl 1:{K}:K"A_" K≦0⇒Goto 1△ Lbl 2:{ABEG} A"KAX_":B"KAY_" "IP_INPUT" "ZAHYO___⇒0" G"HOKOKAKU⇒1_" G≠0⇒E"IP_HOKO_" T=E:Prog "60.SUB" F=W:Goto 3△ {CD} C"IPX_":D"IPY_" T=A:U=B:V=C:W=D Prog "ZA.SUB" Z=999⇒Goto 2△ F=Y X"IP_KYORI="▲ T=F:Prog "60.SUB" E=V E"IP_HOKO="▲ Lbl 3:{L} H=1⇒L"(L)L_":≠⇒L"(R)L_"△ L≦0⇒Goto 3△ R=K^2÷L T=L:U=R Prog "CL.SUB" S=√(X^2+Y^2) M=Atan(Y÷X) I=L÷2÷R×180÷π W=F+I×N W<0⇒W=W+360△ W≧360⇒W=W-360△ V=F+M×N V<0⇒V=V+360△ V≧360⇒V=V-360△ T=A+S×cos V U=B+S×sin V H=1⇒T"(L)PX="▲ U"(L)PY="▲ ≠⇒T"(R)PX="▲ U"(R)PY="▲ △ {P}:P"HABA(L)_" P=0⇒Goto 4△ Z=W−90 X=T+P×cos Z Y=U+P×sin Z H=1⇒X"(L)PLX="▲ Y"(L)PLY="▲ ≠⇒X"(R)PLX="▲ Y"(R)PLY="▲ △ Lbl 4:{Q} Q"HABA(R)_" Q=0⇒Goto 3△ Z=W+90 X=T+Q×cos Z Y=U+Q×sin Z H=1⇒X"(L)PRX="▲ Y"(L)PRY="▲ ≠⇒X"(R)PRX="▲ Y"(R)PRY="▲ △ Goto 3 QUICK RUN に書き加える条件文 (16バイト)
I=24⇒Prog "P24":Goto 0△
エラー表示サブルーチン 【ファイル名:ER.SUB】(38バイト)Z=999"DATA_ERROR" Pause 1 座標変換サブルーチン 【ファイル名:ZA.SUB】(106バイト)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 角度変換サブルーチン 【ファイル名:60.SUB】(153バイト)Fixm:V=T:W=TT=0⇒Goto 1△ X=T÷Abs T T=Abs T V=Int T:W=V Y=(T-V)×60 I=Int Y J=(Y-I)×60 V=(V+(J÷100+I)÷100)×X Y=Frac T×100 I=Int Y J=(Y-I)×100 W=(W+(I+J÷60)÷60)×X Lbl 1 クロソイド座標サブルーチン 【ファイル名:CL.SUB】(238バイト)Fixm:Z=0T≦0⇒Goto 1△ U>0⇒Goto 2△ Lbl 1:Prog "ER.SUB":Goto 3 Lbl 2:X=1-(T^2÷40÷U^2) X=X+(T^4÷3456÷U^4) X=X-(T^6÷599040÷U^6) X=X+(T^8÷175472640÷U^8) X=X×T Y=1-(T^2÷56÷U^2) Y=Y+(T^4÷7040÷U^4) Y=Y-(T^6÷1612800÷U^6) Y=Y+(T^8÷588349440÷U^8) Y=Y×T^2÷6÷U Lbl 3 ご注意下さい
|
|
■■■■
Copyright(C) 2006 AsakazeNet All rights reserved. 無断転載はご遠慮願います。 ■■■■
当サイトはあさかぜネットが運営しています。 | ||