Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!natinst!rpp386!woody From: woody@rpp386.cactus.org (Woodrow Baker) Newsgroups: comp.lang.postscript Subject: Re: Splines Underli Summary: questions Message-ID: <17846@rpp386.cactus.org> Date: 2 Feb 90 13:32:49 GMT References: <7897@shlump.nac.dec.com> <17811@rpp386.cactus.org> <13711@cit-vax.Caltech.Edu> Organization: River Parishes Programming, Plano, TX Lines: 46 In article <13711@cit-vax.Caltech.Edu>, hemphill@cit-vax.Caltech.Edu (Scott Hemphill) writes: > woody@rpp386.cactus.org (Woodrow Baker) writes: > > Now, a followup question. Given the resulting array of points, > > created by the subdivision of the spline, is is possible to reverse the > > proceedure, and work back to the original set of corrdinates. If so, > > what are the pitfalls, and where might there be code or references? > > It looks possible, given that every thing was done with shifts. > > amanda@mermaid.intercon.com (Amanda Walker) writes: > >It should be possible, since four points will uniquely define a cubic > >curve. It's been a while since I took Analytic Geometry :-), but you I think it is quite clear that Amanda is talking about the 2 knots, and teh 2 control points to define a Bezier curve. > > But *six* points are necessary to uniquely determine a *parametric* cubic curve. > The following PostScript fragment shows 4 points with two different Bezier > curves passing through them. > > %! > /in {72 mul} bind def > 4.25 in 5.5 in translate > /dot {currentpoint 0.05 in 0 360 arc fill} bind def > -3 in -1 in moveto dot > -1 in 1 in moveto dot > 1 in 1 in moveto dot > 3 in -1 in moveto dot > -3 in -1 in moveto > -1 in 2 in 1 in 2 in 3 in -1 in curveto stroke > -3 in -1 in moveto > 7 in 9 div 23 in 9 div -7 in 9 div 23 in 9 div 3 in -1 in curveto stroke > showpage > interesting code. > These sound like the questions one asks to figure out how to reverse-engineer > PostScript fonts. ActuActually, these are questions that one asks, when one is working on creating an interactive spline drawing program. They are also useful for fonts, but my primary quest is for automatic curve fitting, and interactive spline drawing programs. Cheers Woody