41 Color baseColor{ Color::gray() };
43 Color hoveredColor{ Color::red() };
45 Color activeColor{ { Color::red() } };
52 int customModifiers = 0;
54 bool pickInBackFaceObject =
true;
106 if (
const MeshTriPoint* triPoint = std::get_if<MeshTriPoint>( ¤tPos_ ) )
118 startMove_ = startMove;
137 [[nodiscard]]
bool isOnMove()
const {
return isOnMove_; }
143 MRVIEWER_API
virtual bool onMouseDown_(
MouseButton button,
int modifier )
override;
144 MRVIEWER_API
virtual bool onMouseUp_(
MouseButton button,
int modifier )
override;
145 MRVIEWER_API
virtual bool onMouseMove_(
int mouse_x,
int mouse_y )
override;
147 void updatePositionAndRadius_();
149 void updatePositionAndRadiusPoints_(
const VertId& v );
150 void updatePositionAndRadiusLines_(
const EdgePoint& ep );
154 bool autoHover_{
true };
155 bool isOnMove_{
false };
156 bool isHovered_{
false };
157 MRVIEWER_API
void preDraw_()
override;
161 std::shared_ptr<SphereObject> pickSphere_;
162 std::shared_ptr<VisualObject> baseObject_;
164 boost::signals2::scoped_connection onBaseObjectWorldXfChanged_;
166 std::function<void(
const PickedPoint& )> startMove_;
167 std::function<void(
const PickedPoint& )> onMove_;
168 std::function<void(
const PickedPoint& )> endMove_;
171 void setPointRadius_();
Faces
Definition MRObjectMeshHolder.h:12
Edges
Definition MRObjectMeshHolder.h:14
Definition MRCameraOrientationPlugin.h:8
MouseButton
Definition MRMouse.h:9
std::variant< MeshTriPoint, EdgePoint, VertId, int > PickedPoint
Definition MRPointOnObject.h:40
encodes a point on an edge of mesh or of polyline
Definition MREdgePoint.h:11
Definition MRMesh/MRMeshTriPoint.h:23
Definition MRViewerEventsListener.h:29
Definition MRPointOnObject.h:16