目次 - API(機能別) - 2Dレンダリング - SDL_RenderDrawLine

# SDL_RenderDrawLine

現在のレンダーターゲットに直線を描く

## 構文

`int SDL_RenderDrawLine(SDL_Renderer* renderer, int x1, int y1, int x2, int y2)`

## 引数

renderer | レンダリングコンテキスト
x1 | 始点のX座標
y1 | 始点のY座標
x2 | 終点のX座標
y2 | 終点のY座標

## 戻り値

成功のとき0, 失敗のとき負の数のエラーコードを戻す. SDL_GetError()で詳細を知ることができる.

## サンプルコード

``

    #include "SDL.h"

    int main(int argc, char* argv[])
    {
        if (SDL_Init(SDL_INIT_VIDEO) == 0) {
            SDL_Window* window = NULL;
            SDL_Renderer* renderer = NULL;

            if (SDL_CreateWindowAndRenderer(640, 480, 0, &window, &renderer) == 0) {
                SDL_bool done = SDL_FALSE;

                while (!done) {
                    SDL_Event event;

                    SDL_SetRenderDrawColor(renderer, 0, 0, 0, SDL_ALPHA_OPAQUE);
                    SDL_RenderClear(renderer);

                    SDL_SetRenderDrawColor(renderer, 255, 255, 255, SDL_ALPHA_OPAQUE);
                    SDL_RenderDrawLine(renderer, 320, 200, 300, 240);
                    SDL_RenderDrawLine(renderer, 300, 240, 340, 240);
                    SDL_RenderDrawLine(renderer, 340, 240, 320, 200);
                    SDL_RenderPresent(renderer);

                    while (SDL_PollEvent(&event)) {
                        if (event.type == SDL_QUIT) {
                            done = SDL_TRUE;
                        }
                    }
                }
            }

            if (renderer) {
                SDL_DestroyRenderer(renderer);
            }
            if (window) {
                SDL_DestroyWindow(window);
            }
        }
        SDL_Quit();
        return 0;
    }

## 詳細

SDL_RenderDrawLine()は始点から終点までの直線を描く. 複数のつながった直線を描く場合は, 代わりにSDL_RenderDrawLines()が使える.

## バージョン

SDL 2.0.0以降

## 関連項目(関数)

SDL_RenderDrawLines
SDL_RenderDrawPoint
SDL_RenderDrawPoints
SDL_RenderDrawRect
SDL_RenderDrawRects
SDL_RenderFillRect
SDL_RenderFillRects
SDL_RenderPresent
SDL_SetRenderDrawBlendMode
SDL_SetRenderDrawColor

## SDL Wikiへのリンク

SDL_RenderDrawLine - SDL Wiki