diff options
| author | Johan B. C. Engelen <jbc.engelen@swissonline.ch> | 2011-02-04 22:29:16 +0000 |
|---|---|---|
| committer | Johan Engelen <goejendaagh@zonnet.nl> | 2011-02-04 22:29:16 +0000 |
| commit | 603193a32cdf3f3ae12a227fce8eec4d0b86f981 (patch) | |
| tree | c8839f594e3214d8d18369e1d53e0dd70de176be /src/seltrans.cpp | |
| parent | Fix a snap bug in which the snapped to the help path instead of the real path (diff) | |
| download | inkscape-603193a32cdf3f3ae12a227fce8eec4d0b86f981.tar.gz inkscape-603193a32cdf3f3ae12a227fce8eec4d0b86f981.zip | |
temporary work around 2geom matrix bug to make inkscape more usable
(bzr r10033)
Diffstat (limited to 'src/seltrans.cpp')
| -rw-r--r-- | src/seltrans.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/seltrans.cpp b/src/seltrans.cpp index 848c0836a..049899e7a 100644 --- a/src/seltrans.cpp +++ b/src/seltrans.cpp @@ -424,7 +424,7 @@ void Inkscape::SelTrans::transform(Geom::Affine const &rel_affine, Geom::Point c g_return_if_fail(_grabbed); g_return_if_fail(!_empty); - Geom::Affine const affine( Geom::Translate(-norm) * rel_affine * Geom::Translate(norm) ); + Geom::Affine const affine( (Geom::Affine)Geom::Translate(-norm) * rel_affine * (Geom::Affine)Geom::Translate(norm) ); if (_show == SHOW_CONTENT) { // update the content @@ -1310,7 +1310,7 @@ gboolean Inkscape::SelTrans::rotateRequest(Geom::Point &pt, guint state) _relative_affine = r2 * r1.inverse(); // Update the handle position - pt = _point * Geom::Translate(-_origin) * _relative_affine * Geom::Translate(_origin); + pt = _point * (Geom::Affine)Geom::Translate(-_origin) * _relative_affine * (Geom::Affine)Geom::Translate(_origin); // Update the status text double degrees = mod360symm(Geom::rad_to_deg(radians)); @@ -1591,7 +1591,7 @@ Geom::Scale Inkscape::calcScaleFactors(Geom::Point const &initial_point, Geom::P // Only for scaling/stretching Geom::Point Inkscape::SelTrans::_calcAbsAffineDefault(Geom::Scale const default_scale) { - Geom::Affine abs_affine = Geom::Translate(-_origin) * Geom::Affine(default_scale) * Geom::Translate(_origin); + Geom::Affine abs_affine = (Geom::Affine)Geom::Translate(-_origin) * Geom::Affine(default_scale) * (Geom::Affine)Geom::Translate(_origin); Geom::Point new_bbox_min = _approximate_bbox->min() * abs_affine; Geom::Point new_bbox_max = _approximate_bbox->max() * abs_affine; @@ -1615,7 +1615,7 @@ Geom::Point Inkscape::SelTrans::_calcAbsAffineDefault(Geom::Scale const default_ Geom::Point Inkscape::SelTrans::_calcAbsAffineGeom(Geom::Scale const geom_scale) { _relative_affine = Geom::Affine(geom_scale); - _absolute_affine = Geom::Translate(-_origin_for_specpoints) * _relative_affine * Geom::Translate(_origin_for_specpoints); + _absolute_affine = (Geom::Affine)Geom::Translate(-_origin_for_specpoints) * _relative_affine * (Geom::Affine)Geom::Translate(_origin_for_specpoints); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); bool const transform_stroke = prefs->getBool("/options/transform/stroke", true); |
