display.h 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. #ifndef GRASS_DISPLAY_H
  2. #define GRASS_DISPLAY_H
  3. #include <grass/gis.h>
  4. #include <grass/raster.h>
  5. #include <grass/symbol.h>
  6. enum clip_mode
  7. {
  8. M_NONE,
  9. M_CULL,
  10. M_CLIP,
  11. };
  12. /* cnversions.c */
  13. void D_update_conversions(void);
  14. void D_fit_d_to_u(void);
  15. void D_fit_u_to_d(void);
  16. void D_show_conversions(void);
  17. void D_do_conversions(const struct Cell_head *, double, double, double, double);
  18. int D_is_lat_lon(void);
  19. double D_get_d_to_a_xconv(void);
  20. double D_get_d_to_a_yconv(void);
  21. double D_get_d_to_u_xconv(void);
  22. double D_get_d_to_u_yconv(void);
  23. double D_get_a_to_u_xconv(void);
  24. double D_get_a_to_u_yconv(void);
  25. double D_get_a_to_d_xconv(void);
  26. double D_get_a_to_d_yconv(void);
  27. double D_get_u_to_d_xconv(void);
  28. double D_get_u_to_d_yconv(void);
  29. double D_get_u_to_a_xconv(void);
  30. double D_get_u_to_a_yconv(void);
  31. double D_get_ns_resolution(void);
  32. double D_get_ew_resolution(void);
  33. double D_get_u_west(void);
  34. double D_get_u_east(void);
  35. double D_get_u_north(void);
  36. double D_get_u_south(void);
  37. double D_get_a_west(void);
  38. double D_get_a_east(void);
  39. double D_get_a_north(void);
  40. double D_get_a_south(void);
  41. double D_get_d_west(void);
  42. double D_get_d_east(void);
  43. double D_get_d_north(void);
  44. double D_get_d_south(void);
  45. void D_set_region(const struct Cell_head *);
  46. void D_set_src(double, double, double, double);
  47. void D_get_src(double *, double *, double *, double *);
  48. void D_set_grid(int, int, int, int);
  49. void D_get_grid(int *, int *, int *, int *);
  50. void D_set_dst(double, double, double, double);
  51. void D_get_dst(double *, double *, double *, double *);
  52. void D_get_u(double [2][2]);
  53. void D_get_a(int [2][2]);
  54. void D_get_d(double [2][2]);
  55. double D_d_to_a_row(double);
  56. double D_d_to_a_col(double);
  57. double D_d_to_u_row(double);
  58. double D_d_to_u_col(double);
  59. double D_a_to_u_row(double);
  60. double D_a_to_u_col(double);
  61. double D_a_to_d_row(double);
  62. double D_a_to_d_col(double);
  63. double D_u_to_d_row(double);
  64. double D_u_to_d_col(double);
  65. double D_u_to_a_row(double);
  66. double D_u_to_a_col(double);
  67. /* draw2.c */
  68. void D_set_clip(double, double, double, double);
  69. void D_clip_to_map(void);
  70. void D_set_clip_mode(int);
  71. void D_set_reduction(double);
  72. void D_line_width(double);
  73. void D_get_text_box(const char *, double *, double *, double *, double *);
  74. void D_pos_abs(double, double);
  75. void D_pos_rel(double, double);
  76. void D_move_abs(double, double);
  77. void D_move_rel(double, double);
  78. void D_cont_abs(double, double);
  79. void D_cont_rel(double, double);
  80. void D_line_abs(double, double, double, double);
  81. void D_line_rel(double, double, double, double);
  82. void D_polydots_abs(const double *, const double *, int);
  83. void D_polydots_rel(const double *, const double *, int);
  84. void D_polyline_abs(const double *, const double *, int);
  85. void D_polyline_rel(const double *, const double *, int);
  86. void D_polygon_abs(const double *, const double *, int);
  87. void D_polygon_rel(const double *, const double *, int);
  88. void D_box_abs(double, double, double, double);
  89. void D_box_rel(double, double);
  90. void D_begin(void);
  91. void D_end(void);
  92. void D_close(void);
  93. void D_stroke(void);
  94. void D_fill(void);
  95. void D_dots(void);
  96. /* icon.c */
  97. void D_plot_icon(double, double, int, double, double);
  98. /* raster.c */
  99. int D_draw_raster(int, const void *, struct Colors *, RASTER_MAP_TYPE);
  100. int D_draw_d_raster(int, const DCELL *, struct Colors *);
  101. int D_draw_f_raster(int, const FCELL *, struct Colors *);
  102. int D_draw_c_raster(int, const CELL *, struct Colors *);
  103. int D_draw_cell(int, const CELL *, struct Colors *);
  104. void D_cell_draw_begin(void);
  105. int D_draw_raster_RGB(int, const void *, const void *, const void *,
  106. struct Colors *, struct Colors *, struct Colors *,
  107. RASTER_MAP_TYPE, RASTER_MAP_TYPE, RASTER_MAP_TYPE);
  108. void D_cell_draw_end(void);
  109. /* raster2.c */
  110. int D_set_overlay_mode(int);
  111. int D_color(CELL, struct Colors *);
  112. int D_c_color(CELL, struct Colors *);
  113. int D_d_color(DCELL, struct Colors *);
  114. int D_f_color(FCELL, struct Colors *);
  115. int D_color_of_type(const void *, struct Colors *, RASTER_MAP_TYPE);
  116. /* setup.c */
  117. void D_setup(int);
  118. void D_setup_unity(int);
  119. void D_setup2(int, int, double, double, double, double);
  120. /* symbol.c */
  121. void D_symbol(const SYMBOL *, double, double, const RGBA_Color *,
  122. const RGBA_Color *);
  123. void D_symbol2(const SYMBOL *, double, double, const RGBA_Color *,
  124. const RGBA_Color *);
  125. /* tran_colr.c */
  126. int D_translate_color(const char *);
  127. int D_parse_color(const char *, int);
  128. int D_use_color(int);
  129. int D_color_number_to_RGB(int, int *, int *, int *);
  130. void D_RGB_color(int, int, int);
  131. /* window.c */
  132. void D_erase(const char *);
  133. /* r_raster.c */
  134. int D_open_driver(void);
  135. void D_close_driver(void);
  136. void D_get_window(double *, double *, double *, double *);
  137. void D__erase(void);
  138. void D_text_size(double, double);
  139. void D_text_rotation(double);
  140. void D_text(const char *);
  141. void D_font(const char *);
  142. void D_encoding(const char *);
  143. void D_font_list(char ***, int *);
  144. void D_font_info(char ***, int *);
  145. #endif /* GRASS_DISPLAY_H */