Hi,
On 18.10.05, Jim Wilson wrote:
> The circle.intersect() method may be addled by largeradius circles. To
> see what I (think I) saw, in examples/path/circles.py, change the radii of
> circ1 and circ2 and the center ordinate and abscissa of the latter to 1e6:
>
> :
> circ1 = path.circle(0, 0, 1e6)
> circ2 = path.circle(1e6, 1e6, 1e6)
> :
>
> Details: Python 2.4.1, PyX 0.8.1, FC4. Xpdf 3.01 (Gsview whined about bad
> PostScript, so I couldn't look at circles.eps).
Well, there are two problems here. The first is easy ... and I think
that's the problem you have when viewing the file. The output is a
huge page. But that's fine except from exponentials occuring in the
highresbbox ... this might be an error, right. We should look up this
in the DSC description and maybe fix it.
You can force PyX to write everything centered onto a given paper
size. This would look like:
c.writeEPSfile("circles", paperformat=document.paperformat.A4, fittosize=1)
Then you can view the file without any problem, even when it was
created using this huge coordinates.
However, when you do so, you'll find out, that the result looks
different now! As far as I can see, this is due to the fact, that one
of the intersection points is very close to parameter value 0 at the
closed circle path. This is unstable, you may get a parameter value a
little above 0 or a very little below that, which meens it'll be a
little less than the number of normpathsubitems (seems to be 10 for a
full circle at default precision). This is really a bad example in
that sence, since those instabilities need to be taken care of by the
user (there aren't much different options here). But if you move the
upperright circle a little, such that the intersection point is a
little away from the closing point of the circle, it should be
perfectly stable. For example
circ1 = path.circle(0, 0, 1e6)
circ2 = path.circle(1.2e6, 1.2e6, 1e6)
works very well on quite different scales.
André

by _ _ _ Dr. André Wobst
/ \ \ / ) wobsta@..., http://www.wobsta.de/
/ _ \ \/\/ / PyX  High quality PostScript and PDF figures
(_/ \_)_/\_/ with Python & TeX: visit http://pyx.sourceforge.net/
