SketcherGui::DrawSketchHandler Class Referenceabstract

Handler to create new sketch geometry This class has to be reimplemented to create geometry in the sketcher while its in editing. More...

#include <DrawSketchHandler.h>

Public Member Functions

virtual void activated (ViewProviderSketch *)
 
void createAutoConstraints (const std::vector< AutoConstraint > &autoConstrs, int geoId, Sketcher::PointPos pointPos=Sketcher::none, bool createowncommand=true)
 
virtual void deactivated (ViewProviderSketch *)
 
 DrawSketchHandler ()
 
int getHighestCurveIndex (void)
 
int getHighestVertexIndex (void)
 
virtual void mouseMove (Base::Vector2d onSketchPos)=0
 
virtual bool onSelectionChanged (const Gui::SelectionChanges &)
 
virtual bool pressButton (Base::Vector2d onSketchPos)=0
 
virtual void quit (void)
 
virtual void registerPressedKey (bool, int)
 
virtual bool releaseButton (Base::Vector2d onSketchPos)=0
 
void renderSuggestConstraintsCursor (std::vector< AutoConstraint > &suggestedConstraints)
 
void resetPositionText (void)
 
int seekAutoConstraint (std::vector< AutoConstraint > &suggestedConstraints, const Base::Vector2d &Pos, const Base::Vector2d &Dir, AutoConstraint::TargetType type=AutoConstraint::VERTEX)
 
void setPositionText (const Base::Vector2d &Pos)
 
void setPositionText (const Base::Vector2d &Pos, const SbString &text)
 
virtual ~DrawSketchHandler ()
 

Protected Member Functions

void applyCursor (QCursor &newCursor)
 
void applyCursor (void)
 
void setCrosshairColor ()
 
void setCursor (const QPixmap &p, int x, int y)
 
void unsetCursor (void)
 

Protected Attributes

QCursor actCursor
 
QCursor oldCursor
 
ViewProviderSketchsketchgui
 

Friends

class ViewProviderSketch
 

Detailed Description

Handler to create new sketch geometry This class has to be reimplemented to create geometry in the sketcher while its in editing.

Constructor & Destructor Documentation

◆ DrawSketchHandler()

DrawSketchHandler::DrawSketchHandler ( )

◆ ~DrawSketchHandler()

DrawSketchHandler::~DrawSketchHandler ( )
virtual

Member Function Documentation

◆ activated()

◆ applyCursor() [1/2]

void DrawSketchHandler::applyCursor ( QCursor &  newCursor)
protected

◆ applyCursor() [2/2]

void DrawSketchHandler::applyCursor ( void  )
protected

References actCursor.

Referenced by DrawSketchHandlerBox::mouseMove(), DrawSketchHandlerLineSet::mouseMove(), DrawSketchHandlerCopy::mouseMove(), DrawSketchHandlerArc::mouseMove(), DrawSketchHandlerRectangularArray::mouseMove(), DrawSketchHandler3PointArc::mouseMove(), DrawSketchHandlerCircle::mouseMove(), DrawSketchHandlerEllipse::mouseMove(), DrawSketchHandlerArcOfEllipse::mouseMove(), DrawSketchHandlerArcOfHyperbola::mouseMove(), DrawSketchHandlerArcOfParabola::mouseMove(), DrawSketchHandlerBSpline::mouseMove(), DrawSketchHandler3PointCircle::mouseMove(), DrawSketchHandlerPoint::mouseMove(), DrawSketchHandlerExternal::mouseMove(), DrawSketchHandlerCarbonCopy::mouseMove(), DrawSketchHandlerSlot::mouseMove(), DrawSketchHandlerRegularPolygon::mouseMove(), DrawSketchHandlerLineSet::pressButton(), DrawSketchHandlerArc::pressButton(), DrawSketchHandler3PointArc::pressButton(), DrawSketchHandler3PointCircle::pressButton(), DrawSketchHandlerLineSet::quit(), DrawSketchHandlerBSpline::quit(), DrawSketchHandlerBox::releaseButton(), DrawSketchHandlerLineSet::releaseButton(), DrawSketchHandlerArc::releaseButton(), DrawSketchHandler3PointArc::releaseButton(), DrawSketchHandlerCircle::releaseButton(), DrawSketchHandlerArcOfEllipse::releaseButton(), DrawSketchHandlerArcOfHyperbola::releaseButton(), DrawSketchHandlerArcOfParabola::releaseButton(), DrawSketchHandlerBSpline::releaseButton(), DrawSketchHandler3PointCircle::releaseButton(), DrawSketchHandlerPoint::releaseButton(), DrawSketchHandlerExtend::releaseButton(), DrawSketchHandlerSlot::releaseButton(), DrawSketchHandlerRegularPolygon::releaseButton(), and renderSuggestConstraintsCursor().

◆ createAutoConstraints()

◆ deactivated()

virtual void SketcherGui::DrawSketchHandler::deactivated ( ViewProviderSketch )
virtual

◆ getHighestCurveIndex()

◆ getHighestVertexIndex()

int DrawSketchHandler::getHighestVertexIndex ( void  )

◆ mouseMove()

◆ onSelectionChanged()

virtual bool SketcherGui::DrawSketchHandler::onSelectionChanged ( const Gui::SelectionChanges )
virtual

◆ pressButton()

◆ quit()

◆ registerPressedKey()

virtual void SketcherGui::DrawSketchHandler::registerPressedKey ( bool  ,
int   
)
virtual

Reimplemented in DrawSketchHandlerLineSet.

◆ releaseButton()

◆ renderSuggestConstraintsCursor()

◆ resetPositionText()

◆ seekAutoConstraint()

int DrawSketchHandler::seekAutoConstraint ( std::vector< AutoConstraint > &  suggestedConstraints,
const Base::Vector2d Pos,
const Base::Vector2d Dir,
AutoConstraint::TargetType  type = AutoConstraint::VERTEX 
)

References SketcherGui::ViewProviderSketch::Autoconstraints, Sketcher::Coincident, SketcherGui::AutoConstraint::CURVE, Base::fmod(), SketcherGui::AutoConstraint::GeoId, Part::GeomArcOfConic::getCenter(), Base::Persistence::getClassTypeId(), Sketcher::SketchObject::getCompleteGeometry(), Part::GeomLineSegment::getEndPoint(), Sketcher::SketchObject::getGeometry(), Sketcher::SketchObject::getGeoVertexIndex(), getHighestCurveIndex(), Part::GeomArcOfEllipse::getMajorAxisDir(), Part::GeomArcOfEllipse::getMajorRadius(), Part::GeomArcOfEllipse::getMinorRadius(), SketcherGui::ViewProviderSketch::getPreselectCross(), SketcherGui::ViewProviderSketch::getPreselectCurve(), SketcherGui::ViewProviderSketch::getPreselectPoint(), Part::GeomArcOfEllipse::getRange(), SketcherGui::ViewProviderSketch::getScaleFactor(), SketcherGui::ViewProviderSketch::getSketchObject(), Part::GeomLineSegment::getStartPoint(), Base::Persistence::getTypeId(), App::PropertyBool::getValue(), Sketcher::GeoEnum::HAxis, Sketcher::Horizontal, Base::Vector2d::Length(), Base::Vector3< _Precision >::Length(), Sketcher::none, Base::Vector3< _Precision >::Normalize(), Sketcher::PointOnObject, SketcherGui::AutoConstraint::PosId, Base::Vector3< _Precision >::ProjectToLine(), Sketcher::GeoEnum::RtPnt, sketchgui, Sketcher::start, Sketcher::Tangent, SketcherGui::AutoConstraint::Type, Sketcher::GeoEnum::VAxis, SketcherGui::AutoConstraint::VERTEX, Sketcher::Vertical, Base::Vector2d::x, Base::Vector3< _Precision >::x, Base::Vector2d::y, and Base::Vector3< _Precision >::y.

Referenced by DrawSketchHandlerBox::mouseMove(), DrawSketchHandlerLineSet::mouseMove(), DrawSketchHandlerCopy::mouseMove(), DrawSketchHandlerArc::mouseMove(), DrawSketchHandlerRectangularArray::mouseMove(), DrawSketchHandler3PointArc::mouseMove(), DrawSketchHandlerCircle::mouseMove(), DrawSketchHandlerEllipse::mouseMove(), DrawSketchHandlerArcOfEllipse::mouseMove(), DrawSketchHandlerArcOfHyperbola::mouseMove(), DrawSketchHandlerArcOfParabola::mouseMove(), DrawSketchHandlerBSpline::mouseMove(), DrawSketchHandler3PointCircle::mouseMove(), DrawSketchHandlerPoint::mouseMove(), DrawSketchHandlerExtend::mouseMove(), DrawSketchHandlerSlot::mouseMove(), and DrawSketchHandlerRegularPolygon::mouseMove().

◆ setCrosshairColor()

◆ setCursor()

◆ setPositionText() [1/2]

void DrawSketchHandler::setPositionText ( const Base::Vector2d Pos)

◆ setPositionText() [2/2]

◆ unsetCursor()

Friends And Related Function Documentation

◆ ViewProviderSketch

friend class ViewProviderSketch
friend

Member Data Documentation

◆ actCursor

QCursor SketcherGui::DrawSketchHandler::actCursor
protected

◆ oldCursor

QCursor SketcherGui::DrawSketchHandler::oldCursor
protected

Referenced by setCursor(), and unsetCursor().

◆ sketchgui

ViewProviderSketch* SketcherGui::DrawSketchHandler::sketchgui
protected

Referenced by DrawSketchHandlerCopy::activated(), DrawSketchHandlerRectangularArray::activated(), DrawSketchHandlerCoincident::activated(), DrawSketchHandlerFillet::activated(), DrawSketchHandlerTrimming::activated(), DrawSketchHandlerExtend::activated(), DrawSketchHandlerExternal::activated(), DrawSketchHandlerCarbonCopy::activated(), SketcherGui::ViewProviderSketch::activateHandler(), createAutoConstraints(), DrawSketchHandlerExternal::deactivated(), DrawSketchHandlerCarbonCopy::deactivated(), getHighestCurveIndex(), getHighestVertexIndex(), DrawSketchHandlerBox::mouseMove(), DrawSketchHandlerLineSet::mouseMove(), DrawSketchHandlerCopy::mouseMove(), DrawSketchHandlerArc::mouseMove(), DrawSketchHandlerRectangularArray::mouseMove(), DrawSketchHandler3PointArc::mouseMove(), DrawSketchHandlerCircle::mouseMove(), DrawSketchHandlerEllipse::mouseMove(), DrawSketchHandlerArcOfEllipse::mouseMove(), DrawSketchHandlerArcOfHyperbola::mouseMove(), DrawSketchHandlerArcOfParabola::mouseMove(), DrawSketchHandlerBSpline::mouseMove(), DrawSketchHandler3PointCircle::mouseMove(), DrawSketchHandlerExtend::mouseMove(), DrawSketchHandlerSlot::mouseMove(), DrawSketchHandlerRegularPolygon::mouseMove(), DrawSketchHandlerExternal::onSelectionChanged(), DrawSketchHandlerCarbonCopy::onSelectionChanged(), DrawSketchHandlerBox::pressButton(), DrawSketchHandlerLineSet::pressButton(), DrawSketchHandlerCopy::pressButton(), DrawSketchHandlerArc::pressButton(), DrawSketchHandlerRectangularArray::pressButton(), DrawSketchHandler3PointArc::pressButton(), DrawSketchHandlerBSpline::pressButton(), DrawSketchHandler3PointCircle::pressButton(), quit(), DrawSketchHandlerLineSet::quit(), DrawSketchHandlerBSpline::quit(), DrawSketchHandlerLineSet::registerPressedKey(), DrawSketchHandlerBox::releaseButton(), DrawSketchHandlerLineSet::releaseButton(), DrawSketchHandlerCopy::releaseButton(), DrawSketchHandlerArc::releaseButton(), DrawSketchHandlerRectangularArray::releaseButton(), DrawSketchHandler3PointArc::releaseButton(), DrawSketchHandlerCoincident::releaseButton(), DrawSketchHandlerCircle::releaseButton(), DrawSketchHandlerArcOfEllipse::releaseButton(), DrawSketchHandlerArcOfHyperbola::releaseButton(), DrawSketchHandlerArcOfParabola::releaseButton(), DrawSketchHandlerBSpline::releaseButton(), DrawSketchHandler3PointCircle::releaseButton(), DrawSketchHandlerPoint::releaseButton(), DrawSketchHandlerFillet::releaseButton(), DrawSketchHandlerTrimming::releaseButton(), DrawSketchHandlerExtend::releaseButton(), DrawSketchHandlerSlot::releaseButton(), DrawSketchHandlerRegularPolygon::releaseButton(), resetPositionText(), seekAutoConstraint(), setPositionText(), and DrawSketchHandlerLineSet::updateTransitionData().


The documentation for this class was generated from the following files:
  • src/Mod/Sketcher/Gui/DrawSketchHandler.h
  • src/Mod/Sketcher/Gui/CommandCreateGeo.cpp
  • src/Mod/Sketcher/Gui/DrawSketchHandler.cpp