Transformations are ignored when separated by comma (manually coded svg misinterpreted)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Fix Released
|
Medium
|
Unassigned |
Bug Description
$ inkscape --version
Inkscape 0.48.4 r9939 (Jan 22 2014)
$ uname -a
Linux hh-desktop22 3.13.0-35-generic #62-Ubuntu SMP Fri Aug 15 01:58:42 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Svg file "sphere.svg" looks visually incorrect when opened with
inkscape. Note that "sphere.svg" is NOT created with
inkscape, but a separate ad hoc program has been used to calculate
the shapes and positions of the relevant ellipses.
The SVG standard was consulted when preparing the svg file, so it
can be assumed to look correct.
The picture is supposed to show a stylisized perspective view of
a translucent globe, viewed infinitely far away from an angle
of 25 degrees (northward from equatorial plane). The first <circle/>
command draws the outer edge. The next two <path/> commands
draw the equator, in two pieces (the other half dashed). The
next four <path/> commands draw two meridians; they cross at poles
at an angle of 90 degrees (which, in a perspective 2D projection, is
of course not 90 degrees). The north pole is the intersection of
the solid lines, the south pole, dashed lines. The next <ellipse/>
command draws parallel 75 degrees North with solid line; the next four
<path/> commands draw parallels 45 North and 45 South; and the last
<ellipse/> command draws parallel 75 South, with dashed line.
Observations:
1. When the svg file is opened with inkscape 0.48.4, it looks
incorrect on the display screen. Specifically, the lines drawn
with <path/> commands are offset (as if inkscape didn't understand
"translate(
2. When inkscape is asked to save the picture in png format,
the result is similarly incorrect.
3. When the png file is viewed with Mozilla Firefox 32.0,
it looks incorrect, like in inkscape.
4. But if the original svg file is viewed with Firefox, it looks
correct. For this reason I assume the the svg code is correct.
Contents of sphere.svg:
<svg xmlns="http://
viewBox="0 0 1800 1800">
<circle cx="800" cy="800" r="800" fill="none" stroke="black" stroke-width="7" transform=
<path stroke="black" stroke-width="7" fill="none" d="M 0 800 A 800 338.0946 0 0 0 1600 800 " transform=
<path stroke="black" stroke-width="7" fill="none" d="M 0 800 A 800 338.0946 0 0 1 1600 800 " stroke-
<path stroke="black" stroke-width="7" fill="none" d="M 0 800 A 800 512.6851 0 0 0 1600 800 " transform=
<path stroke="black" stroke-width="7" fill="none" d="M 0 800 A 800 512.6851 0 0 1 1600 800 " stroke-
<path stroke="black" stroke-width="7" fill="none" d="M 0 800 A 800 512.6851 0 0 0 1600 800 " transform=
<path stroke="black" stroke-width="7" fill="none" d="M 0 800 A 800 512.6851 0 0 1 1600 800 " stroke-
<ellipse cx="800" cy="800" rx="207.0552" ry="87.5053" fill="none" stroke="black" stroke-width="7" transform=
<path stroke="black" stroke-width="7" fill="none" d="M 299.5819 175.8352 A 565.6854 239.0690 0 1 0 1300.4181 175.8352 " transform=
<path stroke="black" stroke-width="7" fill="none" d="M 299.5819 175.8352 A 565.6854 239.0690 0 0 1 1300.4181 175.8352 " stroke-
<path stroke="black" stroke-width="7" fill="none" d="M 299.5819 1424.1648 A 565.6854 239.0690 0 0 0 1300.4181 1424.1648 " transform=
<path stroke="black" stroke-width="7" fill="none" d="M 299.5819 1424.1648 A 565.6854 239.0690 0 1 1 1300.4181 1424.1648 " stroke-
<ellipse cx="800" cy="800" rx="207.0552" ry="87.5053" fill="none" stroke="black" stroke-width="7" stroke-
</svg>
summary: |
- manually coded svg misinterpreted + Transformations are ignored when separated by comma (manually coded svg + misinterpreted) |
Attaching file to ease testing …