W3C home > Mailing lists > Public > www-svg@w3.org > November 2004

Re: SVG 1.2 Comment: vector effects

From: Peter Sorotokin <psorotok@adobe.com>
Date: Wed, 10 Nov 2004 08:52:36 -0800
To: Ian Hickson <ian@hixie.ch>
Cc: www-svg@w3.org
Message-id: <>

At 11:41 AM 11/10/2004 +0000, Ian Hickson wrote:

>On Fri, 5 Nov 2004, Peter Sorotokin wrote:
> >
> > The solutions that you suggest were all reviewed and rejected because
> > they do not address the problems that vector effects are trying to
> > solve. There is a very strong demand for these features from the mapping
> > and schematics community. In short:
> >
> > - there is a need to scale stroke outlines and stroke/fill patterns
> > differently from the rest of graphics
>It seems like the simplest way to do this would be to use a new unit, one
>that didn't scale with the zoom.

Yes, we certainly tried that (in pre 1.0 drafts CSS units did not scale). 
It kind of works for uniform scale, but if x and y scale factors are 
different it breaks down. In graphs people typically scale the coordinate 
space to work in their units and scale is typically non-uniform. And what 
about non-scaled fill patterns?

> > - there is a need to assign multiple strokes and fills to an object 
> (drawing
> > tools had this for long time)
>This could be done in the same way that the CSS working group is handling
>multiple backgrounds on elements, namely, let the 'fill' and 'stroke'
>properties take multiple comma-separated values.

That was certainly one of the ideas WG members had as well. It works for 
fill, but stroke is not controlled purely by stroke property. Typically one 
wants to change either stroke-width or stroke-dash-array as well.

> > - there is a need to "set back" strokes around the markers while
> > preserving actual path data
> > - there is a need to reuse edges in several shapes (esp. on maps)
>Not sure what you mean by these, could you give examples?

Setback is a break in the line so that it does not overlap with the marker.

Sharing edges is when you have a map where there are "countries" and 
"borders". You want to define each border between two countries in a 
separate path and then plug them together to get the outline of the 
country. This involves reversing some of the paths. Sharing information 
like that allows one to have smaller files and to manipulate border data 
more efficiently; it potentially allows renderer to produce higher-quality 
antialiasing (shared borders are hard to antialias properly without 
knowledge that they are shared).


> > - all of the above should integrate with animation (e.g, path animation)
> > and not cause substantial file size bloat.
>The two proposals I list above (a new unit and allowing multiple values
>on two propeties) seem to handle this.
>I'm not denying tha there are use cases for the vector effects work. All
>I'm saying is that to handle 90% of these use cases, it seems like a
>significantly simpler model could be used, instead of introducing
>something that, frankly, is frightening in its complexity.
>Ian Hickson               U+1047E                )\._.,--....,'``.    fL
>http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
>Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'
Received on Wednesday, 10 November 2004 16:52:41 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 March 2017 09:47:01 UTC