FineKernelToolKit: CLI/FK_CLI/include/Line_CLI.h ソースファイル

FineKernelToolKit 4.3.0

読み取り中…
検索中…
一致する文字列を見つけられません
Line_CLI.h
[詳解]
1#pragma once
2
3#include <FK/Line.h>
4#include "Shape_CLI.h"
5#include "Vector_CLI.h"
6#include "Color_CLI.h"
7
8namespace FK_CLI
9{
10 using namespace System::Collections::Generic;
11
13
26 public ref class fk_Line : fk_Shape {
27 internal:
28 ::FK::fk_Line * GetP(void);
29
30 public:
31#if !defined(FK_DOXYGEN_USER_PROCESS)
32 fk_Line(bool argNewFlg);
33#endif
35 fk_Line();
36
38 ~fk_Line();
39
41 !fk_Line();
42
44
47 property int Size {
48 int get();
49 }
50
52
55 void AllClear(void);
56
58
65 void PushLine(IEnumerable<fk_Vector^>^ array);
66
68
74 void PushLine(fk_Vector^ startPos, fk_Vector^ endPos);
75
77
92 bool ChangeLine(int lineID, fk_Vector^ startPos, fk_Vector^ endPos);
93
95
111 bool SetVertex(int vertexID, fk_Vector^ pos);
112
114
132 bool SetVertex(int lineID, int vertexID, fk_Vector^ pos);
133
135
143 void SetVertex(IEnumerable<fk_Vector^>^ array);
144
146
154 void SetDrawMode(int ID, bool mode);
155
156
158
167 bool GetDrawMode(int ID);
168
169
171
179 void SetColor(int ID, fk_Color^ color);
180 };
181}
182
183/****************************************************************************
184 *
185 * Copyright (c) 1999-2024, Fine Kernel Project, All rights reserved.
186 *
187 * Redistribution and use in source and binary forms,
188 * with or without modification, are permitted provided that the
189 * following conditions are met:
190 *
191 * - Redistributions of source code must retain the above
192 * copyright notice, this list of conditions and the
193 * following disclaimer.
194 *
195 * - Redistributions in binary form must reproduce the above
196 * copyright notice, this list of conditions and the
197 * following disclaimer in the documentation and/or
198 * other materials provided with the distribution.
199 *
200 * - Neither the name of the copyright holders nor the names
201 * of its contributors may be used to endorse or promote
202 * products derived from this software without specific
203 * prior written permission.
204 *
205 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
206 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
207 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
208 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
209 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
210 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
211 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
212 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
213 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
214 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
215 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
216 * POSSIBILITY OF SUCH DAMAGE.
217 *
218 ****************************************************************************/
219/****************************************************************************
220 *
221 * Copyright (c) 1999-2024, Fine Kernel Project, All rights reserved.
222 *
223 * 本ソフトウェアおよびソースコードのライセンスは、基本的に
224 * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
225 *
226 * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
227 * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
228 *
229 * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
230 * および下記免責条項を含めること。
231 *
232 * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
233 * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
234 * 含めること。
235 *
236 * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
237 * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
238 * コントリビューターの名前を使用してはならない。
239 *
240 * 本ソフトウェアは、著作権者およびコントリビューターによって「現
241 * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
242 * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
243 * に限定されない、いかなる保証もないものとします。著作権者もコン
244 * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
245 * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
246 * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
247 * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
248 * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
249 * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
250 * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
251 * ついて、一切責任を負わないものとします。
252 *
253 ****************************************************************************/
Color_CLI.h
Shape_CLI.h
Vector_CLI.h
FK_CLI::fk_Color
RGB色を管理するクラス
Definition Color_CLI.h:21
FK_CLI::fk_Line::SetDrawMode
void SetDrawMode(int ID, bool mode)
線分描画制御メソッド
FK_CLI::fk_Line::SetVertex
void SetVertex(IEnumerable< fk_Vector^>^ array)
単独線分生成メソッド
FK_CLI::fk_Line::PushLine
void PushLine(fk_Vector^ startPos, fk_Vector^ endPos)
単独線分追加メソッド2
FK_CLI::fk_Line::Size
int Size
線分本数プロパティ
Definition Line_CLI.h:47
FK_CLI::fk_Line::fk_Line
fk_Line()
コンストラクタ
FK_CLI::fk_Line::ChangeLine
bool ChangeLine(int lineID, fk_Vector^ startPos, fk_Vector^ endPos)
線分端点位置変更メソッド
FK_CLI::fk_Line::GetDrawMode
bool GetDrawMode(int ID)
個別線分描画状態参照メソッド
FK_CLI::fk_Line::SetColor
void SetColor(int ID, fk_Color^ color)
個別色設定メソッド
FK_CLI::fk_Line::~fk_Line
~fk_Line()
デストラクタ
FK_CLI::fk_Line::PushLine
void PushLine(IEnumerable< fk_Vector^>^ array)
単独線分追加メソッド1
FK_CLI::fk_Line::AllClear
void AllClear(void)
全消去メソッド
FK_CLI::fk_Line::SetVertex
bool SetVertex(int lineID, int vertexID, fk_Vector^ pos)
任意線分端点位置設定メソッド
FK_CLI::fk_Line::SetVertex
bool SetVertex(int vertexID, fk_Vector^ pos)
単独線分端点位置設定メソッド
FK_CLI::fk_Shape
形状用基底クラス
Definition Shape_CLI.h:29
FK_CLI::fk_Vector
3次元ベクトルを管理するクラス
Definition Vector_CLI.h:35
FK_CLI
Definition AppWindow_CLI.h:11