FineKernelToolKit 3.1.0

- 総合概要
- 名前空間
- クラス
- ファイル

- ファイル一覧

Material_CLI.h
[詳解]
1 // Material_CLI.h
2
3 #pragma once
4
5 #include <FK/Material.h>
6 #include <FK/MatExample.h>
7 #include "Base_CLI.h"
8
9 namespace FK_CLI
10 {
12
24 public ref class fk_Color {
25 internal:
26 bool dFlg;
27 ::fk_Color *pCol;
28
29 ::fk_Color * GetP(void);
30
31 public:
32 #ifndef FK_DOXYGEN_USER_PROCESS
33 fk_Color(bool argNewFlg);
34 #endif
35
37
40 fk_Color();
41
43
50 fk_Color(double R, double G, double B);
51
53
61 fk_Color(double R, double G, double B, double A);
62
64
71 fk_Color(float R, float G, float B);
72
74
82 fk_Color(float R, float G, float B, float A);
83
85 ~fk_Color();
86
88 !fk_Color();
89
91
95 property float col[int] {
96 float get(int argI);
97 void set(int argI, float argC);
98 }
99
101
104 property float r {
105 float get();
106 void set(float argF);
107 }
108
110
113 property float g {
114 float get();
115 void set(float argF);
116 }
117
119
122 property float b {
123 float get();
124 void set(float argF);
125 }
126
128
132 property float a {
133 float get();
134 void set(float argF);
135 }
136
138
139
141
149 static fk_Color^ operator+(fk_Color^, fk_Color^);
150
152
160 static fk_Color^ operator-(fk_Color^, fk_Color^);
161
163
173 static fk_Color^ operator*(fk_Color^, double);
174
176
186 static fk_Color^ operator*(double, fk_Color^);
187
189
198 static fk_Color^ operator/(fk_Color^, double);
199
201
203
204
206
219 static void operator *= (fk_Color^, double);
220
222
236 static void operator /= (fk_Color^, double);
237
239
251 static void operator += (fk_Color^, fk_Color^);
252
254
266 static void operator -= (fk_Color^, fk_Color^);
267
269
271
280 bool fk_Color::Equals(fk_Color^ C);
281
283
292 virtual bool fk_Color::Equals(Object^ C) override;
293
295
300 String^ fk_Color::ToString() override;
301
303
306 void Init(void);
307
309
317 void Init(float R, float G, float B);
318
320
329 void Init(float R, float G, float B, float A);
330
332
340 void Init(double R, double G, double B);
341
343
352 void Init(double R, double G, double B, double A);
353
355
363 void Set(float R, float G, float B);
364
366
375 void Set(float R, float G, float B, float A);
376
378
386 void Set(double R, double G, double B);
387
389
398 void Set(double R, double G, double B, double A);
399
401
410 void SetHSV(double H, double S, double V);
411 };
412
414
448 public ref class fk_Material {
449 internal:
450 bool dFlg;
451 ::fk_Material *pMat;
452
453 ::fk_Material * GetP(void);
454
455 public:
456 #ifndef FK_DOXYGEN_USER_PROCESS
457 fk_Material(bool argNewFlg);
458 #endif
459 fk_Material();
461
463 ~fk_Material();
464
466 !fk_Material();
467
469
478 bool Equals(fk_Material^ M);
479
481
490 virtual bool Equals(Object^ M) override;
491
493
505 property float Alpha {
506 float get();
507 void set(float argF);
508 }
509
511
515 property fk_Color^ Ambient {
516 fk_Color^ get();
517 void set(fk_Color^ argC);
518 }
519
521
525 property fk_Color^ Diffuse {
526 fk_Color^ get();
527 void set(fk_Color^ argC);
528 }
529
531
535 property fk_Color^ Specular {
536 fk_Color^ get();
537 void set(fk_Color^ argC);
538 }
539
541
545 property fk_Color^ Emission {
546 fk_Color^ get();
547 void set(fk_Color^ argC);
548 }
549
551
554 property float Shininess {
555 float get();
556 void set(float s);
557 };
558
560
563 void Init(void);
564
566
576 static void InitDefault(void);
577
581 static fk_Material^ AshGray;
582
586 static fk_Material^ BambooGreen;
587
591 static fk_Material^ Blue;
592
596 static fk_Material^ Brown;
597
601 static fk_Material^ BurntTitan;
602
606 static fk_Material^ Coral;
607
611 static fk_Material^ Cream;
612
616 static fk_Material^ Cyan;
617
621 static fk_Material^ DarkBlue;
622
626 static fk_Material^ DarkGreen;
627
631 static fk_Material^ DarkPurple;
632
636 static fk_Material^ DarkRed;
637
641 static fk_Material^ DarkYellow;
642
646 static fk_Material^ DimYellow;
647
651 static fk_Material^ Flesh;
652
656 static fk_Material^ GlossBlack;
657
661 static fk_Material^ GrassGreen;
662
666 static fk_Material^ Gray1;
667
671 static fk_Material^ Gray2;
672
676 static fk_Material^ Green;
677
681 static fk_Material^ HolidaySkyBlue;
682
686 static fk_Material^ IridescentGreen;
687
691 static fk_Material^ Ivory;
692
696 static fk_Material^ LavaRed;
697
701 static fk_Material^ LightBlue;
702
706 static fk_Material^ LightCyan;
707
711 static fk_Material^ LightGreen;
712
716 static fk_Material^ LightViolet;
717
721 static fk_Material^ Lilac;
722
726 static fk_Material^ MatBlack;
727
731 static fk_Material^ Orange;
732
736 static fk_Material^ PaleBlue;
737
741 static fk_Material^ PearWhite;
742
746 static fk_Material^ Pink;
747
751 static fk_Material^ Purple;
752
756 static fk_Material^ Red;
757
761 static fk_Material^ TrueWhite;
762
766 static fk_Material^ UltraMarine;
767
771 static fk_Material^ Violet;
772
776 static fk_Material^ White;
777
781 static fk_Material^ Yellow;
782
783
784 };
785 }
786
787 /****************************************************************************
788 *
789 * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
790 *
791 * Redistribution and use in source and binary forms,
792 * with or without modification, are permitted provided that the
793 * following conditions are met:
794 *
795 * - Redistributions of source code must retain the above
796 * copyright notice, this list of conditions and the
797 * following disclaimer.
798 *
799 * - Redistributions in binary form must reproduce the above
800 * copyright notice, this list of conditions and the
801 * following disclaimer in the documentation and/or
802 * other materials provided with the distribution.
803 *
804 * - Neither the name of the copyright holders nor the names
805 * of its contributors may be used to endorse or promote
806 * products derived from this software without specific
807 * prior written permission.
808 *
809 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
810 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
811 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
812 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
813 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
814 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
815 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
816 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
817 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
818 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
819 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
820 * POSSIBILITY OF SUCH DAMAGE.
821 *
822 ****************************************************************************/
823 /****************************************************************************
824 *
825 * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
826 *
827 * 本ソフトウェアおよびソースコードのライセンスは、基本的に
828 * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
829 *
830 * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
831 * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
832 *
833 * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
834 * および下記免責条項を含めること。
835 *
836 * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
837 * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
838 * 含めること。
839 *
840 * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
841 * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
842 * コントリビューターの名前を使用してはならない。
843 *
844 * 本ソフトウェアは、著作権者およびコントリビューターによって「現
845 * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
846 * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
847 * に限定されない、いかなる保証もないものとします。著作権者もコン
848 * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
849 * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
850 * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
851 * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
852 * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
853 * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
854 * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
855 * ついて、一切責任を負わないものとします。
856 *
857 ****************************************************************************/
FK_CLI::fk_Material::Yellow
static fk_Material^ Yellow
Definition: Material_CLI.h:781
FK_CLI::fk_Material::IridescentGreen
static fk_Material^ IridescentGreen
Definition: Material_CLI.h:686
FK_CLI::fk_Material::DarkPurple
static fk_Material^ DarkPurple
Definition: Material_CLI.h:631
FK_CLI::fk_Material::Gray1
static fk_Material^ Gray1
Definition: Material_CLI.h:666
FK_CLI::fk_Material::TrueWhite
static fk_Material^ TrueWhite
Definition: Material_CLI.h:761
FK_CLI::fk_Color::operator/=
static void operator/=(fk_Color^ , double)
実数商代入演算子
FK_CLI::fk_Color::operator*
static fk_Color^ operator*(fk_Color^ , double)
実数倍二項演算子1
FK_CLI::fk_Color::operator-=
static void operator-=(fk_Color^ , fk_Color^ )
単項差代入演算子
FK_CLI::fk_Material::Cyan
static fk_Material^ Cyan
Definition: Material_CLI.h:616
FK_CLI::fk_Material::Coral
static fk_Material^ Coral
Definition: Material_CLI.h:606
FK_CLI::fk_Material::HolidaySkyBlue
static fk_Material^ HolidaySkyBlue
Definition: Material_CLI.h:681
FK_CLI::fk_Material::DarkRed
static fk_Material^ DarkRed
Definition: Material_CLI.h:636
FK_CLI::fk_Material::Flesh
static fk_Material^ Flesh
Definition: Material_CLI.h:651
FK_CLI::fk_Material::White
static fk_Material^ White
Definition: Material_CLI.h:776
FK_CLI::fk_Material::UltraMarine
static fk_Material^ UltraMarine
Definition: Material_CLI.h:766
FK_CLI::fk_Material::LavaRed
static fk_Material^ LavaRed
Definition: Material_CLI.h:696
FK_CLI::fk_Material::Alpha
float Alpha
透明度プロパティ
Definition: Material_CLI.h:505
FK_CLI::fk_Material::fk_Material
fk_Material()
コンストラクタ
FK_CLI::fk_Material::PaleBlue
static fk_Material^ PaleBlue
Definition: Material_CLI.h:736
FK_CLI::fk_Material::DarkYellow
static fk_Material^ DarkYellow
Definition: Material_CLI.h:641
FK_CLI::fk_Color::SetHSV
void SetHSV(double H, double S, double V)
HSV変換メソッド
FK_CLI::fk_Material::Orange
static fk_Material^ Orange
Definition: Material_CLI.h:731
FK_CLI::fk_Material::Red
static fk_Material^ Red
Definition: Material_CLI.h:756
FK_CLI::fk_Material::Green
static fk_Material^ Green
Definition: Material_CLI.h:676
Base_CLI.h
FK_CLI::fk_Color::b
float b
B(青)要素プロパティ
Definition: Material_CLI.h:122
FK_CLI::fk_Material::BambooGreen
static fk_Material^ BambooGreen
Definition: Material_CLI.h:586
FK_CLI::fk_Material::Violet
static fk_Material^ Violet
Definition: Material_CLI.h:771
FK_CLI::fk_Material::Purple
static fk_Material^ Purple
Definition: Material_CLI.h:751
FK_CLI::fk_Material::GlossBlack
static fk_Material^ GlossBlack
Definition: Material_CLI.h:656
FK_CLI::fk_Material::DarkGreen
static fk_Material^ DarkGreen
Definition: Material_CLI.h:626
FK_CLI::fk_Material::LightBlue
static fk_Material^ LightBlue
Definition: Material_CLI.h:701
FK_CLI::fk_Material::InitDefault
static void InitDefault(void)
デフォルトマテリアル初期化メソッド
FK_CLI::fk_Material::DimYellow
static fk_Material^ DimYellow
Definition: Material_CLI.h:646
FK_CLI::fk_Material::Specular
fk_Color^ Specular
鏡面反射係数プロパティ
Definition: Material_CLI.h:535
FK_CLI::fk_Color::~fk_Color
~fk_Color()
デストラクタ
FK_CLI::fk_Material::GrassGreen
static fk_Material^ GrassGreen
Definition: Material_CLI.h:661
FK_CLI::fk_Material::Cream
static fk_Material^ Cream
Definition: Material_CLI.h:611
FK_CLI::fk_Material::~fk_Material
~fk_Material()
デストラクタ
FK_CLI::fk_Material::Lilac
static fk_Material^ Lilac
Definition: Material_CLI.h:721
FK_CLI::fk_Material::Blue
static fk_Material^ Blue
Definition: Material_CLI.h:591
FK_CLI::fk_Material::LightGreen
static fk_Material^ LightGreen
Definition: Material_CLI.h:711
FK_CLI::fk_Material::Brown
static fk_Material^ Brown
Definition: Material_CLI.h:596
FK_CLI::fk_Material::LightViolet
static fk_Material^ LightViolet
Definition: Material_CLI.h:716
FK_CLI::fk_Color
RGB色を管理するクラス
Definition: Material_CLI.h:24
FK_CLI::fk_Material::Gray2
static fk_Material^ Gray2
Definition: Material_CLI.h:671
FK_CLI::fk_Material::Equals
bool Equals(fk_Material^ M)
同値比較メソッド1
FK_CLI::fk_Color::Init
void Init(void)
初期化メソッド1
FK_CLI::fk_Color::r
float r
R(赤)要素プロパティ
Definition: Material_CLI.h:104
FK_CLI::fk_Color::operator*=
static void operator*=(fk_Color^ , double)
実数積代入演算子
FK_CLI::fk_Material::Shininess
float Shininess
鏡面反射ハイライトプロパティ
Definition: Material_CLI.h:554
FK_CLI::fk_Material::Pink
static fk_Material^ Pink
Definition: Material_CLI.h:746
FK_CLI::fk_Material::LightCyan
static fk_Material^ LightCyan
Definition: Material_CLI.h:706
FK_CLI::fk_Color::operator+
static fk_Color^ operator+(fk_Color^ , fk_Color^ )
色要素和二項演算子
FK_CLI::fk_Color::Set
void Set(float R, float G, float B)
設定メソッド1
FK_CLI::fk_Color::a
float a
A(透過色)要素プロパティ
Definition: Material_CLI.h:132
FK_CLI::fk_Material::PearWhite
static fk_Material^ PearWhite
Definition: Material_CLI.h:741
FK_CLI::fk_Material::Diffuse
fk_Color^ Diffuse
拡散反射係数プロパティ
Definition: Material_CLI.h:525
FK_CLI::fk_Material::MatBlack
static fk_Material^ MatBlack
Definition: Material_CLI.h:726
FK_CLI::fk_Material::Ivory
static fk_Material^ Ivory
Definition: Material_CLI.h:691
FK_CLI::fk_Color::g
float g
G(緑)要素プロパティ
Definition: Material_CLI.h:113
FK_CLI::fk_Material::AshGray
static fk_Material^ AshGray
Definition: Material_CLI.h:581
FK_CLI::fk_Material::DarkBlue
static fk_Material^ DarkBlue
Definition: Material_CLI.h:621
FK_CLI::fk_Material::Init
void Init(void)
初期化メソッド
FK_CLI::fk_Color::fk_Color
fk_Color()
コンストラクタ1
FK_CLI::fk_Color::operator+=
static void operator+=(fk_Color^ , fk_Color^ )
単項和代入演算子
FK_CLI::fk_Material::Emission
fk_Color^ Emission
放射光反射係数プロパティ
Definition: Material_CLI.h:545
FK_CLI::fk_Color::operator/
static fk_Color^ operator/(fk_Color^ , double)
実数商二項演算子
FK_CLI::fk_Material
マテリアル(質感)を管理するクラス
Definition: Material_CLI.h:448
FK_CLI::fk_Material::BurntTitan
static fk_Material^ BurntTitan
Definition: Material_CLI.h:601
FK_CLI::fk_Color::operator-
static fk_Color^ operator-(fk_Color^ , fk_Color^ )
色要素差二項演算子
FK_CLI::fk_Material::Ambient
fk_Color^ Ambient
環境反射係数プロパティ
Definition: Material_CLI.h:515
FK_CLI
Definition: AppWindow_CLI.h:11