MGL::Alignment
Contents
MGL::Alignment#
概要#
Alignment構造体は座標や矩形などの配置パラメータを保持するための構造体です。
配置パラメータは垂直方向と水平方向の組み合わせで表現され、主に描画の基準位置の指定に使用します。
宣言#
namespace MGL
{
struct Alignment;
}
メンバ情報#
種類 |
名前 |
内容 |
バージョン |
---|---|---|---|
列挙型 |
水平方向の配置パラメータを表す列挙型 |
1.0.0+ |
|
列挙型 |
垂直方向の配置パラメータを表す列挙型 |
1.0.0+ |
|
変数 |
1.0.0+ |
||
関数 |
1.0.0+ |
その他#
Horizontal#
水平方向の配置パラメータを表す列挙型です。
宣言#
namespace MGL
{
struct Alignment
{
enum class Horizontal : uint8_t
{
Left, //!< 左
Center, //!< 中央
Right //!< 右
};
}
}
説明#
- Horizontal::Left
水平方向の右を表す値
- Horizontal::Center
水平方向の中央を表す値
- Horizontal::Right
水平方向の右を表す値
バージョン情報#
- MGL 1.0.0
初回リリース
Vertical#
垂直方向の配置パラメータを表す列挙型です。
宣言#
namespace MGL
{
struct Alignment
{
enum class Vertical : uint8_t
{
Top, //!< 上
Middle, //!< 中央
Bottom //!< 下
};
}
}
説明#
- Vertical::Top
垂直方向の上を表す値
- Vertical::Middle
垂直方向の中央を表す値
- Vertical::Bottom
垂直方向の下を表す値
バージョン情報#
- MGL 1.0.0
初回リリース
公開メンバ変数#
宣言#
namespace MGL
{
struct Alignment
{
Horizontal horizontal; //!< 水平方向の配置情報
Vertical vertical; //!< 垂直方向の配置情報
};
}
説明#
- MGL::Alignment::Horizontal horizontal
水平方向の配置情報
- MGL::Alignment::Vertical vertical
垂直方向の配置情報
バージョン情報#
- MGL 1.0.0
初回リリース
コンストラクタ#
宣言#
// (1) 初期値で初期化
constexpr Alignment() noexcept
// (2) 水平方向と垂直方向で初期化
constexpr Alignment(Horizontal inHorizontal, Vertical inVertical) noexcept
// (3) 垂直方向と水平方向で初期化
constexpr Alignment(Vertical inVertical, Horizontal inHorizontal) noexcept
引数#
- (1) 初期値で初期化
引数なし
- (2) 水平方向と垂直方向で初期化
- MGL::Alignment::Horizontal inHorizontal
水平方向の配置情報
- MGL::Alignment::Vertical inVertical
垂直方向の配置情報
- (3) 垂直方向と水平方向で初期化
- MGL::Alignment::Vertical inVertical
垂直方向の配置情報
- MGL::Alignment::Horizontal inHorizontal
水平方向の配置情報
説明#
Alignment構造体を初期化するコンストラクタです。
(1)はスクリーン座標系の原点の位置である左上で初期化されます。
(2)と(3)は引数で指定された垂直方向と水平方向で初期化します。両者の違いは引数の順序のみです。
利用例#
// (1) 初期値で初期化
MGL::Alignment alignment1(); // 左上
// (2) 水平方向と垂直方向で初期化
MGL::Alignment alignment2(
MGL::Alignment::Horizontal::Right,
MGL::Alignment::Vertical::Middle); // 右中央
// (3) 垂直方向と水平方向で初期化
MGL::Alignment alignment3(
MGL::Alignment::Vertical::Top,
MGL::Alignment::Horizontal::Center); // 中央上
バージョン情報#
- MGL 1.0.0
初回リリース
定義済みの定数一覧#
一覧#
型 |
定数名 |
内容 |
値 |
---|---|---|---|
Alignment |
kAlignmentTopLeft |
左上 |
Alignment(Alignment::Vertical::Top, Alignment::Horizontal::Left) |
Alignment |
kAlignmentTopCenter |
中央上 |
Alignment(Alignment::Vertical::Top, Alignment::Horizontal::Center) |
Alignment |
kAlignmentTopRight |
右上 |
Alignment(Alignment::Vertical::Top, Alignment::Horizontal::Right) |
Alignment |
kAlignmentMiddleLeft |
左中央 |
Alignment(Alignment::Vertical::Middle, Alignment::Horizontal::Left) |
Alignment |
kAlignmentMiddleCenter |
中央 |
Alignment(Alignment::Vertical::Middle, Alignment::Horizontal::Center) |
Alignment |
kAlignmentMiddleRight |
右中央 |
Alignment(Alignment::Vertical::Middle, Alignment::Horizontal::Right) |
Alignment |
kAlignmentBottomLeft |
左下 |
Alignment(Alignment::Vertical::Bottom, Alignment::Horizontal::Left) |
Alignment |
kAlignmentBottomCenter |
中央下 |
Alignment(Alignment::Vertical::Bottom, Alignment::Horizontal::Center) |
Alignment |
kAlignmentBottomRight |
右下 |
Alignment(Alignment::Vertical::Bottom, Alignment::Horizontal::Right) |
宣言#
namespace MGL
{
constexpr auto kAlignmentTopLeft = Alignment(Alignment::Vertical::Top, Alignment::Horizontal::Left); //!< 左上
constexpr auto kAlignmentTopCenter = Alignment(Alignment::Vertical::Top, Alignment::Horizontal::Center); //!< 中央上
constexpr auto kAlignmentTopRight = Alignment(Alignment::Vertical::Top, Alignment::Horizontal::Right); //!< 右上
constexpr auto kAlignmentMiddleLeft = Alignment(Alignment::Vertical::Middle, Alignment::Horizontal::Left); //!< 左中央
constexpr auto kAlignmentMiddleCenter = Alignment(Alignment::Vertical::Middle, Alignment::Horizontal::Center); //!< 中央
constexpr auto kAlignmentMiddleRight = Alignment(Alignment::Vertical::Middle, Alignment::Horizontal::Right); //!< 右中央
constexpr auto kAlignmentBottomLeft = Alignment(Alignment::Vertical::Bottom, Alignment::Horizontal::Left); //!< 左下
constexpr auto kAlignmentBottomCenter = Alignment(Alignment::Vertical::Bottom, Alignment::Horizontal::Center); //!< 中央下
constexpr auto kAlignmentBottomRight = Alignment(Alignment::Vertical::Bottom, Alignment::Horizontal::Right); //!< 右下
}