前のページ次のページ上に戻るホーム SophiaFramework UNIVERSE 5.3

12.8. 空のインスタンス

三角形を除く矩形や円などの閉領域の図形およびサイズ・マージンの各クラスでは、 面積が 0 である空のインスタンスが定義されます。

ある閉領域の図形やサイズ、マージンの空のインスタンスは、 それが定義されているクラスの EmptyInstance 関数を呼び出すことで取得できます。

空のインスタンスが定義されているクラスでは、 空であるかどうか(面積が 0 であるかどうか)を判定するための IsEmpty 関数が定義されています。

ある閉領域図形やサイズ、マージンのインスタンスが空であるかどうか(面積が 0 であるかどうか)の判定基準は、 それぞれのクラスによって異なります。

例えば、矩形やサイズの場合は、幅または高さが 0 以下の値であれば空である(面積が 0 である)と判定されますが、 マージンの場合は、上下左右のマージンがすべて 0 の値であるときに限り空である(面積が 0 である)と判定されます。 その他、円や楕円、扇形の場合は、半径が 0 以下の値であれば空である(面積が 0 である)と判定されます。 多角形の場合は、頂点の数が 0 であるときに限り空である(面積が 0 である)と判定されます。

三角形は例外で、EmptyInstance 関数は定義されていませんが、IsEmpty 関数は存在します。 ただし、この場合の IsEmpty 関数の戻り値は常に false です。

[Note] 注意

直線や折れ線、格子点、ピクセル、円弧などの閉領域でない図形と三角形では、 面積が 0 である空のインスタンスが定義されていません。

実装上、EmptyInstance 関数の戻り値と ZeroInstance 関数の戻り値はたまたま同じですが、 これらの関数は意味的に異なります。