製品について
Atoms-SliderUintComponent
AtomsのSliderUintCompoenentを解説します。 SliderUintComponentは指定した範囲の値を設定でき、ドラッグイベントで値を変更できます。Pages-IndexTestComponentはSliderUintComponentを用いてComponentの引数を動的に変更し、再描画を行なっています。SliderUintComponentの保持する値はunsigned int型です。 後の引数は矩形のサイズと色です。標準のSliderComponentはSDLでできる単純なシェイプで描画しています。範囲を示す図形や、ポインタに描画モジュールを編集して指定できます。SDLのオブジェクト描画モジュールの説明は後のチュートリアルで解説します。 下記に簡単にモジュール作成の流れを示します。 オブジェクト作成 SDLのオブジェクト描画モジュール作成 Component作成
Atoms-SliderUintComponent
AtomsのSliderUintCompoenentを解説します。 SliderUintComponentは指定した範囲の値を設定でき、ドラッグイベントで値を変更できます。Pages-IndexTestComponentはSliderUintComponentを用いてComponentの引数を動的に変更し、再描画を行なっています。SliderUintComponentの保持する値はunsigned int型です。 後の引数は矩形のサイズと色です。標準のSliderComponentはSDLでできる単純なシェイプで描画しています。範囲を示す図形や、ポインタに描画モジュールを編集して指定できます。SDLのオブジェクト描画モジュールの説明は後のチュートリアルで解説します。 下記に簡単にモジュール作成の流れを示します。 オブジェクト作成 SDLのオブジェクト描画モジュール作成 Component作成
Atoms-RectComponent
AtomsのRectComponentを解説します。 RectComponentはBoxComponentの配置と違いMarginXYを指定して画面上の任意の場所に描画します。BoxComponentと同様に幅、高さ、背景色を指定できます。 子ノードのコンポーネントは親コンポーネントで指定した場所に描画されます。 標準ComponentではRectComponentやBoxComponentが親ノードとの相対位置を設定するパラメーターを持っています。
Atoms-RectComponent
AtomsのRectComponentを解説します。 RectComponentはBoxComponentの配置と違いMarginXYを指定して画面上の任意の場所に描画します。BoxComponentと同様に幅、高さ、背景色を指定できます。 子ノードのコンポーネントは親コンポーネントで指定した場所に描画されます。 標準ComponentではRectComponentやBoxComponentが親ノードとの相対位置を設定するパラメーターを持っています。
Atoms-ImageComponent
AtomsのImageComponentを紹介します。 入力に画像ファイル名を選択します。 ImageComponentのテストではWindowComponentの小要素として表示します。 Kotaro.pngをImageComponentで描画しています。 Alpha 1.0.1の現在対応しているのはpng画像のみです。今後svgを追加します。SDLの描画自体はシンプルな機能なので、画像の加工が必要な場合はsvgを利用すると良いかと思います。
Atoms-ImageComponent
AtomsのImageComponentを紹介します。 入力に画像ファイル名を選択します。 ImageComponentのテストではWindowComponentの小要素として表示します。 Kotaro.pngをImageComponentで描画しています。 Alpha 1.0.1の現在対応しているのはpng画像のみです。今後svgを追加します。SDLの描画自体はシンプルな機能なので、画像の加工が必要な場合はsvgを利用すると良いかと思います。
Atoms-BoxComponent
KotaroはAtomicデザインでコンポーネントを作成していきます。 AtomsとMoleculesにいくつかのコンポーネントを用意してあります。コンポーネントはAtomsからPagesまで全て自作可能です。また、SDL2を用いて直接オブジェクトの描画を操作できます。 CSSのように静的なスタイルではなくオブジェクトのパラメーターを決定した後に描画方法を指定するため、動的にスタイルの変更ができます。 KotaroTestではSliderComponentでパラメーターを決定しTestComponentを描画します。このためグラフィカルなComponentの網羅テストが可能になります。 標準コンポーネントの紹介後チュートリアルでコンポーネントの作成から描画まで解説します。 まずはコンポーネントの配置を決めるBoxComponentを紹介します。 BoxComponentは左上から右下まで9種類の配置を選択できます。 残りのパラメータは幅、高さ、背景色です。ページレイアウトを作成する場合に便利なAtomコンポーネントです。Atomコンポーネントの子要素を設定してアプリケーションを配置することができます。 RectComponentは9種類の配置を指定せずに直接親要素のマージンを指定して配置します。次回以降順番に各コンポーネントを解説します。
Atoms-BoxComponent
KotaroはAtomicデザインでコンポーネントを作成していきます。 AtomsとMoleculesにいくつかのコンポーネントを用意してあります。コンポーネントはAtomsからPagesまで全て自作可能です。また、SDL2を用いて直接オブジェクトの描画を操作できます。 CSSのように静的なスタイルではなくオブジェクトのパラメーターを決定した後に描画方法を指定するため、動的にスタイルの変更ができます。 KotaroTestではSliderComponentでパラメーターを決定しTestComponentを描画します。このためグラフィカルなComponentの網羅テストが可能になります。 標準コンポーネントの紹介後チュートリアルでコンポーネントの作成から描画まで解説します。 まずはコンポーネントの配置を決めるBoxComponentを紹介します。 BoxComponentは左上から右下まで9種類の配置を選択できます。 残りのパラメータは幅、高さ、背景色です。ページレイアウトを作成する場合に便利なAtomコンポーネントです。Atomコンポーネントの子要素を設定してアプリケーションを配置することができます。 RectComponentは9種類の配置を指定せずに直接親要素のマージンを指定して配置します。次回以降順番に各コンポーネントを解説します。
Kotaro_alpha のビルドについて
Windows visual studioをインストールします。標準でvcpkgとcmakeがインストールされます。 PowerShellでインストール先を確認します。 PS > gcm vcpkg | fl Ps > gem cmake | fl 個別のtoolchainファイルを使用する場合は、CMakePrisets.jsonを用意してcacheVariablesに設定します。visual studioで標準インストールされたvcpkgを使用する前提で進めます。CMakePrisets.jsonでtoolchainを設定しても以降の操作は変わりません。 プロジェクトルートフォルダ(CMakeLists.txtのあるトップディレクトリ)で以下のコマンドを入力してvcpkgの設定を行います。 PS > vcpkg new --application PS > vcpkg add port boost-uuid boost-lexical-cast...
Kotaro_alpha のビルドについて
Windows visual studioをインストールします。標準でvcpkgとcmakeがインストールされます。 PowerShellでインストール先を確認します。 PS > gcm vcpkg | fl Ps > gem cmake | fl 個別のtoolchainファイルを使用する場合は、CMakePrisets.jsonを用意してcacheVariablesに設定します。visual studioで標準インストールされたvcpkgを使用する前提で進めます。CMakePrisets.jsonでtoolchainを設定しても以降の操作は変わりません。 プロジェクトルートフォルダ(CMakeLists.txtのあるトップディレクトリ)で以下のコマンドを入力してvcpkgの設定を行います。 PS > vcpkg new --application PS > vcpkg add port boost-uuid boost-lexical-cast...
CppRestAPIのチュートリアル2
前回はsqlとUserFormatを作成しました。続いてUserAPIを作成します。 UserAPIは作成後Routerに登録し、urlから呼び出し出来るようにします。 //UserAPIは仮想基底クラスから派生します。 template<typename Engine> class UsersAPI : public virtual RestAPI { //データベース(MySQL)にsqlクエリを実行させ、selectメソッドの場合、Formatに変換するクラスにして結果を取得します using QUERY = Query<Engine, UserFormat>; //sqlファイルの中身を保持するクラスのポインタです using SQL = shared_ptr<SQL>; public: UserAPI(Engine...
CppRestAPIのチュートリアル2
前回はsqlとUserFormatを作成しました。続いてUserAPIを作成します。 UserAPIは作成後Routerに登録し、urlから呼び出し出来るようにします。 //UserAPIは仮想基底クラスから派生します。 template<typename Engine> class UsersAPI : public virtual RestAPI { //データベース(MySQL)にsqlクエリを実行させ、selectメソッドの場合、Formatに変換するクラスにして結果を取得します using QUERY = Query<Engine, UserFormat>; //sqlファイルの中身を保持するクラスのポインタです using SQL = shared_ptr<SQL>; public: UserAPI(Engine...