ウィンドウに長方形があり、長方形の領域を定義して、この長方形をクリックできるようにしようとしています。
マウス クリックがこの領域内にある場合、それはクリックです。
例: ウィンドウ上で、長方形の頂点が次のようになっていると仮定します:
x = 40, y = 50; width = 200, height = 100;
したがって、次の場合にクリックがカウントされます
(mouseXPos > getX()) && (mousxPos < (getX()+width)) && (mouseYPos > getY()) && (mouseYPos > getY()+height)
今、関数を持つクラスを継承して、オブジェクトにlookAt変換を行っていlookAt
ます。また、カメラを使用して、オブジェクトのさまざまな面を確認しています (カメラの回転)。そのため、オブジェクトがさまざまな軸に沿って回転し、カメラを使用するとさまざまな面が表示されます。
しかし、オブジェクトが移動すると、長方形の頂点が変わると思っていたでしょう。長方形の頂点も関数の実行時に変更されているはずgluLookAt
ですが、そうではないように見え、オブジェクトが存在しないにもかかわらず、クリック領域は常にそれらのポイントで静止したままです。どうすればこの問題に取り組むことができますか? オブジェクトをクリック可能にしてマウスイベントを追加するにはどうすればよいですか?