public abstract class Size2DSyntax extends Object implements Serializable, Cloneable
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. レターサイズメディアを検出する場合、215.9 x 279.4 mm のメディアサイズを検索しなければならないことに注意してください。整数型 216 x 279 mm に四捨五入すると照合されません。
エクスポートされる定数
は、実際にインチ単位の値に乗算して、μm 単位の値を取得する変換係数です。同様に、エクスポートされる定数 INCH
は、mm 単位の値に乗算して μm 単位の値を取得する変換係数です。クライアントは、クライアント自身の変換係数を提供して、インチまたは mm 以外の単位で解像度属性を指定できます。ただし、内部単位 μm は、外部単位として、インチと mm だけを考慮してサポートするよう選択されているので、クライアントの単位の変換係数が正確な整数型となるかどうか保証されません。変換係数が正確な整数型ではない場合、クライアントの単位の解像度の値は正確に格納されません。
MM
修飾子と型 | フィールドと説明 |
---|---|
static int |
INCH
インチ (in) 単位を示す値です。
|
static int |
MM
ミリメートル (mm) 単位を示す値です。
|
修飾子 | コンストラクタと説明 |
---|---|
protected |
Size2DSyntax(float x, float y, int units)
指定された浮動小数点の値で新しい 2 次元のサイズの属性を構築します。
|
protected |
Size2DSyntax(int x, int y, int units)
指定された整数値で新しい 2 次元のサイズの属性を構築します。
|
修飾子と型 | メソッドと説明 |
---|---|
boolean |
equals(Object object)
この 2 次元のサイズの属性がオブジェクトに渡された属性と等しいかどうかを返します。
|
float[] |
getSize(int units)
浮動小数点の値として指定された単位で、この 2 次元のサイズの属性の寸法を返します。
|
float |
getX(int units)
浮動小数点の値として指定された単位で、この 2 次元のサイズの属性の寸法 X を返します。
|
protected int |
getXMicrometers()
この 2 次元のサイズの属性の寸法 X をミクロン (μm) 単位で返します。
|
float |
getY(int units)
浮動小数点の値として指定された単位で、この 2 次元のサイズの属性の寸法 Y を返します。
|
protected int |
getYMicrometers()
この 2 次元のサイズの属性の寸法 Y をミクロン (μm) 単位で返します。
|
int |
hashCode()
この 2 次元のサイズの属性のハッシュコード値を返します。
|
String |
toString()
この 2 次元のサイズの属性の文字列バージョンを返します。
|
String |
toString(int units, String unitsName)
この 2 次元のサイズの属性の文字列バージョンを指定された単位で返します。
|
public static final int INCH
public static final int MM
protected Size2DSyntax(float x, float y, int units)
x
- 寸法 X。y
- 寸法 Y。units
- 単位変換係数。INCH
や MM
など。IllegalArgumentException
- 非チェック例外。x
< 0 または y
< 0 または units
< 1 の場合にスローされる。protected Size2DSyntax(int x, int y, int units)
x
- 寸法 X。y
- 寸法 Y。units
- 単位変換係数。INCH
や MM
など。IllegalArgumentException
- 非チェック例外。x
< 0 または y
< 0 または units
< 1 の場合にスローされる。public float[] getSize(int units)
units
- 単位変換係数。INCH
や MM
など。IllegalArgumentException
- 非チェック例外。units
< 1 の場合にスローされる。public float getX(int units)
units
- 単位変換係数。INCH
や MM
など。IllegalArgumentException
- 非チェック例外。units
< 1 の場合にスローされる。public float getY(int units)
units
- 単位変換係数。INCH
や MM
など。IllegalArgumentException
- 非チェック例外。units
< 1 の場合にスローされる。public String toString(int units, String unitsName)
"XxY U"
の形式をとります。ここで、X は寸法 X、Y は寸法 Y、U は単位名です。値は浮動小数点で表示されます。units
- 単位変換係数。INCH
や MM
など。unitsName
- 単位名の文字列。"in"
や "mm"
など。条件 null の場合、結果に単位名は付けられないIllegalArgumentException
- 非チェック例外。units
< 1 の場合にスローされる。public boolean equals(Object object)
object
が null ではない。
object
が Size2DSyntax のインスタンスである。
object
の寸法 X と等しい。
object
の寸法 Y と等しい。
equals
、クラス: Object
object
- 比較対象のオブジェクト。object
がこの 2 次元のサイズの属性と等しい場合は true、そうでない場合は false。Object.hashCode()
, HashMap
public int hashCode()
hashCode
、クラス: Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public String toString()
"XxY um"
の形式をとります。ここで、X は寸法 X、Y は寸法 Y です。値は内部単位ミクロンで報告されます。protected int getXMicrometers()
protected int getYMicrometers()
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.