28 resolution_x(-1), resolution_y(-1),
29 paraller_axis(false), automatic_resolution(true)
33 filterUnits(filterUnits), primitiveUnits(primitiveUnits),
34 resolution_x(-1), resolution_y(-1),
35 paraller_axis(false), automatic_resolution(true)
99 g_warning(
"Error in Inkscape::Filters::FilterUnits::get_matrix_units2pb: unrecognized unit type (%d)", units);
130 double scale_x = 1.0 / (max[X] - min[X]);
131 double scale_y = 1.0 / (max[Y] - min[Y]);
135 min[X] * scale_x, min[Y] * scale_y);
139 g_warning(
"Error in Inkscape::Filters::FilterUnits::get_matrix_user2units: unrecognized unit type (%d)", units);
3x3 matrix representing an affine transformation.
Affine inverse() const
Compute the inverse matrix.
Axis aligned, non-empty, generic rectangle.
Axis-aligned rectangle that can be empty.
Two-dimensional point that doubles as a vector.
Axis aligned, non-empty rectangle.
IntRect roundOutwards() const
Return the smallest integer rectangle which contains this one.
SPFilterUnits primitiveUnits
Geom::Affine get_matrix_user2primitiveunits() const
Gets the user coordinates to primitiveUnits transformation matrix.
Geom::OptRect filter_area
void set_automatic_resolution(bool const automatic)
Sets, if filter resolution is automatic.
bool automatic_resolution
Geom::Affine get_matrix_user2filterunits() const
Gets the user coordinates to filterUnits transformation matrix.
Geom::Affine get_matrix_primitiveunits2pb() const
Gets the primitiveUnits to pixblock coordinates transformation matrix.
Geom::Affine get_matrix_display2pb() const
Gets the display coordinates to pixblock coordinates transformation matrix.
Geom::Affine get_matrix_units2pb(SPFilterUnits units) const
Geom::Affine get_matrix_pb2display() const
Gets the pixblock coordinates to display coordinates transformation matrix.
void set_paraller(bool const paraller)
Sets, if x and y axis in pixblock coordinates should be paraller to x and y of user coordinates.
FilterUnits & operator=(FilterUnits const &other)
void set_filter_area(Geom::OptRect const &area)
Sets the filter effects area in user coordinates.
void set_item_bbox(Geom::OptRect const &bbox)
Sets the item bounding box in user coordinates.
SPFilterUnits filterUnits
void set_ctm(Geom::Affine const &ctm)
Sets the current transformation matrix, i.e.
Geom::Affine get_matrix_user2pb() const
Gets the user coordinates to pixblock coordinates transformation matrix.
Geom::IntRect get_pixblock_filterarea_paraller() const
Returns the filter area in pixblock coordinates.
void set_resolution(double const x_res, double const y_res)
Sets the resolution, the filter should be rendered with.
Geom::Affine get_matrix_filterunits2pb() const
Gets the filterUnits to pixblock coordinates transformation matrix.
Geom::Affine get_matrix_user2units(SPFilterUnits units) const
Affine identity()
Create an identity matrix.
Helper class to stream background task notifications as a series of messages.
TODO: insert short description here.
@ SP_FILTER_UNITS_USERSPACEONUSE
@ SP_FILTER_UNITS_OBJECTBOUNDINGBOX