vtkInteractorStyleRubberBandPickクラスでは、 'r'を押すと長方形のウィンドウを選択でき、 'p'を押すと1x1ウィンドウを選択できます。vtkInteractorStyleRubberBandPick:キーを押さずに選択モードを設定する
現在押されているキー(現在の選択モード)を取得する方法はありますか?
コードで選択モード「r」または「p」を設定できますか(私はpyqtを使用していますが、GUIのボックスにチェックを入れてモードを選択しますか?
vtkInteractorStyleRubberBandPickクラスでは、 'r'を押すと長方形のウィンドウを選択でき、 'p'を押すと1x1ウィンドウを選択できます。vtkInteractorStyleRubberBandPick:キーを押さずに選択モードを設定する
現在押されているキー(現在の選択モード)を取得する方法はありますか?
コードで選択モード「r」または「p」を設定できますか(私はpyqtを使用していますが、GUIのボックスにチェックを入れてモードを選択しますか?
私は、Pythonを話さないので、私はあなたが持っているだろう、余分なものを障害物を知っているが、あなたがこれを行うことができますC++ではありません:
広告1)ピッキングモードでは、公にづけしません保護された変数CurrentMode
(C++ source codeを参照)によって表されます。 vtkInteractorStyleRubberBandPickから派生した独自のクラスを作成し、モードを返す新しいパブリックメソッドを定義する必要があります。
ad 2)再び、直接ではありません。とにかく自分のクラスを派生させるならば、モードを設定する独自のメソッドを定義することもできます。それがなければ、チェックボックスにvtkウィンドウにフォーカスを当て、Rキーを押したイベントを起動させることができると思います。複雑すぎますが、うまくいくでしょう。
元のコードをPythonでラップすると少し失われます。 Pythonでは、vtkInteractorStyleRubberBandPickクラスには変数CurrentModeがありません。または、何らかの形で隠されています。私はスーパークラス(MyInteractorStyle、self).CurrentMode = 1)を呼び出すことによってモードを変更するMyInteractorStyleというサブクラスを作成しようとしましたが、動作しませんでした。 – mululu
変数の名前が何らかの形で壊れている可能性があります。私はPythonの "標準"は変数名の前にアンダースコアを置いてprivate/protectedとして "マーク"していると思います。ラッパーにはreadmeがあります:https://github.com/Kitware/VTK/blob/master/Wrapping/Python/README.md、組み込みの文書を印刷する方法を示しています。おそらく名前が表示されます(もしそれがまったくラップされていれば)。申し訳ありませんが、おそらくあなたを助けることはできません。おそらくvtkメーリングリストを試してみてください。 – tomj