SDXFrameWork  0.13
SDXFrameWork
 All Classes Namespaces Functions Variables Enumerations Enumerator Pages
Blend.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/Image.h>
7 
8 namespace SDX
9 {
15  class Blend
16  {
17  private:
18  MONO_STATE(Blend)
19 
20 
21  static bool CheckSize(const Image *A, const Image *B)
22  {
23  return (A->GetHeight() == B->GetWidth() && A->GetWidth() == B->GetWidth());
24  }
25  public:
28  static bool Add(Image* 合成元, const Image *入力, double 合成率 = 1.0)
29  {
30  if (!CheckSize(合成元, 入力)){ return false; }
31 
32  return false;
33  }
34 
40  static bool Burn(Image* 合成元, const Image *入力, double 合成率 = 1.0)
41  {
42  return false;
43  }
44 
47  static bool Darken(Image* 合成元, const Image *入力, double 合成率 = 1.0)
48  {
49  return false;
50  }
51 
54  static bool Difference(Image* 合成元, const Image *入力, double 合成率 = 1.0)
55  {
56  return false;
57  }
58 
64  static bool Dodge(Image* 合成元, const Image *入力, double 合成率 = 1.0)
65  {
66  return false;
67  }
68 
73  static bool Exclusion(Image* 合成元, const Image *入力, double 合成率 = 1.0)
74  {
75  return false;
76  }
77 
80  static bool HardLight(Image* 合成元, const Image *入力, double 合成率 = 1.0)
81  {
82  return false;
83  }
84 
87  static bool Lighten(Image* 合成元, const Image *入力, double 合成率 = 1.0)
88  {
89  return false;
90  }
91 
96  static bool Multiple(Image* 合成元, const Image *入力, double 合成率 = 1.0)
97  {
98  return false;
99  }
100 
104  static bool Normal(Image* 合成元, const Image *入力, double 合成率 = 1.0)
105  {
106  return false;
107  }
108 
116  static bool OverLay(Image* 合成元, const Image *入力, double 合成率 = 1.0)
117  {
118  return false;
119  }
120 
125  static bool RgbaSelectMix(Image* 合成元, const Image *入力, std::string 色要素指定, double 合成率 = 1.0)
126  {
127  return false;
128  }
129 
134  static bool Screen(Image* 合成元, const Image *入力, double 合成率 = 1.0)
135  {
136  return false;
137  }
138 
146  static bool SoftLight(Image* 合成元, const Image *入力, double 合成率)
147  {
148  return false;
149  }
150 
151  };
152 }
Image同士の合成処理を行う関数群[未実装].
Definition: Blend.h:15
static bool Burn(Image *合成元, const Image *入力, double 合成率=1.0)
焼き込み合成.
Definition: Blend.h:40
static bool Dodge(Image *合成元, const Image *入力, double 合成率=1.0)
覆い焼き合成.
Definition: Blend.h:64
static bool HardLight(Image *合成元, const Image *入力, double 合成率=1.0)
ハードライト合成.
Definition: Blend.h:80
static bool RgbaSelectMix(Image *合成元, const Image *入力, std::string 色要素指定, double 合成率=1.0)
RGBAの要素を選択して合成.
Definition: Blend.h:125
static bool SoftLight(Image *合成元, const Image *入力, double 合成率)
ソフトライト合成.
Definition: Blend.h:146
画像データを表すクラス.
Definition: Image.h:17
static bool Screen(Image *合成元, const Image *入力, double 合成率=1.0)
スクリーン合成.
Definition: Blend.h:134
static bool Difference(Image *合成元, const Image *入力, double 合成率=1.0)
減算合成.
Definition: Blend.h:54
static bool Multiple(Image *合成元, const Image *入力, double 合成率=1.0)
乗算合成.
Definition: Blend.h:96
int GetHeight() const
高さを取得.
Definition: Image.h:310
int GetWidth() const
幅を取得.
Definition: Image.h:304
static bool Darken(Image *合成元, const Image *入力, double 合成率=1.0)
比較合成(暗).
Definition: Blend.h:47
static bool Exclusion(Image *合成元, const Image *入力, double 合成率=1.0)
除外合成.
Definition: Blend.h:73
static bool Lighten(Image *合成元, const Image *入力, double 合成率=1.0)
比較合成(明).
Definition: Blend.h:87
static bool Normal(Image *合成元, const Image *入力, double 合成率=1.0)
通常合成.
Definition: Blend.h:104
static bool OverLay(Image *合成元, const Image *入力, double 合成率=1.0)
オーバーレイ合成.
Definition: Blend.h:116
static bool Add(Image *合成元, const Image *入力, double 合成率=1.0)
加算合成.
Definition: Blend.h:28