- すべての実装されたインタフェース:
Serializable
,Cloneable
- 直系の既知のサブクラス:
MediaSize
Size2DSyntax
は、2ディメンションでサイズを示すすべての属性の共通実装を提供する抽象基本クラスです。
2次元サイズ属性の値は、X
ディメンションとY
ディメンションの2つの項目で構成されます。 2次元のサイズの属性値は、2つの値を提供し、その値を測定する単位を示すことによって構築されます。 メソッドは2次元のサイズの属性値を返すために提供され、値を返す単位を示します。 もっとも一般的な2つのサイズの単位は、インチ(in)とミリメートル(mm)で、これらの単位を示すためにエクスポートされる定数INCH
とMM
が提供されます。
2次元のサイズの属性値は、いったん構築されると変更できません。
設計
2次元サイズ属性のX
およびY
ディメンション値は、マイクロ・メートル(µm)の単位で整数で格納されます。ここで、1マイクロメートル = 10-6メートル = 1/1000ミリメートル = 1/25400インチの単位です。 これにより、寸法を1/1000 mm (= 1µm)または1/100インチ(= 254µm)の精度で正確に表すことができます。 小数点以下のインチを2の負のべき乗で表す場合、寸法を1/8インチ(= 3175µm)精度で表すことはできますが、1/16インチ精度で表すことはできません(1/16インチがµmの積分値と一致しないため)。
寸法を共通のµm単位で内部に格納することにより、作成時の単位にかかわらず2つのサイズの属性が比較可能になります。たとえば、両方とも215900µmとして格納されるため、比較の結果8.5インチは215.9 mmと等しいことがわかります。 たとえば、検索サービスは、作成時の単位にかかわらず、直列化表現の同等性に基づいて解像度属性を照合できます。 内部ストレージに整数型を使用することにより、正確な同等性の比較が可能になります。ただし、これは内部表現に浮動小数点が使用される場合は保証されません。 U.S. letter
サイズのメディアをメトリック単位で検索する場合は、215.9 x 279.4 mmのメディア・サイズを検索する必要があります。整数216 x 279 mmに丸めると、一致しません。
エクスポートされる定数INCH
は、実際にインチ単位の値に乗算して、μm単位の値を取得する変換係数です。 同様に、エクスポートされる定数MM
は、mm単位の値に乗算してμm単位の値を取得する変換係数です。 クライアントは、クライアント自身の変換係数を提供して、インチまたはmm以外の単位で解像度属性を指定できます。 ただし、内部単位μmは、外部単位として、インチとmmだけを考慮してサポートするよう選択されているので、クライアントの単位の変換係数が正確な整数型となるかどうか保証されません。 変換係数が正確な整数型ではない場合、クライアントの単位の解像度の値は正確に格納されません。
- 関連項目:
-
フィールドのサマリー
-
コンストラクタのサマリー
修飾子コンストラクタ説明protected
Size2DSyntax
(float x, float y, int units) 指定された浮動小数点の値で新しい2次元のサイズの属性を構築します。protected
Size2DSyntax
(int x, int y, int units) 指定された整数値で新しい2次元のサイズの属性を構築します。 -
メソッドのサマリー
修飾子と型メソッド説明boolean
この2次元のサイズの属性がオブジェクトに渡された属性と等しいかどうかを返します。float[]
getSize
(int units) 浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法を返します。float
getX
(int units) 指定された単位内のこの2次元サイズ属性のX
ディメンションを浮動小数点値として返します。protected int
この2次元サイズ属性のX
ディメンションをマイクロ・メートル(µm)単位で返します。float
getY
(int units) 指定された単位内のこの2次元サイズ属性のY
ディメンションを浮動小数点値として返します。protected int
この2次元サイズ属性のY
ディメンションをマイクロ・メートル(µm)単位で返します。int
hashCode()
この2次元のサイズの属性のハッシュ・コード値を返します。toString()
この2次元のサイズの属性の文字列バージョンを返します。この2次元のサイズの属性の文字列バージョンを指定された単位で返します。
-
フィールド詳細
-
INCH
public static final int INCHインチ(in)単位を示す値です。 これは、実際にインチに乗算してμm (25400)を算出する変換係数です。- 関連項目:
-
MM
public static final int MMミリメートル(mm)単位を示す値です。 これは、実際にmmに乗算してμm (1000)を算出する変換係数です。- 関連項目:
-
-
コンストラクタの詳細
-
Size2DSyntax
protected Size2DSyntax(float x, float y, int units) 指定された浮動小数点の値で新しい2次元のサイズの属性を構築します。- パラメータ:
x
-X
ディメンションy
-Y
ディメンションunits
- 単位変換係数、たとえばINCH
またはMM
- 例外:
IllegalArgumentException
-x < 0
またはy < 0
またはunits < 1
-
Size2DSyntax
protected Size2DSyntax(int x, int y, int units) 指定された整数値で新しい2次元のサイズの属性を構築します。- パラメータ:
x
-X
ディメンションy
-Y
ディメンションunits
- 単位変換係数、たとえばINCH
またはMM
- 例外:
IllegalArgumentException
-x < 0
またはy < 0
またはunits < 1
-
-
メソッドの詳細
-
getSize
public float[] getSize(int units) 浮動小数点の値として指定された単位で、この2次元のサイズの属性の寸法を返します。- パラメータ:
units
- 単位変換係数、たとえばINCH
またはMM
- 戻り値:
- インデックス0の
X
ディメンションとインデックス1のY
ディメンションを持つ2要素配列 - 例外:
IllegalArgumentException
-units < 1
の場合
-
getX
public float getX(int units) 指定された単位内のこの2次元サイズ属性のX
ディメンションを浮動小数点値として返します。- パラメータ:
units
- 単位変換係数、たとえばINCH
またはMM
- 戻り値:
X
ディメンション- 例外:
IllegalArgumentException
-units < 1
の場合
-
getY
public float getY(int units) 指定された単位内のこの2次元サイズ属性のY
ディメンションを浮動小数点値として返します。- パラメータ:
units
- 単位変換係数、たとえばINCH
またはMM
- 戻り値:
Y
ディメンション- 例外:
IllegalArgumentException
-units < 1
の場合
-
toString
この2次元のサイズの属性の文字列バージョンを指定された単位で返します。 文字列の形式は"XxY U"
で、XはX
ディメンション、YはY
ディメンション、Uはユニット名です。 値は浮動小数点で表示されます。- パラメータ:
units
- 単位変換係数、たとえばINCH
またはMM
unitsName
- ユニット名文字列、例えばin
またはmm
。null
の場合、ユニット名は結果に追加されません- 戻り値:
- この2ディメンションのサイズ属性の
String
バージョン - 例外:
IllegalArgumentException
-units < 1
の場合
-
equals
public boolean equals(Object object) この2次元のサイズの属性がオブジェクトに渡された属性と等しいかどうかを返します。 次の条件がすべてtrueの場合に同等とみなされます。object
はnull
ではありません。object
は、クラスSize2DSyntax
のインスタンスです。- この属性の
X
ディメンションは、object
のX
ディメンションと同じです。 - この属性の
Y
ディメンションは、object
のY
ディメンションと同じです。
-
hashCode
-
toString
-
getXMicrometers
protected int getXMicrometers()この2次元サイズ属性のX
ディメンションをマイクロ・メートル(µm)単位で返します。 (サブクラスで使用)。- 戻り値:
X
dimension (µm)
-
getYMicrometers
protected int getYMicrometers()この2次元サイズ属性のY
ディメンションをマイクロ・メートル(µm)単位で返します。 (サブクラスで使用)。- 戻り値:
Y
dimension (µm)
-