BNDSCAN.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:2k
源码类别:

Windows编程

开发平台:

Visual C++

  1. /******************************Module*Header*******************************
  2. * Module Name: bndscan.h
  3. *
  4. * Contains the #defines used for finding boundary points
  5. *
  6. * Created: 19-Mar-1992 16:10:14
  7. * Author: Petrus Wong
  8. *
  9. * Copyright (C) 1993-1997 Microsoft Corporation
  10. *
  11. * The eight neighbors of any boundary point are represented by thier
  12. * relative direction.  For example, north, south, east and west.
  13. * The directions are #defined clockwise.  And these defined values will
  14. * be used with shifting operations.
  15. *
  16. * Dependencies:
  17. *
  18. *   none
  19. *
  20. **************************************************************************/
  21. #define EAST        0x0001
  22. #define SOUTHEAST   0x0002
  23. #define SOUTH       0x0004
  24. #define SOUTHWEST   0x0008
  25. #define WEST        0x0010
  26. #define NORTHWEST   0x0020
  27. #define NORTH       0x0040
  28. #define NORTHEAST   0x0080
  29. //
  30. // Turning left and right are also defined.
  31. //
  32. #define LEFT     1
  33. #define RIGHT     2
  34. //
  35. // This is maximum number of boundary points we are going to handle.
  36. // Works pretty well in most cases.  This limit exists for catching
  37. // the unprobable situation of infinite loop.
  38. //
  39. #define MAXPOINT    50000
  40. #define MM_SELCLIPRGN           7050
  41. //
  42. // Internal data structure used for boundary point finding only.
  43. //
  44. typedef struct _node {
  45.     DWORD   dwDirection;
  46.     BOOL    bEscape;
  47. }NODE;
  48. //
  49. // externs
  50. //
  51. extern HPEN hpnGreen;
  52. extern HPEN hpnBlack;
  53. extern HWND ghwndMain;
  54. extern char gtext[256];
  55. extern HBITMAP SaveBitmap   (HWND, HPALETTE);
  56. extern LONG lMul(LONG, LONG);
  57. extern LONG lDiv(LONG, LONG);