目次 - API(機能別) - 領域 - SDL_Point

# SDL_Point

2次元上の点を定義する構造体

## フィールド

int | x | 点のX座標
int | y | 点のY座標

## サンプルコード

`

    // サンプルプログラム:
    // コードの各所でSDL_Pointを使っている

    #include "SDL.h"
    #include <stdio.h>

    int main(int argc, char *argv[]) {

        SDL_Window *window;

        SDL_Point window_position = {         //    ウィンドウの位置
            SDL_WINDOWPOS_CENTERED,
            SDL_WINDOWPOS_CENTERED
        };
        SDL_Point window_size = {640, 480};   //    ウィンドウのサイズ

        SDL_Point mouse_position;             //    マウスの座標

        SDL_Init(SDL_INIT_VIDEO);             //    SDL2を初期化する

        // 次の設定でアプリケーションウィンドウを設定する
        window = SDL_CreateWindow(
            "SDL_Point usage",                //    タイトル
            window_position.x,                //    X座標の初期値
            window_position.y,                //    Y座標の初期値
            window_size.x,                    //    幅ピクセル数
            window_size.y,                    //    高さピクセル数
            SDL_WINDOW_OPENGL                 //    フラグ
        );

        // ウィンドウを生成できたかチェックする
        if (window == NULL) {
            SDL_Log("ウィンドウを生成できなかった: %s", SDL_GetError());
            return 1;
        }

        SDL_GetMouseState(                    //    マウスのウィンドウ上の...
            &mouse_position.x,            // ...座標を得る
            &mouse_position.y
        );

        SDL_Log("マウスの位置: x=%d y=%d",    //    マウスの位置を表示する
             mouse_position.x, mouse_position.y
        );

        // ウィンドウを閉じて破棄する
        SDL_DestroyWindow(window);

        // 終了処理
        SDL_Quit();
        return 0;
    }

`

## 詳細

SDL_Pointは1つの2次元上の点を定義する. 点以外でも使えるが, サイズを持たない. SDL_Pointは, 点の配列が長方形(SDL_Rect)の中にあるかをSDL_EnclosePoints()でチェックできる. SDL_Pointを使って自分で関数を作ることもできるが, この関数は有用である.

## 関連項目(構造体)

SDL_Rect

## 関連項目(関数)

SDL_EnclosePoints

## SDL Wikiへのリンク

SDL_Point - SDL Wiki