FC2ブログ

# 角度の単位変換 Convert Angle
# 引数 値 単位A 単位B ($Value, $UnitA, $UnitB)
# 戻り値 角度の単位変換 ($ConvertAngle)
sub CONVERTANGLE{
my ($Value, $UnitA, $UnitB) = @_;
my $ConvertAngle = 0;
my $RadianA = 0;
my $RadianB = 0;

# 値の確認
if($Value <= 0){
return 0;
}

# $UnitAのラジアン単位
$RadianA = &RADIAN($UnitA);
# $UnitBのラジアン単位
$RadianB = &RADIAN($UnitB);

# 角度の単位変換 Convert Angle
$ConvertAngle = ($RadianA / $RadianB) * $Value;

return $ConvertAngle;
}

# ラジアン単位 Radian
# 引数 単位 ($Unit)
# 戻り値 ラジアン単位 ($Radian)
sub RADIAN{
my ($Unit) = @_;
my $RadianUnit = 0,
my %Radian = (
# ラジアン
"rad" => 1,
# マイクロラジアン
"urad" => 0.000001,
# ミリラジアン
"mrad" => 0.001,
# 度
"deg" => 0.0174532925199432957692369076849,
# 分
"arcmin" => 0.000290888208665721596153948461415,
# 秒
"arcsec" => 0.00000484813681109535993589914102358,
# グラード
"grad" => 0.0157079632679489661923132169164,
# 十進化分
"minarc" => 0.000157079632679489661923132169164,
# 十進化秒
"secarc" => 0.00000157079632679489661923132169164,
# ミル
"mil" => 0.00098174770424681038701957605727484,
# 四分円
"quadrant" => 1.57079632679489661923132169164,
# 六分円
"sextant" => 1.04719755119659774615421446109,
# 八分円
"sextant" => 0.78539816339744830961566084582,
# 十二分円
"sign" => 0.523598775598298873077107230547,
);

# ハッシュの確認
if(exists($Radian{$Unit}) == 0){
return 0;
}

# ラジアン単位 Radian
$RadianUnit = $Radian{$Unit};

return $RadianUnit;
}


参考URL
ラジアン - Wikipedia
単位の換算一覧 - Wikipedia
計量単位一覧 - Wikipedia
角度の換算 - 高精度計算サイト
Conversion of units - Wikipedia, the free encyclopedia
オンライン コンパイラ/インタプリタ
テクニカル分析
プロフィール

Author:雨宮
Firefoxを使用しているので気づかなかったけど、IE6でソースコードを上手くコピーできない

5/3
携帯用ならIE6でもソースコードをコピーできる
携帯用

検索フォーム


あわせて読みたいブログパーツ
一寸先は闇 RSS