home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / graphics / 12887 < prev    next >
Encoding:
Text File  |  1992-12-14  |  1.7 KB  |  39 lines

  1. Newsgroups: comp.graphics
  2. Path: sparky!uunet!spool.mu.edu!uwm.edu!ux1.cso.uiuc.edu!bert.eecs.uic.edu!artn
  3. From: artn@bert.eecs.uic.edu (Stephan Meyers)
  4. Subject: HELP:  Hexagon tiling problem
  5. Message-ID: <1992Dec15.003038.14130@bert.eecs.uic.edu>
  6. Organization: University of Illinois at Chicago
  7. Date: Tue, 15 Dec 1992 00:30:38 GMT
  8. Lines: 29
  9.  
  10.     I don't think the answer to this is in the FAQ, and I browsed
  11. Graphic Gems III (I can't find the lab's copy of I and II) but I doubt the
  12. answer is there, either.
  13.  
  14.     Given a plane tiled with hexagons and a point (x,y) on the plane,
  15. how do I find the point corresponding to the center of the hexagon that the
  16. given point lies in.
  17.  
  18.     Although my use for this function is a little more esoteric, it could
  19. be used to do a "hexagonal pixellation," which would be funky looking.
  20.     I've tried solving this problem a few different ways.  The most do-able
  21. is to fmod() the whole space into a rectangle two units high and three wide,
  22. and then to partition x into four regions:  the first region corresponds to
  23. a whole hex, the third goes either up or down, and for the second and fourth
  24. you check if the point lies above, below, or between the two angled segments.
  25. This seems somewhat inelegant, however, and I suspect there's a more direct
  26. way to do it.
  27.     Since I know the slopes of the lines connecting the centers, I tried
  28. using y=mx+b, solving for b, then rounding b off to the nearest unit, for 
  29. both angles (sqrt(3) and -sqrt(3)), and then finding the intersection. 
  30. However, I ended up with rhombuses.
  31.     Suggestions?  Is this in one of the Gems? Help!
  32.  
  33.         Stephan
  34. -- 
  35. --
  36. Stephan Meyers | artn@uicbert.eecs.uic.edu
  37. (Art)^n Laboratories, inventors of the Stealth Negative PHSCologram
  38. (312) 567-3762
  39.