diff options
author | kitfox | 2011-07-05 09:47:10 +0200 |
---|---|---|
committer | kitfox | 2011-07-05 09:47:10 +0200 |
commit | d00f4048569d662b025aa78a1a2cad3a1651ddd6 (patch) | |
tree | 8fc339fed32cdbfb0b03cd8dba6fbf30bd04b2bb /src/main | |
parent | Adding bugfix for markers with "none" attribute. (diff) | |
download | svg-salamander-core-d00f4048569d662b025aa78a1a2cad3a1651ddd6.tar.gz svg-salamander-core-d00f4048569d662b025aa78a1a2cad3a1651ddd6.tar.xz svg-salamander-core-d00f4048569d662b025aa78a1a2cad3a1651ddd6.zip |
Fixed problem with path CLOSE instruction not returning cursor to start of path. Fixed problem with marker-mid and marker-end ignoring the 'none' draw style.
git-svn-id: https://svn.java.net/svn/svgsalamander~svn/trunk/svg-core@98 7dc7fa77-23fb-e6ad-8e2e-c86bd48ed22b
Diffstat (limited to 'src/main')
4 files changed, 18 insertions, 4 deletions
diff --git a/src/main/java/com/kitfox/svg/ShapeElement.java b/src/main/java/com/kitfox/svg/ShapeElement.java index 207e096..07b76cf 100644 --- a/src/main/java/com/kitfox/svg/ShapeElement.java +++ b/src/main/java/com/kitfox/svg/ShapeElement.java @@ -247,15 +247,21 @@ abstract public class ShapeElement extends RenderableElement Marker markerMid = null;
if (getStyle(styleAttrib.setName("marker-mid")))
{
- URI uri = styleAttrib.getURIValue(getXMLBase());
- markerMid = (Marker)diagram.getUniverse().getElement(uri);
+ if (!styleAttrib.getStringValue().equals("none"))
+ {
+ URI uri = styleAttrib.getURIValue(getXMLBase());
+ markerMid = (Marker)diagram.getUniverse().getElement(uri);
+ }
}
Marker markerEnd = null;
if (getStyle(styleAttrib.setName("marker-end")))
{
- URI uri = styleAttrib.getURIValue(getXMLBase());
- markerEnd = (Marker)diagram.getUniverse().getElement(uri);
+ if (!styleAttrib.getStringValue().equals("none"))
+ {
+ URI uri = styleAttrib.getURIValue(getXMLBase());
+ markerEnd = (Marker)diagram.getUniverse().getElement(uri);
+ }
}
diff --git a/src/main/java/com/kitfox/svg/pathcmd/BuildHistory.java b/src/main/java/com/kitfox/svg/pathcmd/BuildHistory.java index d16c11a..ff00120 100644 --- a/src/main/java/com/kitfox/svg/pathcmd/BuildHistory.java +++ b/src/main/java/com/kitfox/svg/pathcmd/BuildHistory.java @@ -41,6 +41,7 @@ public class BuildHistory { // Point2D.Float[] history = new Point2D.Float[2];
Point2D.Float[] history = {new Point2D.Float(), new Point2D.Float()};
+ Point2D.Float start = new Point2D.Float();
int length = 0;
/** Creates a new instance of BuildHistory */
@@ -53,6 +54,11 @@ public class BuildHistory { length = 1;
}
+ public void setStart(float x, float y)
+ {
+ start.setLocation(x, y);
+ }
+
public void setPointAndKnot(float x, float y, float kx, float ky)
{
history[0].setLocation(x, y);
diff --git a/src/main/java/com/kitfox/svg/pathcmd/MoveTo.java b/src/main/java/com/kitfox/svg/pathcmd/MoveTo.java index 7339607..e2246a5 100644 --- a/src/main/java/com/kitfox/svg/pathcmd/MoveTo.java +++ b/src/main/java/com/kitfox/svg/pathcmd/MoveTo.java @@ -57,6 +57,7 @@ public class MoveTo extends PathCommand { path.moveTo(x + offx, y + offy);
hist.setPoint(x + offx, y + offy);
+ hist.setStart(x + offx, y + offy);
}
public int getNumKnotsAdded()
diff --git a/src/main/java/com/kitfox/svg/pathcmd/Terminal.java b/src/main/java/com/kitfox/svg/pathcmd/Terminal.java index a9d1c9f..1cdacf2 100644 --- a/src/main/java/com/kitfox/svg/pathcmd/Terminal.java +++ b/src/main/java/com/kitfox/svg/pathcmd/Terminal.java @@ -47,6 +47,7 @@ public class Terminal extends PathCommand { public void appendPath(GeneralPath path, BuildHistory hist)
{
path.closePath();
+ hist.setPoint(hist.start.x, hist.start.y);
}
public int getNumKnotsAdded()
|