2

簡単な CAD システムのユーザー インターフェイスをデシジョン テーブルに入れたいと考えています。しかし、これらのものを表に入れる方法が心配です。

まず、移動、回転、削除のいずれかの現在のモード (CurMode) があります。

次に、次のようなマウス アクションがあります。

OnLButtonDown OnLButtonUp OnRButtonDown OnRButtonUp OnMButtonDown OnMButtonUp OnMouseMouse

この ObjectUnderMouse (true/False) のように、現在のマウス カーソルの下にあるオブジェクトの追加テストがあるかもしれません。

これらおよびその他のパラメーターを使用して、次のルールを決定したいと思います。

Mode が Delete で、オブジェクトがマウスの下にあり、OnLButtonDown が押されている場合、オブジェクトを削除します。

MButtonUp が押された場合 (MouseWheel)、ズーム + MButtonDown が押された場合 (MouseWheel)、ズーム -

Mode が Move で、オブジェクトがマウスの下にあり、OnLButtonDown が押されている場合、オブジェクトをバッファーに入れます。Mode が Move で OnLButtonDown で Buffer 内のオブジェクトと OnMouseMove が動作する場合、オブジェクトを移動します

...... 等々。

シナリオはわかりましたか?

私はよくグーグルで検索し、非常に単純な DT を見ましたが、何百ものパラメーター、状態、モード、および UI アクションを備えたおそらく大規模な CAD システムの良いスタートとしてこれを行うにはどうすればよいでしょうか。

このような CAD システムで機能するデシジョン テーブルの最適な設計は何ですか?

前もって感謝します

4

3 に答える 3

1

Statestep ( http://statestep.com ) が探しているものかもしれません。Web サイトにある例はユーザー インターフェイス用であり、非常に大規模なシステム (数百万の可能性をカバーするルールを含む決定テーブル) での使用が説明されています。C のコード生成があります。

于 2013-02-06T07:06:33.833 に答える
0

お返事をありがとうございます。statestep を詳しく見ていきます (QT は使用しません)。しかし、一般的に、CADシステムのどの部分が条件、アクション、条件の代替などであるかを判断して、wikiのような決定表を定義するのに問題があります。ウィキ決定表

于 2013-02-06T07:40:22.960 に答える