home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / graphics / 9460 < prev    next >
Encoding:
Internet Message Format  |  1992-09-07  |  2.7 KB

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