40        Color baseColor{ Color::gray() };
 
   42        Color hoveredColor{ Color::red() };
 
   44        Color activeColor{ { Color::red() } };
 
   52        int customModifiers = 0; 
 
   54        bool pickInBackFaceObject = 
true;
 
 
  107    [[deprecated]] Vector3f 
toVector3f()
 const { 
return getCoords(); }
 
  110    std::optional<Vector3f> 
findCoords()
 const { 
return getPickedPointPosition( *baseObject_, currentPos_ ); }
 
  113    std::optional<Vector3f> 
findNormal()
 const { 
return getPickedPointNormal( *baseObject_, currentPos_ ); }
 
  118        if ( 
const MeshTriPoint* triPoint = std::get_if<MeshTriPoint>( ¤tPos_ ) )
 
 
  136        canMove_ = std::move( canMove );
 
 
  141        startMove_ = std::move( startMove );
 
 
  146        onMove_ = std::move( onMove );
 
 
  151        endMove_ = std::move( endMove );
 
 
  160    [[nodiscard]] 
bool isOnMove()
 const { 
return isOnMove_; }
 
  172    MRVIEWER_API 
virtual bool onMouseDown_( 
MouseButton button, 
int modifier ) 
override;
 
  173    MRVIEWER_API 
virtual bool onMouseUp_( 
MouseButton button, 
int modifier ) 
override;
 
  174    MRVIEWER_API 
virtual bool onMouseMove_( 
int mouse_x, 
int mouse_y ) 
override;
 
  176    void updatePositionAndRadius_();
 
  181    bool autoHover_{ 
true };
 
  182    bool isOnMove_{ 
false };
 
  183    bool isHovered_{ 
false };
 
  184    MRVIEWER_API 
void preDraw_() 
override;
 
  188    std::shared_ptr<SphereObject> pickSphere_;
 
  189    std::shared_ptr<VisualObject> baseObject_;
 
  191    boost::signals2::scoped_connection onBaseObjectWorldXfChanged_;
 
  193    std::function<bool( SurfacePointWidget &, 
const PickedPoint& )> canMove_;
 
  194    std::function<void( SurfacePointWidget &, 
const PickedPoint& )> startMove_;
 
  195    std::function<void( SurfacePointWidget &, 
const PickedPoint& )> onMove_;
 
  196    std::function<void( SurfacePointWidget &, 
const PickedPoint& )> endMove_;
 
  199    void setPointRadius_();
 
  202    void setSphereColor_();
 
 
Faces
Definition MRObjectMeshHolder.h:14
 
Edges
Definition MRObjectMeshHolder.h:16
 
Definition MRCameraOrientationPlugin.h:8
 
MouseButton
Definition MRMouse.h:9
 
std::variant< std::monostate, MeshTriPoint, EdgePoint, VertId > PickedPoint
Definition MRPointOnObject.h:42
 
Definition MRMesh/MRColor.h:9
 
Definition MRMesh/MRMeshTriPoint.h:23
 
Definition MRViewerEventsListener.h:29
 
Definition MRPointOnObject.h:18