SDXFrameWork 0.10 SDXFrameWork

- Main Page
- Related Pages
- Classes

All Classes Namespaces Functions Variables Enumerations Enumerator Pages
Screen.h
1 //Copyright © 2014 SDXFramework
2 //[License]GNU Affero General Public License, version 3
3 //[Contact]http://sourceforge.jp/projects/dxframework/
4 #pragma once
5 #include <Multimedia/SDX.h>
6 #include <Multimedia/Color.h>
7 #include <Multimedia/Renderer.h>
8 #include <Framework/Shape.h>
9
10 namespace SDX
11 {
12 class Image;
16 class Screen
17 {
18 private:
19 MONO_STATE(Screen)
20
21 static Renderer *activeRenderer;
22 public:
23
26 static SDL_Renderer* GetHandle()
27 {
28 return activeRenderer->GetHandle();
29 }
30
33 static Renderer* GetRenderer()
34 {
35 return activeRenderer;
36 }
37
40 static void SetRenderer(Renderer &描画先Renderer = Renderer::mainRenderer)
41 {
42 activeRenderer = &描画先Renderer;
43 }
44
48 static bool SetTarget(Image *描画対象 = nullptr)
49 {
50 return activeRenderer->SetTarget(描画対象);
51 }
52
55 static Image* GetTarget()
56 {
57 return activeRenderer->GetTarget();
58 }
59
62 static bool Flip()
63 {
64 SDL_RenderPresent(GetHandle());
65 return true;
66 }
67
69 static bool Clear()
70 {
71 return activeRenderer->Clear();
72 }
73
76 static bool SetClip(const Rect &非描画領域 = {0,0,0,0})
77 {
78 return activeRenderer->SetClip(非描画領域);
79 }
80
82 static void SetBackColor(const Color &背景色)
83 {
84 activeRenderer->SetBackColor(背景色);
85 }
86
88 static void SetBright(const Color &輝度 = Color::White)
89 {
90 activeRenderer->SetBright(輝度);
91 }
92
94 static void SetBlendMode(BlendMode ブレンドモード = BlendMode::NoBlend, int 設定値 = 255)
95 {
96 activeRenderer->SetBlendMode(ブレンドモード,設定値);
97 }
98
100 static void SetDrawMode(const Color &輝度＋α値 = Color::White, BlendMode ブレンドモード = BlendMode::Alpha)
101 {
102 activeRenderer->SetDrawMode(輝度＋α値,ブレンドモード);
103 }
104
106 /*
107 static bool SaveBmp(const char *ファイル名)
108 {
109 return activeRenderer->SaveBMP(ファイル名);
110 }
111 */
112
113 };
114 }
SDX::Screen
アクティブなRendererを操作するクラス.
Definition: Screen.h:16
SDX::Rect
矩形を表す図形クラス.
Definition: Rect.h:22
SDX::Screen::GetTarget
static Image * GetTarget()
描画先Imageを取得.
Definition: Screen.h:55
SDX::Screen::SetClip
static bool SetClip(const Rect &非描画領域={0, 0, 0, 0})
描画領域を設定する、設定範囲外には描画されない.
Definition: Screen.h:76
SDX::Screen::Flip
static bool Flip()
描画内容を反映.
Definition: Screen.h:62
SDX::BlendMode::NoBlend
ブレンドしない
SDX::Screen::GetRenderer
static Renderer * GetRenderer()
アクティブなRendererを取得.
Definition: Screen.h:33
SDX::Screen::Clear
static bool Clear()
画面を消去する.
Definition: Screen.h:69
SDX::Renderer::SetClip
bool SetClip(const Rect &描画領域={0, 0, 0, 0})
描画領域を設定する、範囲外には描画されない.
Definition: Renderer.h:190
SDX::Screen::SetTarget
static bool SetTarget(Image *描画対象=nullptr)
描画先を変更.
Definition: Screen.h:48
SDX::Renderer::GetHandle
SDL_Renderer * GetHandle()
描画ハンドルを取得.
Definition: Renderer.h:68
SDX::Color::White
static const Color White
白 [RGB]255,255,255
Definition: Color.h:81
SDX::Image
画像データを表すクラス.
Definition: Image.h:17
SDX::Renderer
描画先を表すクラス.
Definition: Renderer.h:27
SDX::Color
色を表すクラス.
Definition: Color.h:11
SDX::Renderer::Clear
bool Clear()
画面を消去する.
Definition: Renderer.h:160
SDX::Renderer::GetTarget
Image * GetTarget()
現在の描画先を取得する.
Definition: Renderer.h:183
SDX::Renderer::SetTarget
bool SetTarget(Image *描画対象=nullptr)
描画先を変更.
Definition: SDXafx.h:74
SDX::Screen::GetHandle
static SDL_Renderer * GetHandle()
スクリーンハンドルを取得.
Definition: Screen.h:26
SDX::Screen::SetRenderer
static void SetRenderer(Renderer &描画先Renderer=Renderer::mainRenderer)
アクティブなRendererを設定.
Definition: Screen.h:40
SDX::Screen::SetDrawMode
static void SetDrawMode(const Color &輝度＋α値=Color::White, BlendMode ブレンドモード=BlendMode::Alpha)
描画輝度と描画モードをまとめて設定
Definition: Screen.h:100
SDX::Screen::SetBlendMode
static void SetBlendMode(BlendMode ブレンドモード=BlendMode::NoBlend, int 設定値=255)
ブレンド描画のモードを設定.
Definition: Screen.h:94
SDX::BlendMode::Alpha
αブレンド
SDX::Renderer::SetDrawMode
void SetDrawMode(const Color &輝度＋α値=Color::White, BlendMode ブレンドモード=BlendMode::NoBlend)
描画輝度と描画モードをまとめて設定
Definition: Renderer.h:236
SDX::Renderer::SetBlendMode
void SetBlendMode(BlendMode ブレンドモード, int α値)
描画モードを設定.
Definition: Renderer.h:226
SDX::Renderer::mainRenderer
static Renderer & mainRenderer
メインウィンドウのレンダラー
Definition: Renderer.h:48
SDX::Screen::SetBackColor
static void SetBackColor(const Color &背景色)
Screen::Clear後の色を設定.
Definition: Screen.h:82
SDX::Renderer::SetBackColor
void SetBackColor(const Color &背景色)
Screen::Clear後の色を設定.
Definition: Renderer.h:213
SDX::Renderer::SetBright
void SetBright(const Color &輝度)
描画輝度を設定.
Definition: Renderer.h:220
SDX::Screen::SetBright
static void SetBright(const Color &輝度=Color::White)
描画輝度を設定.
Definition: Screen.h:88
SDX::BlendMode
BlendMode
ブレンドモード.
Definition: Renderer.h:14