FineKernelToolKit 3.1.0

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

- ファイル一覧

Operation_CLI.h
[詳解]
1 // Operation_CLI.h
2
3 #pragma once
4
5 #include <FK/Operation.h>
6 #include "DataAccess_CLI.h"
7
8 namespace FK_CLI
9 {
11
45 public ref class fk_Operation : fk_DataAccess {
46 internal:
47 ::fk_Operation * GetP(void);
48
49 public:
50 #ifndef FK_DOXYGEN_USER_PROCESS
51 fk_Operation(bool argNewFlg);
52 ~fk_Operation();
53 #endif
54
56
69 property bool HistoryMode {
70 void set(bool);
71 bool get();
72 }
73
75
87 property bool TesselateMode {
88 void set(bool);
89 bool get();
90 }
91
93
94
96
109 fk_Vertex^ MakeVertex(fk_Vector^ P);
110
111
113
127 bool DeleteVertex(fk_Vertex^ V);
128
130
145 bool MoveVertex(fk_Vertex^ V, fk_Vector^ P);
146
148
191 fk_Edge^ MakeEdge(fk_Vertex^ V_1, fk_Vertex^ V_2,
192 fk_Half^ H_11, fk_Half^ H_12, fk_Half^ H_21, fk_Half^ H_22);
193
195
210 fk_Edge^ MakeEdge(fk_Vertex^ V_1, fk_Vertex^ V_2);
211
213
227 bool DeleteEdge(fk_Edge^ E);
228
230
248 fk_Loop^ MakeLoop(fk_Half ^H);
249
251
266 bool DeleteLoop(fk_Loop^ L);
267
269
293 fk_Edge^ SeparateLoop(fk_Half^ H1, fk_Half^ H2);
294
296
311 bool UniteLoop(fk_Edge^ E);
312
314
328 fk_Vertex^ SeparateEdge(fk_Edge^ E);
329
331
346 bool UniteEdge(fk_Vertex^ V);
347
349
364 void NegateBody(void);
366
368
369
371
381 void SetHistoryMark(void);
382
384
433 bool UndoHistory(void);
434
436
446 bool RedoHistory(void);
448 };
449 }
450
451 /****************************************************************************
452 *
453 * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
454 *
455 * Redistribution and use in source and binary forms,
456 * with or without modification, are permitted provided that the
457 * following conditions are met:
458 *
459 * - Redistributions of source code must retain the above
460 * copyright notice, this list of conditions and the
461 * following disclaimer.
462 *
463 * - Redistributions in binary form must reproduce the above
464 * copyright notice, this list of conditions and the
465 * following disclaimer in the documentation and/or
466 * other materials provided with the distribution.
467 *
468 * - Neither the name of the copyright holders nor the names
469 * of its contributors may be used to endorse or promote
470 * products derived from this software without specific
471 * prior written permission.
472 *
473 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
474 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
475 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
476 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
477 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
478 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
479 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
480 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
481 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
482 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
483 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
484 * POSSIBILITY OF SUCH DAMAGE.
485 *
486 ****************************************************************************/
487 /****************************************************************************
488 *
489 * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
490 *
491 * 本ソフトウェアおよびソースコードのライセンスは、基本的に
492 * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
493 *
494 * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
495 * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
496 *
497 * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
498 * および下記免責条項を含めること。
499 *
500 * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
501 * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
502 * 含めること。
503 *
504 * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
505 * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
506 * コントリビューターの名前を使用してはならない。
507 *
508 * 本ソフトウェアは、著作権者およびコントリビューターによって「現
509 * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
510 * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
511 * に限定されない、いかなる保証もないものとします。著作権者もコン
512 * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
513 * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
514 * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
515 * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
516 * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
517 * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
518 * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
519 * ついて、一切責任を負わないものとします。
520 *
521 ****************************************************************************/
FK_CLI::fk_Vertex
ソリッドモデルの頂点位相を管理するクラス
Definition: Vertex_CLI.h:26
FK_CLI::fk_Operation::UniteLoop
bool UniteLoop(fk_Edge^ E)
ループ結合メソッド
FK_CLI::fk_Edge
ソリッドモデルの稜線位相を管理するクラス
Definition: Edge_CLI.h:33
FK_CLI::fk_DataAccess
ソリッドモデル用位相要素アクセスクラス
Definition: DataAccess_CLI.h:18
FK_CLI::fk_Operation::SeparateEdge
fk_Vertex^ SeparateEdge(fk_Edge^ E)
稜線分離メソッド
FK_CLI::fk_Operation::SetHistoryMark
void SetHistoryMark(void)
履歴マーク設定メソッド
FK_CLI::fk_Operation::MakeVertex
fk_Vertex^ MakeVertex(fk_Vector^ P)
頂点生成メソッド
FK_CLI::fk_Operation::UniteEdge
bool UniteEdge(fk_Vertex^ V)
稜線結合メソッド
DataAccess_CLI.h
FK_CLI::fk_Operation::MoveVertex
bool MoveVertex(fk_Vertex^ V, fk_Vector^ P)
頂点移動メソッド
FK_CLI::fk_Operation
オイラー操作用クラス
Definition: Operation_CLI.h:45
FK_CLI::fk_Operation::TesselateMode
bool TesselateMode
形状全体テセレーションプロパティ
Definition: Operation_CLI.h:87
FK_CLI::fk_Operation::DeleteVertex
bool DeleteVertex(fk_Vertex^ V)
頂点削除メソッド
FK_CLI::fk_Operation::DeleteEdge
bool DeleteEdge(fk_Edge^ E)
稜線削除メソッド
FK_CLI::fk_Operation::RedoHistory
bool RedoHistory(void)
REDO 操作実行メソッド
FK_CLI::fk_Operation::DeleteLoop
bool DeleteLoop(fk_Loop^ L)
ループ削除メソッド
FK_CLI::fk_Half
ソリッドモデルの半稜線位相を管理するクラス
Definition: Half_CLI.h:29
FK_CLI::fk_Operation::HistoryMode
bool HistoryMode
履歴保存モードプロパティ
Definition: Operation_CLI.h:69
FK_CLI::fk_Operation::MakeEdge
fk_Edge^ MakeEdge(fk_Vertex^ V_1, fk_Vertex^ V_2, fk_Half^ H_11, fk_Half^ H_12, fk_Half^ H_21, fk_Half^ H_22)
稜線生成メソッド1
FK_CLI::fk_Vector
3次元ベクトルを管理するクラス
Definition: Vector_CLI.h:37
FK_CLI::fk_Operation::NegateBody
void NegateBody(void)
形状反転メソッド
FK_CLI::fk_Operation::MakeLoop
fk_Loop^ MakeLoop(fk_Half^ H)
ループ生成メソッド
FK_CLI::fk_Loop
ソリッドモデルのループ位相を管理するクラス
Definition: Loop_CLI.h:30
FK_CLI::fk_Operation::UndoHistory
bool UndoHistory(void)
UNDO 操作実行メソッド
FK_CLI::fk_Operation::SeparateLoop
fk_Edge^ SeparateLoop(fk_Half^ H1, fk_Half^ H2)
ループ分割メソッド
FK_CLI
Definition: AppWindow_CLI.h:11