|
NTT DOCOMO and Hitachi Kokusai Electric Know-how & Confidential | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectcom.docomo_um.lang.Degree
public class Degree
緯度・経度の角度を表します。 角度は、DEGREE 単位と DMS 単位を取得可能ですが、 どの場合でも、内部的には DEGREE 単位の値が保持されており、 必要に応じてDMS 単位への変換が行われます。 その際、DEGREE 単位から DMS 単位へ変換した場合は、 得られる値の精度が落ちることに注意してください。
| コンストラクタの概要 | |
|---|---|
Degree(int degree,
int minute,
int centisecond)
DMS 単位で角度を指定して、このオブジェクトを生成します。 |
|
Degree(long degree)
DEGREE 単位(固定小数点数表現)で角度を指定して、このオブジェクトを生成します。 |
|
| メソッドの概要 | |
|---|---|
int |
getCentisecondPart()
この角度を DMS 単位で表した場合の second 部分を 100 倍した値を取得します。 |
int |
getDegreePart()
この角度を DMS 単位で表した場合の degree 部分を取得します。 |
long |
getFixedPointNumber()
この角度を DEGREE 単位で表した場合の値を、固定小数点数表現で取得します。 |
int |
getMinutePart()
この角度を DMS 単位で表した場合の minute 部分を取得します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait |
| コンストラクタの詳細 |
|---|
public Degree(int degree,
int minute,
int centisecond)
-512 度 0 分 0.0 秒以上、512 度 0 分 0.0 秒未満の値が指定できます。 負の角度を指定する場合は、引数 degree を負の値として下さい。 例えば、-40 度 15 分 23.45 秒 を指定したい時には、 new Degree(-40, 15, 2345) とします。
degree - DMS 単位の degree 部を指定します。 区間 [-512, 512) に含まれている必要があります。minute - DMS 単位の minute 部を指定します。 区間 [0, 60) に含まれている必要があります。centisecond - DMS 単位の second 部を100倍した値を指定します。 区間 [0, 6000) に含まれている必要があります。
java.lang.IllegalArgumentException - 引数 degree が、区間 [-512, 512) に含まれていない場合に発生します。
java.lang.IllegalArgumentException - 引数 minute が、区間 [0, 60) に含まれていない場合に発生します。
java.lang.IllegalArgumentException - 引数 centisecond が、 区間 [0, 6000) に含まれていない場合に発生します。
java.lang.IllegalArgumentException - -512 度 0 分 0.00 秒未満の角度を表現する値の組み合わせが指定された場合に発生します。public Degree(long degree)
degree - 角度を、2-31度を1に換算した整数値で指定します。
-1099511627776 (0xFFFFFF0000000000) 以上 1099511627775 (0x000000FFFFFFFFFF) 以下の値 (41ビットで表現できる値。約±512度) が指定できます。
java.lang.IllegalArgumentException - 引数 degree に -1099511627776 (0xFFFFFF0000000000) 未満を指定した場合や、 1099511627775 (0x000000FFFFFFFFFF) を超える値を指定した場合に発生します。| メソッドの詳細 |
|---|
public int getDegreePart()
値域についての正規化は行われません。 すなわち、コンストラクタで +200 度と指定した場合には 200 が、 -250 度と指定した場合には -250 が返されます。 取得した値には、DMS 単位への変換に伴なう丸め誤差が含まれている可能性があります。
public int getMinutePart()
取得した値には、 DMS 単位への変換に伴なう丸め誤差が含まれている可能性があります。
public int getCentisecondPart()
取得した値には、 DMS 単位への変換に伴なう丸め誤差が含まれている可能性があります。
public long getFixedPointNumber()
値域についての正規化は行われません。 すなわち、コンストラクタで +250.0 度と指定した場合には (250 << 31) が、 -210.0 度と指定した場合には (-210 << 31) が返されます。 このオブジェクトが Degree(int,int,int) によって生成された場合、 取得した値には DEGREE 単位への変換に伴なう丸め誤差が含まれている可能性があります。 一方、このオブジェクトが Degree(long) によって生成された場合、 取得した値には誤差は含まれません。
|
Copyright © 2013 NTT DOCOMO, INC. and Hitachi Kokusai Electric Inc. All Rights Reserved. | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||