前のページ次のページ上に戻るホーム SophiaFramework 2.2
SFURect
長方形を表すクラスです。
#include <SFURect.hpp>
class SFURect : public AEERect;
typedef SFURect&          SFURectRef;
typedef SFURect*          SFURectPtr;
typedef SFURect**         SFURectHandle;
typedef const SFURect     ConstSFURect;
typedef const SFURect&    ConstSFURectRef;
typedef const SFURect*    ConstSFURectPtr;
typedef const SFURect**   ConstSFURectHandle;

解説

長方形を表すクラスです。 長方形を操作するためのさまざまな関数が用意されています。 長方形は格子点座標で表現されます。

参照

SFULine

メンバ

コンストラクタ/デストラクタ
public
SFURect SFURect クラスのコンストラクタです。
public
~SFURect SFURect クラスのデストラクタです。
パブリック変数
public
dx 長方形の幅です。
public
dy 長方形の高さです。
public
x 長方形の左上の頂点の X 座標です。
public
y 長方形の左上の頂点の Y 座標です。
パブリック関数
public
Empty 長方形の幅または高さが 0 であるか判定します。
public
Equal 2 つの長方形が等しいか判定します。
public
Inset 長方形を両端から縮小します。
public
Inside 長方形が別の長方形の中に含まれるか判定します。
public
LineB 下辺を取得します。
public
LineL 左辺を取得します。
public
LineR 右辺を取得します。
public
LineT 上辺を取得します。
public
Offset 長方形を移動します。
public
Origin 左上の座標を取得/設定します。
public
PointLB 左下の座標を取得します。
public
PointRB 右下の座標を取得します。
public
PointRT 右上の座標を取得します。
public
Sect 2 つの長方形の共通部分を返します。
public
Set 長方形の位置とサイズを設定します。
public
Size 長方形のサイズを取得/設定します。
public
Union 2 つの長方形を包含する長方形を返します。
public
operator & 2 つの長方形の共通部分を返します。
public
operator+ 長方形を移動します。
public
operator- 長方形を逆移動します。
public
operator== 2 つの長方形が等しいか判定します。
public
operator| 2 つの長方形を包含する長方形を返します。

SFURect::SFURect
SFURect クラスのコンストラクタです。
[ public ]
SFURect(Void);
[ public ]
SFURect(
    ConstAEERectRef aeeRect   // コピーする AEERect 構造体
);
[ public ]
SFURect(
    SInt16 x    // 左上の X 座標
    SInt16 y    // 左上の Y 座標
    SInt16 dx   // 幅
    SInt16 dy   // 高さ
);
[ public ]
SFURect(
    SInt16 x               // 左上の X 座標
    SInt16 y               // 左上の Y 座標
    ConstSFUSizeRef size   // 幅と高さ
);
[ public ]
SFURect(
    ConstSFUPointRef point   // 左上の座標
    SInt16 dx                // 幅
    SInt16 dy                // 高さ
);
[ public ]
SFURect(
    ConstSFUPointRef point   // 左上の座標
    ConstSFUSizeRef size     // 幅と高さ
);
[ public ]
SFURect(
    ConstSFUPointRef leftTop       // 左上の座標
    ConstSFUPointRef rightBottom   // 右下の座標
);

解説

SFURect クラスのコンストラクタでは、 SFURect クラスの位置とサイズを設定します。

デフォルト コンストラクタでは、メンバは初期化されません。

参照

BREW API AEERect


SFURect::~SFURect
SFURect クラスのデストラクタです。
[ public ]
~SFURect(Void);

SFURect::Empty
長方形の幅または高さが 0 であるか判定します。
[ public, const ]
Bool Empty(Void);

戻り値

長方形の幅または高さが 0 であれば TRUE を返します。 そうでなければ FALSE を返します。


SFURect::Equal
2 つの長方形が等しいか判定します。
[ public, const ]
Bool Equal(
    ConstSFURectRef rect   // 比較対象の長方形
);

戻り値

2 つの長方形の左上の座標と幅と高さがすべて等しければ TRUE を返します。 そうでなければ FALSE を返します。

参照

SFURect::operator==


SFURect::Inset
長方形を両端から縮小します。
[ public ]
ConstSFURectRef Inset(
    SInt16 left     // 左辺を縮小するサイズ
    SInt16 top      // 上辺を縮小するサイズ
    SInt16 right    // 右辺を縮小するサイズ
    SInt16 bottom   // 下辺を縮小するサイズ
);
[ public ]
ConstSFURectRef Inset(
    ConstSFUSizeRef dsize   // 上下左右を縮小するサイズ
);
[ public ]
ConstSFURectRef Inset(
    ConstSFUMarginRef margin   // 上下左右を縮小するサイズ
);
[ public ]
ConstSFURectRef Inset(
    SInt16 dx   // 左右を縮小するサイズ
    SInt16 dy   // 上下を縮小するサイズ
);

SFURect::Inside
長方形が別の長方形の中に含まれるか判定します。
[ public, const ]
Bool Inside(
    ConstSFURectRef rect   // 別の長方形
);

解説

この長方形が rect 引数で指定された長方形に含まれる場合 TRUE を返します。 そうでなければ FALSE を返します。


SFURect::LineB
下辺を取得します。
[ public, const ]
SFULine LineB(Void);

使用例

SFURect rect(0, 0, 50, 60);
SFULine line = rect.LineB();   // line = (0, 59)-(49, 59) となります。

SFURect::LineL
左辺を取得します。
[ public, const ]
SFULine LineL(Void);

使用例

SFURect rect(0, 0, 50, 60);
SFULine line = rect.LineL();   // line = (0, 0)-(0, 59) となります。

SFURect::LineR
右辺を取得します。
[ public, const ]
SFULine LineR(Void);

使用例

SFURect rect(0, 0, 50, 60);
SFULine line = rect.LineR();   // line = (49, 0)-(49, 59) となります。

SFURect::LineT
上辺を取得します。
[ public, const ]
SFULine LineT(Void);

使用例

SFURect rect(0, 0, 50, 60);
SFULine line = rect.LineT();   // line = (0, 0)-(49, 0) となります。

SFURect::Offset
長方形を移動します。
[ public ]
ConstSFURectRef Offset(
    SInt16 dx   // X 方向の移動量
    SInt16 dy   // Y 方向の移動量
);
[ public ]
ConstSFURectRef Offset(
    ConstSFUPointRef vector   // 移動する方向
);

参照

SFURect::operator+ | SFURect::operator-


SFURect::Origin
左上の座標を取得/設定します。
[ public ]
ConstSFURectRef Origin(
    SInt16 x   // 左上の X 座標
    SInt16 y   // 左上の Y 座標
);
[ public ]
ConstSFURectRef Origin(
    ConstSFUPointRef leftTop   // 左上の座標
);
[ public, const ]
SFUPoint Origin(Void);

参照

SFURect::Size


SFURect::PointLB
左下の座標を取得します。
[ public, const ]
SFUPoint PointLB(Void);

使用例

SFURect rect(0, 0, 100, 100);
SFUPoint pt = rect.PointLB();  // pt = (0, 99) となります。

SFURect::PointLT
左上の座標を取得します。

使用例

SFURect rect(0, 0, 100, 100);
SFUPoint pt = rect.PointLT();  // pt = (0, 0) となります。

SFURect::PointRB
右下の座標を取得します。
[ public, const ]
SFUPoint PointRB(Void);

使用例

SFURect rect(0, 0, 100, 100);
SFUPoint pt = rect.PointRB();  // pt = (99, 99) となります。

SFURect::PointRT
右上の座標を取得します。
[ public, const ]
SFUPoint PointRT(Void);

使用例

SFURect rect(0, 0, 100, 100);
SFUPoint pt = rect.PointRT();  // pt = (99, 0) となります。

SFURect::Sect
2 つの長方形の共通部分を返します。
[ public ]
ConstSFURectRef Sect(
    ConstSFURectRef rect   
);

戻り値

2 つの長方形の共通部分の長方形を計算します。 共通部分がない場合は、幅または高さが 0 の長方形が返されますので、 Empty() 関数により 共通部分がないか判定できます。

参照

SFURect::operator &


SFURect::Set
長方形の位置とサイズを設定します。
[ public ]
ConstSFURectRef Set(
    SInt16 x    // 左上の X 座標
    SInt16 y    // 左上の Y 座標
    SInt16 dx   // 幅
    SInt16 dy   // 高さ
);
[ public ]
ConstSFURectRef Set(
    SInt16 x               // 左上の X 座標
    SInt16 y               // 左上の Y 座標
    ConstSFUSizeRef size   // 幅と高さ
);
[ public ]
ConstSFURectRef Set(
    ConstSFUPointRef leftTop   // 左上の座標
    SInt16 dx                  // 幅
    SInt16 dy                  // 高さ
);
[ public ]
ConstSFURectRef Set(
    ConstSFUPointRef leftTop   // 左上の座標
    ConstSFUSizeRef size       // 幅と高さ
);
[ public ]
ConstSFURectRef Set(
    ConstSFUPointRef leftTop       // 左上の座標
    ConstSFUPointRef rightBottom   // 右下の座標
);

参照

SFURect::SFURect


SFURect::Size
長方形のサイズを取得/設定します。
[ public ]
ConstSFURectRef Size(
    SInt16 dx   // 幅
    SInt16 dy   // 高さ
);
[ public ]
ConstSFURectRef Size(
    ConstSFUSizeRef size   // 幅と高さ
);
[ public, const ]
SFUSize Size(Void);

参照

SFURect::Origin


SFURect::Union
2 つの長方形を包含する長方形を返します。
[ public ]
ConstSFURectRef Union(
    ConstSFURectRef rect   
);

戻り値

2 つの長方形を包含する長方形を返します。

参照

SFURect::operator|


SFURect::operator &
2 つの長方形の共通部分を返します。
[ public, friend ]
SFURect operator &(
    ConstSFURectRef rect1   
    ConstSFURectRef rect2   
);
[ public ]
ConstSFURectRef operator &=(
    ConstSFURectRef rect   
);

戻り値

2 つの長方形の共通部分の長方形を計算します。 共通部分がない場合は、幅または高さが 0 の長方形が返されますので、 Empty() 関数により 共通部分がないか判定できます。

参照

SFURect::Empty | SFURect::operator|


SFURect::operator==
2 つの長方形が等しいか判定します。
[ public, friend ]
Bool operator==(
    ConstSFURectRef rect1   
    ConstSFURectRef rect2   
);
[ public, friend ]
Bool operator!=(
    ConstSFURectRef rect1   
    ConstSFURectRef rect2   
);

戻り値

2 つの長方形の左上の座標と幅と高さがすべて等しければ TRUE を返します。 そうでなければ FALSE を返します。

参照

SFURect::Equal


SFURect::operator-
長方形を逆移動します。
[ public, friend ]
SFURect operator-(
    ConstSFURectRef rect      // 逆移動する長方形
    ConstSFUPointRef vector   // 逆移動する方向
);
[ public ]
ConstSFURectRef operator-=(
    ConstSFUPointRef vector   // 逆移動する方向
);

参照

SFURect::Offset | SFURect::operator+


SFURect::operator|
2 つの長方形を包含する長方形を返します。
[ public, friend ]
SFURect operator|(
    ConstSFURectRef rect1   
    ConstSFURectRef rect2   
);
[ public ]
ConstSFURectRef operator|=(
    ConstSFURectRef rect   
);

戻り値

2 つの長方形を包含する長方形を返します。

参照

SFURect::operator &


SFURect::operator+
長方形を移動します。
[ public, friend ]
SFURect operator+(
    ConstSFURectRef rect      // 移動する長方形
    ConstSFUPointRef vector   // 移動する方向
);
[ public ]
ConstSFURectRef operator+=(
    ConstSFUPointRef vector   // 移動する方向
);

参照

SFURect::Offset | SFURect::operator-


SFURect::dx
長方形の幅です。
[ public ]
SInt16 dx;

SFURect::dy
長方形の高さです。
[ public ]
SInt16 dy;

SFURect::x
長方形の左上の頂点の X 座標です。
[ public ]
SInt16 x;

SFURect::y
長方形の左上の頂点の Y 座標です。
[ public ]
SInt16 y;