39 MRVIEWER_API
void draw(
const Viewport& vp,
const AffineXf3f& rotXf,
const AffineXf3f& vpInvXf );
47 std::shared_ptr<Object> rootObj_;
48 std::vector<boost::signals2::scoped_connection> connections_;
50 PickedIds pick_(
const Vector2f& mousePos )
const;
51 void hover_(
const Vector2f& mousePos );
52 bool press_(
const Vector2f& mousePos );
std::vector<T>-like container that requires specific indexing type,
Definition MRVector.h:23
Definition MRViewportId.h:16
stores mask of viewport unique identifiers
Definition MRViewportId.h:42
Definition MRViewport.h:49
Mesh makeCornerControllerMesh(float size, float cornerRatio=0.2f)
Makes cube mesh with specified face structure for each 3-rank corner, each 2-rank corner and each sid...
ViewportId vId
Definition MRViewportCornerController.h:25
ImVec2 size(const ViewportRectangle &rect)
Definition MRViewport.h:32
void enable(ViewportMask mask)
enables or disables this object by provided mask
SideRegions
Definition MRViewportCornerController.h:14
void resetRedrawFlag()
marks this object as drawn
bool ccw(const Vector2i &a, const Vector2i &b)
TexturePerFace getCornerControllerHoveredTextureMap(RegionId rId)
returns textures map with region faces hovered
const TexturePerFace & getCornerControllerTexureMap()
RegionId getCornerControllerRegionByFace(FaceId face)
returns region id of corner controller by its face
void draw(const Viewport &vp, const AffineXf3f &rotXf, const AffineXf3f &vpInvXf)
draw this object in given viewport in position of basis axes
RegionId rId
Definition MRViewportCornerController.h:26
Vector< MeshTexture, TextureId > loadCornerControllerTextures()
Loads 3 textures for corner controller: default, side hovered, corner hovered.
VertUVCoords makeCornerControllerUVCoords(float cornerRatio=0.2f)
Creates UV coordinates for makeCornerControllerMesh output mesh for texture like: "Right"" Left " " T...
bool getRedrawFlag(ViewportMask mask) const
returns true if objects requires redraw
void updateCurrentViewByControllerRegion(CornerControllerObject::PickedIds pickedId)
setup camera for selected viewport by corner controller region
CornerControllerObject()=default
Mesh makeCornerControllerRotationArrowMesh(float size, const Vector2f &shift, bool ccw)
Makes planar arrow mesh that will be used for controlling in plane rotation in corner near cube contr...
bool operator==(const PickedIds &other) const =default
void initDefault()
initialize this object with default settings
@ other
Angle, normally float. Measure in radians.
Definition MRFeatureObject.h:27
@ CWArrow
Definition MRViewportCornerController.h:16
@ CCWArrow
Definition MRViewportCornerController.h:15
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRViewportCornerController.h:24