home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.graphics:9460 comp.windows.x.pex:534 comp.unix.aix:9408
- Newsgroups: comp.graphics,comp.windows.x.pex,comp.unix.aix
- Path: sparky!uunet!newsgate.watson.ibm.com!yktnews!admin!watson!schultz.kgn.ibm.com!schultz
- From: schultz@schultz.kgn.ibm.com (schultz)
- Subject: Re: IBM's graPHIGS package, problem with GPNBS, any hint?
- Sender: @watson.ibm.com
- Message-ID: <1992Sep04.202508.35044@watson.ibm.com>
- Date: Fri, 04 Sep 92 20:25:08 GMT
- Reply-To: schultz@vnet.ibm.com
- References: <1484@igd.fhg.de> <Bu2BFs.Lzw@well.sf.ca.us>
- Organization: IBM AWD Graphics Systems
- Keywords: PHIGS, graPHIGS, NURBS
- Lines: 43
-
- In article <Bu2BFs.Lzw@well.sf.ca.us>, levine@well.sf.ca.us (Ron Levine)
- writes:
- |> In article <1484@igd.fhg.de> pfuetz@igd.fhg.de (Matthias Pfuetzner) writes:
- |> .... stuff deleted...
- |>
- |> I'm not sure this is your problem, but it's worth checking:
- |>
- |> I haven't worked directly with graPHIGS, but a couple of years ago, when
- |> porting a graPHIGS demo application to DEC PHIGS, I discovered that for the
- |> RATIONAL B-spline case, graPHIGS expects DIFFERENT data from DEC PHIGS,
- |> SunPHIGS, and most of the other implementations. Namely, for the
- coordinate
- |> 4-tuple for the weighted control points, graPHIGS expects the
- application to
- |> pass (x,y,z,w), while the other implementations expect (xw,yw,zw,w).
-
- This is correct, although if the app passes the homogenous form, it usually
- results in wierd-looking results instead of a blank screen. I guess it depends
- on how big w is.
-
- |> The PHIGS PLUS DIS Specification document of February 14, 1991 is not
- |> absolutely clear on the point. It says simply that "When RATIONAL is
- |> specified the control points are specified as homogeneous modelling
- |> coordinates with the restriction that the fourth coordinate be greater than
- |> zero". Technically, the graPHIGS implementation does not violate the
- |> specification, because (x,y,z,w) are indeed homogeneous coordinates
- for the 3D
- |> point (x/w,y/w,z/w). I guess most people would say that the IBM
- |> interpretation is wrong, but I think it is preferable from the point
- of view
- |> of the application, because in most situations it would save the
- application
- |> the work of multiplying the 3D coordinates by the weights.
-
- I guess the history behind this was influenced by our supporting graPHIGS
- on the IBM 6090. The 6090 hardware wanted the points in non-homogenous form,
- so we didn't see the point behind having the app do the multiply and then the
- hardware do the divide. I'm not sure what the PHIGS PLUS spec said about
- this several years ago either.
-
-
- Karl Schultz schultz@vnet.ibm.com
- These statements or opinions are not necessarily those of IBM
-