15#ifndef SEEN_PURE_TRANSFORM_H
16#define SEEN_PURE_TRANSFORM_H
77 _vector[direction] = displacement;
gfloat magnitude(const vector_type)
Axis-aligned rectangle that can be empty.
Two-dimensional point that doubles as a vector.
SnappedPoint snap(::SnapManager *sm, SnapCandidatePoint const &p, Geom::Point pt_orig, Geom::OptRect const &bbox_to_snap) const override
Geom::Point getTransformedPoint(SnapCandidatePoint const &p) const override
~PureRotateConstrained() override=default
void storeTransform(SnapCandidatePoint const &original_point, SnappedPoint &snapped_point) override
PureRotateConstrained(double angle, Geom::Point origin)
PureScaleConstrained(Geom::Scale scale, Geom::Point origin)
SnappedPoint snap(::SnapManager *sm, SnapCandidatePoint const &p, Geom::Point pt_orig, Geom::OptRect const &bbox_to_snap) const override
~PureScaleConstrained() override=default
SnappedPoint snap(::SnapManager *sm, SnapCandidatePoint const &p, Geom::Point pt_orig, Geom::OptRect const &bbox_to_snap) const override
Geom::Scale getScaleSnapped()
PureScale(Geom::Scale scale, Geom::Point origin, bool uniform)
Geom::Scale _scale_snapped
~PureScale() override=default
void storeTransform(SnapCandidatePoint const &original_point, SnappedPoint &snapped_point) override
Geom::Point getTransformedPoint(SnapCandidatePoint const &p) const override
Geom::Coord getSkewSnapped()
void storeTransform(SnapCandidatePoint const &original_point, SnappedPoint &snapped_point) override
PureSkewConstrained(Geom::Coord skew, Geom::Coord scale, Geom::Point origin, Geom::Dim2 direction)
SnappedPoint snap(::SnapManager *sm, SnapCandidatePoint const &p, Geom::Point pt_orig, Geom::OptRect const &bbox_to_snap) const override
Geom::Coord _skew_snapped
Geom::Point getTransformedPoint(SnapCandidatePoint const &p) const override
~PureSkewConstrained() override=default
Geom::Coord getMagnitude()
Geom::Scale getStretchSnapped()
Geom::Point getTransformedPoint(SnapCandidatePoint const &p) const override
PureStretchConstrained(Geom::Coord magnitude, Geom::Point origin, Geom::Dim2 direction, bool uniform)
SnappedPoint snap(::SnapManager *sm, SnapCandidatePoint const &p, Geom::Point pt_orig, Geom::OptRect const &bbox_to_snap) const override
void storeTransform(SnapCandidatePoint const &original_point, SnappedPoint &snapped_point) override
~PureStretchConstrained() override=default
Geom::Scale _stretch_snapped
Geom::Coord getMagnitudeSnapped()
SnappedPoint snap(::SnapManager *sm, SnapCandidatePoint const &p, Geom::Point pt_orig, Geom::OptRect const &bbox_to_snap) const override
PureTranslateConstrained(Geom::Coord displacement, Geom::Dim2 direction)
~PureTranslateConstrained() override=default
void storeTransform(SnapCandidatePoint const &original_point, SnappedPoint &snapped_point) override
SnappedPoint snap(::SnapManager *sm, SnapCandidatePoint const &p, Geom::Point pt_orig, Geom::OptRect const &bbox_to_snap) const override
PureTranslate(Geom::Point vector=Geom::Point())
Geom::Point _vector_snapped
Geom::Point getTransformedPoint(SnapCandidatePoint const &p) const override
Geom::Point getTranslationSnapped()
~PureTranslate() override=default
Class to store data for points which are snap candidates, either as a source or as a target.
Class describing the result of an attempt to snap.
Class to coordinate snapping operations.
Dim2
2D axis enumeration (X or Y).
double Coord
Floating point type used to store coordinates.
Various utility functions.
Helper class to stream background task notifications as a series of messages.