diff options
| author | Diederik van Lierop <mail@diedenrezi.nl> | 2008-08-05 14:33:46 +0000 |
|---|---|---|
| committer | dvlierop2 <dvlierop2@users.sourceforge.net> | 2008-08-05 14:33:46 +0000 |
| commit | 0651eb9e41d0e6680126456d6b7b665154ab7660 (patch) | |
| tree | 794a0b30225009643ef882d51010bce5c8ae9cf8 /src/extension/internal | |
| parent | more mockup on svgfonts dialog (diff) | |
| download | inkscape-0651eb9e41d0e6680126456d6b7b665154ab7660.tar.gz inkscape-0651eb9e41d0e6680126456d6b7b665154ab7660.zip | |
Use is_straight_curve() instead of three separate dynamic casts
(bzr r6564)
Diffstat (limited to 'src/extension/internal')
| -rw-r--r-- | src/extension/internal/javafx-out.cpp | 5 | ||||
| -rw-r--r-- | src/extension/internal/latex-pstricks.cpp | 5 | ||||
| -rw-r--r-- | src/extension/internal/odf.cpp | 5 | ||||
| -rw-r--r-- | src/extension/internal/pov-out.cpp | 5 | ||||
| -rw-r--r-- | src/extension/internal/ps.cpp | 5 |
5 files changed, 10 insertions, 15 deletions
diff --git a/src/extension/internal/javafx-out.cpp b/src/extension/internal/javafx-out.cpp index 2e0f2d59f..29c2bdab0 100644 --- a/src/extension/internal/javafx-out.cpp +++ b/src/extension/internal/javafx-out.cpp @@ -30,6 +30,7 @@ #include <2geom/bezier-curve.h>
#include <2geom/hvlinesegment.h>
#include "helper/geom.h"
+#include "helper/geom-curves.h"
#include <io/sys.h>
@@ -473,9 +474,7 @@ bool JavaFXOutput::doCurve(SPItem *item, const String &id) for (Geom::Path::const_iterator cit = pit->begin(); cit != pit->end_closed(); ++cit)
{
//### LINE
- if( dynamic_cast<Geom::LineSegment const *> (&*cit) ||
- dynamic_cast<Geom::HLineSegment const *>(&*cit) ||
- dynamic_cast<Geom::VLineSegment const *>(&*cit) )
+ if( is_straight_curve(*cit) )
{
Geom::Point p = cit->finalPoint();
out(" LineTo {\n");
diff --git a/src/extension/internal/latex-pstricks.cpp b/src/extension/internal/latex-pstricks.cpp index 9909d7436..c1dcec361 100644 --- a/src/extension/internal/latex-pstricks.cpp +++ b/src/extension/internal/latex-pstricks.cpp @@ -31,6 +31,7 @@ #include <2geom/sbasis-to-bezier.h> #include <2geom/bezier-curve.h> #include <2geom/hvlinesegment.h> +#include "helper/geom-curves.h" #include "sp-item.h" @@ -305,9 +306,7 @@ PrintLatex::print_2geomcurve(SVGOStringStream &os, Geom::Curve const & c ) using Geom::X; using Geom::Y; - if( dynamic_cast<Geom::LineSegment const*>(&c) || - dynamic_cast<Geom::HLineSegment const*>(&c) || - dynamic_cast<Geom::VLineSegment const*>(&c) ) + if( is_straight_curve(c) ) { os << "\\lineto(" << c.finalPoint()[X] << "," << c.finalPoint()[Y] << ")\n"; } diff --git a/src/extension/internal/odf.cpp b/src/extension/internal/odf.cpp index 2a71eabca..02c3626bf 100644 --- a/src/extension/internal/odf.cpp +++ b/src/extension/internal/odf.cpp @@ -56,6 +56,7 @@ #include <2geom/hvlinesegment.h> #include <2geom/transforms.h> #include <helper/geom.h> +#include "helper/geom-curves.h" #include "extension/system.h" #include "xml/repr.h" @@ -1504,9 +1505,7 @@ writePath(Writer &outs, Geom::PathVector const &pathv, for (Geom::Path::const_iterator cit = pit->begin(); cit != pit->end_closed(); ++cit) { - if( dynamic_cast<Geom::LineSegment const *> (&*cit) || - dynamic_cast<Geom::HLineSegment const *>(&*cit) || - dynamic_cast<Geom::VLineSegment const *>(&*cit) ) + if( is_straight_curve(*cit) ) { double destx = cit->finalPoint()[X]; double desty = cit->finalPoint()[Y]; diff --git a/src/extension/internal/pov-out.cpp b/src/extension/internal/pov-out.cpp index 01b8e64b5..ea746eae7 100644 --- a/src/extension/internal/pov-out.cpp +++ b/src/extension/internal/pov-out.cpp @@ -32,6 +32,7 @@ #include <2geom/bezier-curve.h> #include <2geom/hvlinesegment.h> #include "helper/geom.h" +#include "helper/geom-curves.h" #include <io/sys.h> #include <string> @@ -352,9 +353,7 @@ bool PovOutput::doCurve(SPItem *item, const String &id) for (Geom::Path::const_iterator cit = pit->begin(); cit != pit->end_closed(); ++cit) { - if( dynamic_cast<Geom::LineSegment const *> (&*cit) || - dynamic_cast<Geom::HLineSegment const *>(&*cit) || - dynamic_cast<Geom::VLineSegment const *>(&*cit) ) + if( is_straight_curve(*cit) ) { Geom::Point p0 = cit->initialPoint(); Geom::Point p1 = cit->finalPoint(); diff --git a/src/extension/internal/ps.cpp b/src/extension/internal/ps.cpp index cad576975..6f1405de2 100644 --- a/src/extension/internal/ps.cpp +++ b/src/extension/internal/ps.cpp @@ -78,6 +78,7 @@ #include <2geom/sbasis-to-bezier.h> #include <2geom/bezier-curve.h> #include <2geom/hvlinesegment.h> +#include "helper/geom-curves.h" /* using std::atof; @@ -1465,9 +1466,7 @@ PrintPS::print_2geomcurve(SVGOStringStream &os, Geom::Curve const & c ) using Geom::X; using Geom::Y; - if( dynamic_cast<Geom::LineSegment const*>(&c) || - dynamic_cast<Geom::HLineSegment const*>(&c) || - dynamic_cast<Geom::VLineSegment const*>(&c) ) + if( is_straight_curve(c) ) { os << c.finalPoint()[X] << " " << c.finalPoint()[Y] << " lineto\n"; } |
