[gsharp-devel] beams and printing

Christophe Rhodes csr21 at cam.ac.uk
Mon Jun 5 14:43:01 UTC 2006


Hi,

The attached patch implements most of what is necessary to print
beams.  There's much that's basically hacky and needs reworking -- I
think we want a medium-draw-{up,down}ward-beam generic function -- but
the reason I'm asking for advice is that I don't understand the 1+ in
DRAW-DOWNWARD-BEAM-SEGMENT (and the asymmetry compared with
DRAW-UPWARD-BEAM-SEGMENT).

The unfinished business in this patch involves that 1+: the issue is
that output records need to store transformed quantities, not
untransformed ones, as the medium transformation is ignored when
replaying ORs.  X1, Y1 and Y2 are correctly transformed in the record,
and INVERSE-SLOPE is invariant under uniform scaling, but thickness is
not.  My patch transforms the thickness, but the final problem is that
the 1+ in draw-downward-beam-segment (and faithfully copied in my
polygon implementation for postscript mediums) is not invariant under
transformations either.  So I think we need to rework the beam output
record to hold the actually drawn y values, but before doing that I
wanted to understand where the 1+ came from in the first place.

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: beams.diff
URL: <https://mailman.common-lisp.net/pipermail/gsharp-devel/attachments/20060605/10414e2a/attachment.ksh>
-------------- next part --------------

Cheers,

Christophe


More information about the gsharp-devel mailing list