7 #ifndef CAFU_CHILDFRAME_VIEW_WIN_3D_HPP_INCLUDED
8 #define CAFU_CHILDFRAME_VIEW_WIN_3D_HPP_INCLUDED
10 #include "ChildFrameViewWin.hpp"
11 #include "Renderer3D.hpp"
13 #include "../AxesInfo.hpp"
14 #include "../Generic3DWindow.hpp"
60 virtual Vector3fT GetRefPtWorld(
const wxPoint& RefPtWin)
const;
61 virtual void InfoCameraChanged();
62 virtual void InfoRightMouseClick(wxMouseEvent& ME);
66 unsigned long m_TimeOfLastPaint;
70 void OnKeyDown (wxKeyEvent& KE);
71 void OnKeyUp (wxKeyEvent& KE);
72 void OnKeyChar (wxKeyEvent& KE);
73 void OnMouseLeftDown (wxMouseEvent& ME);
74 void OnMouseLeftUp (wxMouseEvent& ME);
75 void OnMouseMiddleDown(wxMouseEvent& ME);
76 void OnMouseMiddleUp (wxMouseEvent& ME);
77 void OnMouseWheel (wxMouseEvent& ME);
78 void OnMouseMove (wxMouseEvent& ME);
79 void OnContextMenu (wxContextMenuEvent& CE);
80 void OnPaint (wxPaintEvent& PE);
This class provides auxiliary means for rendering a 3D view.
Definition: Renderer3D.hpp:30
unsigned long FaceNr
If Object is a map brush, this is the number of its face that was hit.
Definition: ChildFrameViewWin3D.hpp:29
ArrayT< HitInfoT > GetElementsAt(const wxPoint &Pixel) const
This method returns visible all map elements at a given pixel in the 3D view window.
Definition: ChildFrameViewWin3D.cpp:111
This class implements a camera.
Definition: Camera.hpp:17
ViewTypeT GetViewType() const
Returns the view type of this view window.
Definition: ChildFrameViewWin3D.hpp:47
wxWindow * GetWindow()
This function is not const because we can mutate this(!) object via the returned pointer.
Definition: ChildFrameViewWin3D.cpp:99
This class represents a child frame.
Definition: ChildFrame.hpp:55
ViewWindow3DT(wxWindow *Parent, ChildFrameT *ChildFrame, CameraT *InitialCamera, ViewTypeT InitialViewType)
The constructor.
Definition: ChildFrameViewWin3D.cpp:56
AxesInfoT GetAxesInfo() const
This method returns the axes info for this window. In the case of a 3D window, it computes the 2D axe...
Definition: ChildFrameViewWin3D.hpp:48
MapElementT * Object
Pointer to the intersected map element.
Definition: ChildFrameViewWin3D.hpp:28
This class represents a (superclass of a) 2D or 3D map view window.
Definition: ChildFrameViewWin.hpp:21
AxesInfoT GetAxesInfo() const
Returns the set of axes that the camera orientation is currently the closest to.
Definition: Generic3DWindow.cpp:134
void NotifySubjectChanged(ToolsSubjectT *Subject, ToolT *Tool, ToolsUpdatePriorityT Priority)
Notifies the observer that the current subject has been changed.
Definition: ChildFrameViewWin3D.cpp:73
This class describes how the three world-space axes are mapped to the two screen- or window-space axe...
Definition: AxesInfo.hpp:15
This class implements a generic 3D window.
Definition: Generic3DWindow.hpp:20
Definition: ChildFrameViewWin3D.hpp:21
Vector3fT Pos
The point in the world where the object was hit.
Definition: ChildFrameViewWin3D.hpp:31
float Depth
Depth value (distance from ray origin (on near clip plane) along the ray) of the hit object...
Definition: ChildFrameViewWin3D.hpp:30
This struct describes a hit (an intersection of a map element with a view ray through a given pixel) ...
Definition: ChildFrameViewWin3D.hpp:26
Definition: Renderer.hpp:16
This is the base class for all elements ("objects") that can exist in a map.
Definition: MapElement.hpp:57