- From: Goessner / MecXpert <goessner@mecxpert.de>
- Date: Fri, 3 May 2002 10:46:26 +0200
- To: <www-svg@w3.org>
A solution to this problem might be an additional fill-rule, perhaps fill-rule="always" -- stefan > i simplified the path to a square with a "V" in it. > > <svg width="300" height="200"> > <path id="A" transform="translate(20,20)" stroke-width="2" stroke="blue" > fill="lightgray" fill-rule="nonzero" > d="M0,0 H100 V100 H0 Z M10,50 50,90 90,50" /> <!-- clockwise / > counterclockwise --> > <path id="B" transform="translate(140,20)" stroke-width="2" stroke="blue" > fill="lightgray" fill-rule="nonzero" > d="M0,0 H100 V100 H0 Z M90,50 50,90 10,50" /> <!-- clockwise / > clockwise --> > </svg> > > 1) if a (sub)path is not closed, an invisible closepath from the (sub)path's > current point to its initial point is used for filling. > 2) if one path contains the other completely the fill-rule determines if the > subpath has to be filled or not. > 3) fill-rule="nonzero" (the default) will > a) fill the inner subpath, if it has the same (angular) direction as the > outer subpath. > b) not fill the the inner subpath, if its angular direction is different > to the outer subpath's. > 4) fill-rule="evenodd" will never fill the inner subpath > > > it is conform to the SVG 1.1 spec, that there is *no way* to fill the square > in path (id="A") completely. > the path can be modified (id="B")to match point 3a) above. But in case of an > "N"-shaped subpath instead of a "V" that wouldn't help either. > -- > stefan > > > ----- Original Message ----- > From: "Doug Schepers" <doug@schepers.cc> > To: "Goessner / MecXpert" <goessner@mecxpert.de> > Sent: Wednesday, May 01, 2002 2:24 PM > Subject: Re: fill-rule problem .. > > > > Could this be a bug in ASV3? I got it to render as solid once, after > > refreshing a couple of times, and once got a blue artifact line straight > > from (50,50) to (90,50). [WinMe/IE6/ASV3] > > > > What is the logic behind it not filling the square with gray? No lines are > > being crossed. Do I misunderstand the fill rule? > > > > -Doug > > > > ----- Original Message ----- > > From: "Goessner / MecXpert" <goessner@mecxpert.de> > > To: <www-svg@w3.org> > > Sent: Wednesday, May 01, 2002 5:48 AM > > Subject: fill-rule problem .. > > > > > > > i have a simple square with two quadratic bezier segments in it. it is > > easy > > > to define this by a single path element. > > > > > > <svg> > > > <path transform="translate(20,20)" stroke-width="2" stroke="blue" > > > fill="lightgray" > > > d="M0,0 H100 V100 H0 Z M10,50 Q30,30 50,50 T90,50" /> > > > </svg> > > > > > > but i cannot find a fill-rule to completely fill the square. even the > new > > > winding-count rule wouldn't work. > > > > > > -- > > > stefan goessner > > > > > > > > >
Received on Friday, 3 May 2002 04:53:14 UTC