diff options
Diffstat (limited to 'src/helper/geom.cpp')
| -rw-r--r-- | src/helper/geom.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/src/helper/geom.cpp b/src/helper/geom.cpp index dcb7b3eb4..ac8930412 100644 --- a/src/helper/geom.cpp +++ b/src/helper/geom.cpp @@ -509,23 +509,17 @@ pathv_to_linear_and_cubic_beziers( Geom::PathVector const &pathv ) output.back().close( pit->closed() ); for (Geom::Path::const_iterator cit = pit->begin(); cit != pit->end_open(); ++cit) { - if( dynamic_cast<Geom::LineSegment const*>(&*cit) || + if( dynamic_cast<Geom::CubicBezier const*>(&*cit) || + dynamic_cast<Geom::LineSegment const*>(&*cit) || dynamic_cast<Geom::HLineSegment const*>(&*cit) || dynamic_cast<Geom::VLineSegment const*>(&*cit) ) { output.back().append(*cit); } - else if(Geom::CubicBezier const *cubic_bezier = dynamic_cast<Geom::CubicBezier const*>(&*cit)) { - (void)cubic_bezier; - output.back().append(*cit); - } else { // convert all other curve types to cubicbeziers Geom::Path cubicbezier_path = Geom::cubicbezierpath_from_sbasis(cit->toSBasis(), 0.1); - - for(Geom::Path::iterator iter = cubicbezier_path.begin(); iter != cubicbezier_path.end(); ++iter) { - output.back().append(*iter); - } + output.back().append(cubicbezier_path); } } } |
