Inkscape
Vector Graphics Editor
Loading...
Searching...
No Matches
Inkscape::LivePathEffect::LPEFilletChamfer Class Reference

#include <lpe-fillet-chamfer.h>

Inheritance diagram for Inkscape::LivePathEffect::LPEFilletChamfer:
Inkscape::LivePathEffect::Effect

Public Member Functions

 LPEFilletChamfer (LivePathEffectObject *lpeobject)
 
void doBeforeEffect (SPLPEItem const *lpeItem) override
 Is performed each time before the effect is updated.
 
Geom::PathVector doEffect_path (Geom::PathVector const &path_in) override
 
void doOnApply (SPLPEItem const *lpeItem) override
 Is performed a single time when the effect is freshly applied to a path.
 
Gtk::Widget * newWidget () override
 This creates a managed widget.
 
void adjustForNewPath () override
 
Geom::Ray getRay (Geom::Point start, Geom::Point end, Geom::Curve *curve, bool reverse)
 
void addChamferSteps (Geom::Path &tmp_path, Geom::Path path_chamfer, Geom::Point end_arc_point, size_t steps)
 
void addCanvasIndicators (SPLPEItem const *, std::vector< Geom::PathVector > &hp_vec) override
 Add possible canvas indicators (i.e., helperpaths other than the original path) to hp_vec This function should be overwritten by derived effects if they want to provide their own helperpaths.
 
void updateNodeSatelliteType (NodeSatelliteType nodesatellitetype)
 
void setSelected (PathVectorNodeSatellites *_pathvector_nodesatellites)
 
void updateChamferSteps ()
 
void updateAmount ()
 
- Public Member Functions inherited from Inkscape::LivePathEffect::Effect
virtual ~Effect ()
 
 Effect (const Effect &)=delete
 
Effectoperator= (const Effect &)=delete
 
EffectType effectType () const
 
void doAfterEffect_impl (SPLPEItem const *lpeitem, Geom::PathVector *curve)
 
void doOnApply_impl (SPLPEItem const *lpeitem)
 
void doBeforeEffect_impl (SPLPEItem const *lpeitem)
 
void doOnOpen_impl ()
 Is performed on document open allow things like fix legacy LPE in a undo insensitive way.
 
void doOnRemove_impl (SPLPEItem const *lpeitem)
 
void transform_multiply_impl (Geom::Affine const &postmul, SPLPEItem *)
 
void doOnBeforeCommit ()
 
void read_from_SVG ()
 
void setCurrentZoom (double cZ)
 
void setSelectedNodePoints (std::vector< Geom::Point > sNP)
 
bool isNodePointSelected (Geom::Point const &nodePoint) const
 
bool isOnClipboard ()
 The lpe is on clipboard.
 
std::vector< SPLPEItem * > getCurrrentLPEItems () const
 
void update_satellites ()
 
virtual void doOnException (SPLPEItem const *lpeitem)
 
virtual void doOnVisibilityToggled (SPLPEItem const *lpeitem)
 
void writeParamsToSVG ()
 
std::vector< SPObject * > effect_get_satellites (bool force=true)
 
virtual void acceptParamPath (SPPath const *param_path)
 If the effect expects a path parameter (specified by a number of mouse clicks) before it is applied, this is the method that processes the resulting path.
 
int acceptsNumClicks () const
 
SPShapegetCurrentShape () const
 
void setCurrentShape (SPShape *shape)
 
virtual void processObjects (LPEAction lpe_action)
 
void makeUndoDone (Glib::ustring message)
 
bool isReady () const
 
void setReady (bool ready=true)
 
virtual void doEffect (Geom::PathVector &curve)
 
virtual void resetDefaults (SPItem const *item)
 Sets all parameters to their default values and writes them to SVG.
 
bool providesKnotholder () const
 
virtual LPEPathFlashType pathFlashType () const
 
void addHandles (KnotHolder *knotholder, SPItem *item)
 Add all registered LPE knotholder handles to the knotholder.
 
std::vector< Geom::PathVectorgetCanvasIndicators (SPLPEItem const *lpeitem)
 Return a vector of PathVectors which contain all canvas indicators for this effect.
 
void update_helperpath ()
 Call to a method on nodetool to update the helper path from the effect.
 
bool providesOwnFlashPaths () const
 
bool showOrigPath () const
 
Glib::ustring getName () const
 
Inkscape::XML::NodegetRepr ()
 
SPDocumentgetSPDoc ()
 
LivePathEffectObjectgetLPEObj ()
 
LivePathEffectObject const * getLPEObj () const
 
ParametergetParameter (const char *key)
 
void readallParameters (Inkscape::XML::Node const *repr)
 
void setParameter (const gchar *key, const gchar *new_value)
 
bool isVisible () const
 
void editNextParamOncanvas (SPItem *item, SPDesktop *desktop)
 
void setLPEAction (LPEAction lpe_action)
 
void setDefaultParameters ()
 Set this LPE defaults.
 
void resetDefaultParameters ()
 Reset this LPE defaults.
 
bool hasDefaultParameters ()
 Get LPE has defaults.
 
virtual bool getHolderRemove ()
 

Public Attributes

bool helperpath
 
NodeSatelliteArrayParam nodesatellites_param
 
- Public Attributes inherited from Inkscape::LivePathEffect::Effect
bool has_exception
 
bool apply_to_clippath_and_mask
 
bool keep_paths
 
bool is_load
 
bool is_applied
 
bool on_remove_all
 
bool refresh_widgets
 
bool finishiddle = false
 
bool satellitestoclipboard = false
 
bool helperLineSatellites = false
 
gint spinbutton_width_chars = 7
 
BoolParam is_visible
 
HiddenParam lpeversion
 
Geom::PathVector pathvector_before_effect
 
Geom::PathVector pathvector_after_effect
 
SPLPEItemsp_lpe_item = nullptr
 
SPShapecurrent_shape
 
std::vector< Parameter * > param_vector
 

Private Member Functions

 LPEFilletChamfer (const LPEFilletChamfer &)
 
LPEFilletChamferoperator= (const LPEFilletChamfer &)
 

Private Attributes

UnitParam unit
 
EnumParam< Filletmethodmethod
 
ScalarParam radius
 
ScalarParam chamfer_steps
 
BoolParam flexible
 
HiddenParam mode
 
BoolParam only_selected
 
BoolParam use_knot_distance
 
BoolParam hide_knots
 
BoolParam apply_no_radius
 
BoolParam apply_with_radius
 
PathVectorNodeSatellites_pathvector_nodesatellites
 
Geom::PathVector _hp
 
Glib::ustring previous_unit
 

Additional Inherited Members

- Static Public Member Functions inherited from Inkscape::LivePathEffect::Effect
static EffectNew (EffectType lpenr, LivePathEffectObject *lpeobj)
 
static void createAndApply (const char *name, SPDocument *doc, SPItem *item)
 
static void createAndApply (EffectType type, SPDocument *doc, SPItem *item)
 
static int acceptsNumClicks (EffectType type)
 
- Protected Member Functions inherited from Inkscape::LivePathEffect::Effect
 Effect (LivePathEffectObject *lpeobject)
 
virtual Geom::Piecewise< Geom::D2< Geom::SBasis > > doEffect_pwd2 (Geom::Piecewise< Geom::D2< Geom::SBasis > > const &pwd2_in)
 
void registerParameter (Parameter *param)
 
ParametergetNextOncanvasEditableParam ()
 
virtual void addKnotHolderEntities (KnotHolder *, SPItem *)
 
- Protected Attributes inherited from Inkscape::LivePathEffect::Effect
bool _adjust_path = false
 
bool _provides_knotholder_entities
 
bool _provides_path_adjustment = false
 
LPEAction _lpe_action = LPE_NONE
 
int oncanvasedit_it
 
bool show_orig_path
 
bool concatenate_before_pwd2
 
double current_zoom
 
std::vector< Geom::PointselectedNodesPoints
 
Inkscape::UI::Widget::Registry wr
 

Detailed Description

Definition at line 34 of file lpe-fillet-chamfer.h.

Constructor & Destructor Documentation

◆ LPEFilletChamfer() [1/2]

◆ LPEFilletChamfer() [2/2]

Inkscape::LivePathEffect::LPEFilletChamfer::LPEFilletChamfer ( const LPEFilletChamfer )
private

Member Function Documentation

◆ addCanvasIndicators()

void Inkscape::LivePathEffect::LPEFilletChamfer::addCanvasIndicators ( SPLPEItem const *  lpeitem,
std::vector< Geom::PathVector > &  hp_vec 
)
overridevirtual

Add possible canvas indicators (i.e., helperpaths other than the original path) to hp_vec This function should be overwritten by derived effects if they want to provide their own helperpaths.

Reimplemented from Inkscape::LivePathEffect::Effect.

Definition at line 383 of file lpe-fillet-chamfer.cpp.

References _hp.

◆ addChamferSteps()

void Inkscape::LivePathEffect::LPEFilletChamfer::addChamferSteps ( Geom::Path tmp_path,
Geom::Path  path_chamfer,
Geom::Point  end_arc_point,
size_t  steps 
)

◆ adjustForNewPath()

void Inkscape::LivePathEffect::LPEFilletChamfer::adjustForNewPath ( )
overridevirtual

◆ doBeforeEffect()

void Inkscape::LivePathEffect::LPEFilletChamfer::doBeforeEffect ( SPLPEItem const *  lpeitem)
overridevirtual

Is performed each time before the effect is updated.

Reimplemented from Inkscape::LivePathEffect::Effect.

Definition at line 295 of file lpe-fillet-chamfer.cpp.

References Inkscape::LivePathEffect::Effect::_adjust_path, _pathvector_nodesatellites, arcLengthAt(), CHAMFER, chamfer_steps, Inkscape::Util::Quantity::convert(), count_path_curves(), Inkscape::LivePathEffect::Effect::current_zoom, Inkscape::LivePathEffect::ArrayParam< StorageType >::data(), doOnApply(), Inkscape::LivePathEffect::Effect::effectType(), Geom::PathVector::empty(), FILLET, flexible, Inkscape::LivePathEffect::UnitParam::get_abbreviation(), SPDocument::getDocumentScale(), Inkscape::LivePathEffect::Effect::getSPDoc(), hide_knots, Geom::Curve::initialPoint(), INVALID_SATELLITE, INVERSE_CHAMFER, INVERSE_FILLET, Inkscape::LivePathEffect::Effect::is_load, Inkscape::LivePathEffect::Effect::isNodePointSelected(), mode, nodesatellites_param, only_selected, Inkscape::LivePathEffect::HiddenParam::param_getSVGValue(), pathv_to_linear_and_cubic_beziers(), Inkscape::LivePathEffect::Effect::pathvector_before_effect, radius, PathVectorNodeSatellites::recalculateForNewPathVector(), Inkscape::LivePathEffect::NodeSatelliteArrayParam::reloadKnots(), NodeSatellite::setAmount(), Inkscape::LivePathEffect::NodeSatelliteArrayParam::setCurrentZoom(), Inkscape::LivePathEffect::NodeSatelliteArrayParam::setEffectType(), NodeSatellite::setHasMirror(), NodeSatellite::setHidden(), NodeSatellite::setIsTime(), PathVectorNodeSatellites::setNodeSatellites(), PathVectorNodeSatellites::setPathVector(), Inkscape::LivePathEffect::NodeSatelliteArrayParam::setPathVectorNodeSatellites(), NodeSatellite::setSteps(), Inkscape::LivePathEffect::NodeSatelliteArrayParam::setUseDistance(), Geom::PathVector::size(), Inkscape::size, timeAtArcLength(), unit, use_knot_distance, and Geom::X.

◆ doEffect_path()

◆ doOnApply()

◆ getRay()

Geom::Ray Inkscape::LivePathEffect::LPEFilletChamfer::getRay ( Geom::Point  start,
Geom::Point  end,
Geom::Curve curve,
bool  reverse 
)

◆ newWidget()

Gtk::Widget * Inkscape::LivePathEffect::LPEFilletChamfer::newWidget ( )
overridevirtual

This creates a managed widget.

Deletion should be done by the eventual parent, or otherwise the caller.

Reimplemented from Inkscape::LivePathEffect::Effect.

Definition at line 158 of file lpe-fillet-chamfer.cpp.

References CHAMFER, FILLET, INVERSE_CHAMFER, INVERSE_FILLET, Inkscape::UI::pack_start(), Inkscape::LivePathEffect::Effect::param_vector, Inkscape::UI::Widget::Scalar::signal_value_changed(), updateAmount(), updateChamferSteps(), and updateNodeSatelliteType().

◆ operator=()

LPEFilletChamfer & Inkscape::LivePathEffect::LPEFilletChamfer::operator= ( const LPEFilletChamfer )
private

◆ setSelected()

◆ updateAmount()

◆ updateChamferSteps()

◆ updateNodeSatelliteType()

Member Data Documentation

◆ _hp

Geom::PathVector Inkscape::LivePathEffect::LPEFilletChamfer::_hp
private

Definition at line 66 of file lpe-fillet-chamfer.h.

Referenced by addCanvasIndicators(), and doEffect_path().

◆ _pathvector_nodesatellites

PathVectorNodeSatellites* Inkscape::LivePathEffect::LPEFilletChamfer::_pathvector_nodesatellites
private

◆ apply_no_radius

BoolParam Inkscape::LivePathEffect::LPEFilletChamfer::apply_no_radius
private

◆ apply_with_radius

BoolParam Inkscape::LivePathEffect::LPEFilletChamfer::apply_with_radius
private

◆ chamfer_steps

ScalarParam Inkscape::LivePathEffect::LPEFilletChamfer::chamfer_steps
private

◆ flexible

BoolParam Inkscape::LivePathEffect::LPEFilletChamfer::flexible
private

Definition at line 58 of file lpe-fillet-chamfer.h.

Referenced by doBeforeEffect(), doOnApply(), LPEFilletChamfer(), and updateAmount().

◆ helperpath

◆ hide_knots

BoolParam Inkscape::LivePathEffect::LPEFilletChamfer::hide_knots
private

Definition at line 62 of file lpe-fillet-chamfer.h.

Referenced by doBeforeEffect(), doOnApply(), and LPEFilletChamfer().

◆ method

EnumParam<Filletmethod> Inkscape::LivePathEffect::LPEFilletChamfer::method
private

Definition at line 55 of file lpe-fillet-chamfer.h.

Referenced by doEffect_path(), and LPEFilletChamfer().

◆ mode

HiddenParam Inkscape::LivePathEffect::LPEFilletChamfer::mode
private

◆ nodesatellites_param

NodeSatelliteArrayParam Inkscape::LivePathEffect::LPEFilletChamfer::nodesatellites_param

◆ only_selected

BoolParam Inkscape::LivePathEffect::LPEFilletChamfer::only_selected
private

◆ previous_unit

Glib::ustring Inkscape::LivePathEffect::LPEFilletChamfer::previous_unit
private

Definition at line 67 of file lpe-fillet-chamfer.h.

Referenced by LPEFilletChamfer().

◆ radius

ScalarParam Inkscape::LivePathEffect::LPEFilletChamfer::radius
private

◆ unit

UnitParam Inkscape::LivePathEffect::LPEFilletChamfer::unit
private

Definition at line 54 of file lpe-fillet-chamfer.h.

Referenced by doBeforeEffect(), doOnApply(), LPEFilletChamfer(), and updateAmount().

◆ use_knot_distance

BoolParam Inkscape::LivePathEffect::LPEFilletChamfer::use_knot_distance
private

Definition at line 61 of file lpe-fillet-chamfer.h.

Referenced by doBeforeEffect(), LPEFilletChamfer(), and updateAmount().


The documentation for this class was generated from the following files: