pango 3.1.1-x64-mingw32 → 3.1.2-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (306) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +27 -5
  3. data/ext/pango/depend +2 -2
  4. data/ext/pango/extconf.rb +32 -28
  5. data/ext/pango/pango.def +0 -16
  6. data/ext/pango/rb-pango-attr-list.c +64 -0
  7. data/ext/pango/rb-pango-attribute.c +147 -0
  8. data/ext/pango/rb-pango-context.c +79 -0
  9. data/ext/pango/{rbpangoconversions.h → rb-pango-conversions.h} +4 -6
  10. data/ext/pango/rb-pango-private.h +27 -0
  11. data/ext/pango/rb-pango.c +32 -0
  12. data/ext/pango/rb-pango.h +29 -0
  13. data/extconf.rb +25 -9
  14. data/lib/2.2/pango.so +0 -0
  15. data/lib/2.3/pango.so +0 -0
  16. data/lib/2.4/pango.so +0 -0
  17. data/lib/pango.rb +24 -68
  18. data/lib/pango/cairo-loader.rb +63 -0
  19. data/lib/pango/color.rb +31 -0
  20. data/lib/pango/deprecated.rb +37 -0
  21. data/lib/pango/font-description.rb +29 -0
  22. data/lib/pango/language.rb +29 -0
  23. data/lib/pango/layout.rb +41 -0
  24. data/lib/pango/loader.rb +87 -0
  25. data/lib/pango/markup.rb +31 -0
  26. data/lib/pango/matrix.rb +64 -0
  27. data/lib/pango/rectangle.rb +28 -0
  28. data/lib/pango/version.rb +30 -0
  29. data/test/pango-test-utils.rb +7 -7
  30. data/test/run-test.rb +34 -8
  31. data/test/test-attr-list.rb +28 -0
  32. data/test/test-color.rb +1 -3
  33. data/test/test-context.rb +4 -4
  34. data/test/test-enum.rb +37 -0
  35. data/test/test-font-description.rb +31 -0
  36. data/test/test-language.rb +2 -1
  37. data/test/test-layout.rb +12 -0
  38. data/test/test-markup.rb +30 -0
  39. data/test/test-matrix.rb +131 -5
  40. data/test/test-rectangle.rb +16 -3
  41. data/vendor/local/bin/derb.exe +0 -0
  42. data/vendor/local/bin/genbrk.exe +0 -0
  43. data/vendor/local/bin/genccode.exe +0 -0
  44. data/vendor/local/bin/gencfu.exe +0 -0
  45. data/vendor/local/bin/gencmn.exe +0 -0
  46. data/vendor/local/bin/gencnval.exe +0 -0
  47. data/vendor/local/bin/gendict.exe +0 -0
  48. data/vendor/local/bin/gennorm2.exe +0 -0
  49. data/vendor/local/bin/genrb.exe +0 -0
  50. data/vendor/local/bin/gensprep.exe +0 -0
  51. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  52. data/vendor/local/bin/hb-shape.exe +0 -0
  53. data/vendor/local/bin/hb-view.exe +0 -0
  54. data/vendor/local/bin/icuinfo.exe +0 -0
  55. data/vendor/local/bin/icupkg.exe +0 -0
  56. data/vendor/local/bin/libgraphene-1.0-0.dll +0 -0
  57. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  58. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  59. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  60. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  61. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  62. data/vendor/local/bin/makeconv.exe +0 -0
  63. data/vendor/local/bin/pango-view.exe +0 -0
  64. data/vendor/local/bin/pkgdata.exe +0 -0
  65. data/vendor/local/bin/uconv.exe +0 -0
  66. data/vendor/local/include/graphene-1.0/graphene-box.h +148 -0
  67. data/vendor/local/include/graphene-1.0/graphene-euler.h +140 -0
  68. data/vendor/local/include/graphene-1.0/graphene-frustum.h +93 -0
  69. data/vendor/local/include/graphene-1.0/graphene-gobject.h +119 -0
  70. data/vendor/local/include/graphene-1.0/graphene-macros.h +105 -0
  71. data/vendor/local/include/graphene-1.0/graphene-matrix.h +288 -0
  72. data/vendor/local/include/graphene-1.0/graphene-plane.h +99 -0
  73. data/vendor/local/include/graphene-1.0/graphene-point.h +120 -0
  74. data/vendor/local/include/graphene-1.0/graphene-point3d.h +140 -0
  75. data/vendor/local/include/graphene-1.0/graphene-quad.h +80 -0
  76. data/vendor/local/include/graphene-1.0/graphene-quaternion.h +136 -0
  77. data/vendor/local/include/graphene-1.0/graphene-ray.h +98 -0
  78. data/vendor/local/include/graphene-1.0/graphene-rect.h +180 -0
  79. data/vendor/local/include/graphene-1.0/graphene-simd4f.h +1870 -0
  80. data/vendor/local/include/graphene-1.0/graphene-simd4x4f.h +1045 -0
  81. data/vendor/local/include/graphene-1.0/graphene-size.h +105 -0
  82. data/vendor/local/include/graphene-1.0/graphene-sphere.h +97 -0
  83. data/vendor/local/include/graphene-1.0/graphene-triangle.h +105 -0
  84. data/vendor/local/include/graphene-1.0/graphene-types.h +88 -0
  85. data/vendor/local/include/graphene-1.0/graphene-vec2.h +130 -0
  86. data/vendor/local/include/graphene-1.0/graphene-vec3.h +155 -0
  87. data/vendor/local/include/graphene-1.0/graphene-vec4.h +156 -0
  88. data/vendor/local/include/graphene-1.0/graphene-version-macros.h +185 -0
  89. data/vendor/local/include/graphene-1.0/graphene-version.h +70 -0
  90. data/vendor/local/include/graphene-1.0/graphene.h +61 -0
  91. data/vendor/local/include/harfbuzz/hb-common.h +36 -0
  92. data/vendor/local/include/harfbuzz/hb-font.h +18 -1
  93. data/vendor/local/include/harfbuzz/hb-ot-var.h +105 -0
  94. data/vendor/local/include/harfbuzz/hb-ot.h +1 -0
  95. data/vendor/local/include/harfbuzz/hb-shape.h +0 -16
  96. data/vendor/local/include/harfbuzz/hb-version.h +2 -2
  97. data/vendor/local/include/pango-1.0/pango/pango-engine.h +6 -6
  98. data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
  99. data/vendor/local/include/pango-1.0/pango/pango-layout.h +1 -1
  100. data/vendor/local/lib/girepository-1.0/Graphene-1.0.typelib +0 -0
  101. data/vendor/local/lib/girepository-1.0/Pango-1.0.typelib +0 -0
  102. data/vendor/local/lib/graphene-1.0/include/graphene-config.h +89 -0
  103. data/vendor/local/lib/icudt.dll +0 -0
  104. data/vendor/local/lib/icudt58.dll +0 -0
  105. data/vendor/local/lib/icuin.dll +0 -0
  106. data/vendor/local/lib/icuin58.dll +0 -0
  107. data/vendor/local/lib/icuio.dll +0 -0
  108. data/vendor/local/lib/icuio58.dll +0 -0
  109. data/vendor/local/lib/icutest.dll +0 -0
  110. data/vendor/local/lib/icutest58.dll +0 -0
  111. data/vendor/local/lib/icutu.dll +0 -0
  112. data/vendor/local/lib/icutu58.dll +0 -0
  113. data/vendor/local/lib/icuuc.dll +0 -0
  114. data/vendor/local/lib/icuuc58.dll +0 -0
  115. data/vendor/local/lib/libgraphene-1.0.dll.a +0 -0
  116. data/vendor/local/lib/libgraphene-1.0.la +41 -0
  117. data/vendor/local/lib/libharfbuzz-icu.a +0 -0
  118. data/vendor/local/lib/libharfbuzz-icu.la +1 -1
  119. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  120. data/vendor/local/lib/libharfbuzz.la +1 -1
  121. data/vendor/local/lib/libicudt.dll.a +0 -0
  122. data/vendor/local/lib/libicuin.dll.a +0 -0
  123. data/vendor/local/lib/libicuio.dll.a +0 -0
  124. data/vendor/local/lib/libicutest.dll.a +0 -0
  125. data/vendor/local/lib/libicutu.dll.a +0 -0
  126. data/vendor/local/lib/libicuuc.dll.a +0 -0
  127. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  128. data/vendor/local/lib/libpango-1.0.la +1 -1
  129. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  130. data/vendor/local/lib/libpangocairo-1.0.la +1 -1
  131. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  132. data/vendor/local/lib/libpangoft2-1.0.la +1 -1
  133. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  134. data/vendor/local/lib/libpangowin32-1.0.la +1 -1
  135. data/vendor/local/lib/pkgconfig/graphene-1.0.pc +15 -0
  136. data/vendor/local/lib/pkgconfig/graphene-gobject-1.0.pc +15 -0
  137. data/vendor/local/lib/pkgconfig/harfbuzz-icu.pc +1 -1
  138. data/vendor/local/lib/pkgconfig/harfbuzz.pc +1 -1
  139. data/vendor/local/lib/pkgconfig/pango.pc +1 -1
  140. data/vendor/local/lib/pkgconfig/pangocairo.pc +1 -1
  141. data/vendor/local/lib/pkgconfig/pangoft2.pc +1 -1
  142. data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
  143. data/vendor/local/share/gir-1.0/Graphene-1.0.gir +8180 -0
  144. data/vendor/local/share/gir-1.0/Pango-1.0.gir +12 -16
  145. data/vendor/local/share/gtk-doc/html/graphene/annotation-glossary.html +57 -0
  146. data/vendor/local/share/gtk-doc/html/graphene/api-index.html +1985 -0
  147. data/vendor/local/share/gtk-doc/html/graphene/ch01.html +97 -0
  148. data/vendor/local/share/gtk-doc/html/graphene/deprecated-api-index.html +34 -0
  149. data/vendor/local/share/gtk-doc/html/graphene/graphene-Box.html +1252 -0
  150. data/vendor/local/share/gtk-doc/html/graphene/graphene-Euler.html +886 -0
  151. data/vendor/local/share/gtk-doc/html/graphene/graphene-Frustum.html +527 -0
  152. data/vendor/local/share/gtk-doc/html/graphene/graphene-GObject-integration.html +147 -0
  153. data/vendor/local/share/gtk-doc/html/graphene/graphene-Matrix.html +2959 -0
  154. data/vendor/local/share/gtk-doc/html/graphene/graphene-Plane.html +641 -0
  155. data/vendor/local/share/gtk-doc/html/graphene/graphene-Point.html +689 -0
  156. data/vendor/local/share/gtk-doc/html/graphene/graphene-Point3D.html +916 -0
  157. data/vendor/local/share/gtk-doc/html/graphene/graphene-Quad.html +418 -0
  158. data/vendor/local/share/gtk-doc/html/graphene/graphene-Quaternion.html +1056 -0
  159. data/vendor/local/share/gtk-doc/html/graphene/graphene-Ray.html +596 -0
  160. data/vendor/local/share/gtk-doc/html/graphene/graphene-Rectangle.html +1483 -0
  161. data/vendor/local/share/gtk-doc/html/graphene/graphene-SIMD-matrix.html +1475 -0
  162. data/vendor/local/share/gtk-doc/html/graphene/graphene-SIMD-vector.html +3046 -0
  163. data/vendor/local/share/gtk-doc/html/graphene/graphene-Size.html +489 -0
  164. data/vendor/local/share/gtk-doc/html/graphene/graphene-Sphere.html +641 -0
  165. data/vendor/local/share/gtk-doc/html/graphene/graphene-Triangle.html +705 -0
  166. data/vendor/local/share/gtk-doc/html/graphene/graphene-Vectors.html +3715 -0
  167. data/vendor/local/share/gtk-doc/html/graphene/graphene-Versioning-information.html +104 -0
  168. data/vendor/local/share/gtk-doc/html/graphene/graphene.devhelp2 +534 -0
  169. data/vendor/local/share/gtk-doc/html/graphene/home.png +0 -0
  170. data/vendor/local/share/gtk-doc/html/graphene/index.html +107 -0
  171. data/vendor/local/share/gtk-doc/html/graphene/ix03.html +1313 -0
  172. data/vendor/local/share/gtk-doc/html/graphene/ix04.html +582 -0
  173. data/vendor/local/share/gtk-doc/html/graphene/ix05.html +151 -0
  174. data/vendor/local/share/gtk-doc/html/graphene/ix06.html +34 -0
  175. data/vendor/local/share/gtk-doc/html/graphene/left-insensitive.png +0 -0
  176. data/vendor/local/share/gtk-doc/html/graphene/left.png +0 -0
  177. data/vendor/local/share/gtk-doc/html/{pango/api-index-1-40.html → graphene/object-tree.html} +14 -11
  178. data/vendor/local/share/gtk-doc/html/graphene/rectangle-intersection.png +0 -0
  179. data/vendor/local/share/gtk-doc/html/graphene/rectangle-union.png +0 -0
  180. data/vendor/local/share/gtk-doc/html/graphene/rectangle.png +0 -0
  181. data/vendor/local/share/gtk-doc/html/graphene/right-insensitive.png +0 -0
  182. data/vendor/local/share/gtk-doc/html/graphene/right.png +0 -0
  183. data/vendor/local/share/gtk-doc/html/graphene/style.css +479 -0
  184. data/vendor/local/share/gtk-doc/html/graphene/triangle-barycentric.png +0 -0
  185. data/vendor/local/share/gtk-doc/html/graphene/up-insensitive.png +0 -0
  186. data/vendor/local/share/gtk-doc/html/graphene/up.png +0 -0
  187. data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-1-2-3.html +2 -2
  188. data/vendor/local/share/gtk-doc/html/harfbuzz/{api-index-1-4-0.html → api-index-1-3-3.html} +2 -2
  189. data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-full.html +104 -0
  190. data/vendor/local/share/gtk-doc/html/harfbuzz/deprecated-api-index.html +9 -2
  191. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-Shaping.html +1 -1
  192. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-font.html +156 -40
  193. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-gobject.html +73 -0
  194. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-graphite2.html +1 -0
  195. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-layout.html +49 -0
  196. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-math.html +174 -177
  197. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape-plan.html +40 -0
  198. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-version.html +2 -2
  199. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +28 -10
  200. data/vendor/local/share/gtk-doc/html/harfbuzz/index.html +1 -1
  201. data/vendor/local/share/gtk-doc/html/harfbuzz/pt02.html +2 -2
  202. data/vendor/local/share/gtk-doc/html/pango/PangoEngineLang.html +2 -2
  203. data/vendor/local/share/gtk-doc/html/pango/PangoEngineShape.html +2 -2
  204. data/vendor/local/share/gtk-doc/html/pango/PangoFcDecoder.html +1 -1
  205. data/vendor/local/share/gtk-doc/html/pango/PangoFcFont.html +1 -1
  206. data/vendor/local/share/gtk-doc/html/pango/PangoFcFontMap.html +3 -3
  207. data/vendor/local/share/gtk-doc/html/pango/PangoMarkupFormat.html +1 -1
  208. data/vendor/local/share/gtk-doc/html/pango/PangoRenderer.html +2 -2
  209. data/vendor/local/share/gtk-doc/html/pango/annotation-glossary.html +1 -1
  210. data/vendor/local/share/gtk-doc/html/pango/api-index-full.html +1 -1
  211. data/vendor/local/share/gtk-doc/html/pango/index.html +2 -23
  212. data/vendor/local/share/gtk-doc/html/pango/lowlevel.html +1 -1
  213. data/vendor/local/share/gtk-doc/html/pango/pango-Bidirectional-Text.html +1 -1
  214. data/vendor/local/share/gtk-doc/html/pango/pango-Cairo-Rendering.html +69 -69
  215. data/vendor/local/share/gtk-doc/html/pango/pango-CoreText-Fonts.html +1 -1
  216. data/vendor/local/share/gtk-doc/html/pango/pango-Coverage-Maps.html +1 -1
  217. data/vendor/local/share/gtk-doc/html/pango/pango-Engines.html +5 -1
  218. data/vendor/local/share/gtk-doc/html/pango/pango-Fonts.html +5 -4
  219. data/vendor/local/share/gtk-doc/html/pango/pango-FreeType-Fonts-and-Rendering.html +8 -4
  220. data/vendor/local/share/gtk-doc/html/pango/pango-Glyph-Storage.html +3 -3
  221. data/vendor/local/share/gtk-doc/html/pango/pango-Layout-Objects.html +4 -4
  222. data/vendor/local/share/gtk-doc/html/pango/pango-Miscellaneous-Utilities.html +1 -1
  223. data/vendor/local/share/gtk-doc/html/pango/pango-Modules.html +3 -1
  224. data/vendor/local/share/gtk-doc/html/pango/pango-OpenType-Font-Handling.html +1 -1
  225. data/vendor/local/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html +3 -3
  226. data/vendor/local/share/gtk-doc/html/pango/pango-Tab-Stops.html +1 -1
  227. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Attributes.html +1 -1
  228. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Processing.html +3 -3
  229. data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +3 -3
  230. data/vendor/local/share/gtk-doc/html/pango/pango-Vertical-Text.html +1 -1
  231. data/vendor/local/share/gtk-doc/html/pango/pango-Win32-Fonts-and-Rendering.html +3 -3
  232. data/vendor/local/share/gtk-doc/html/pango/pango-Xft-Fonts-and-Rendering.html +1 -1
  233. data/vendor/local/share/gtk-doc/html/pango/pango-hierarchy.html +1 -1
  234. data/vendor/local/share/gtk-doc/html/pango/pango.html +1 -1
  235. data/vendor/local/share/gtk-doc/html/pango/rendering.html +1 -1
  236. data/vendor/local/share/man/man1/pango-view.1 +2 -2
  237. metadata +119 -78
  238. data/README +0 -32
  239. data/ext/pango/rbpango.c +0 -356
  240. data/ext/pango/rbpango.h +0 -95
  241. data/ext/pango/rbpangoanalysis.c +0 -218
  242. data/ext/pango/rbpangoattribute.c +0 -506
  243. data/ext/pango/rbpangoattriterator.c +0 -141
  244. data/ext/pango/rbpangoattrlist.c +0 -101
  245. data/ext/pango/rbpangocairo.c +0 -122
  246. data/ext/pango/rbpangocairocontext.c +0 -131
  247. data/ext/pango/rbpangocolor.c +0 -120
  248. data/ext/pango/rbpangocontext.c +0 -344
  249. data/ext/pango/rbpangocoverage.c +0 -106
  250. data/ext/pango/rbpangoengine.c +0 -73
  251. data/ext/pango/rbpangofont.c +0 -110
  252. data/ext/pango/rbpangofontdescription.c +0 -282
  253. data/ext/pango/rbpangofontface.c +0 -73
  254. data/ext/pango/rbpangofontfamily.c +0 -79
  255. data/ext/pango/rbpangofontmap.c +0 -102
  256. data/ext/pango/rbpangofontmetrics.c +0 -85
  257. data/ext/pango/rbpangofontset.c +0 -69
  258. data/ext/pango/rbpangofontsetsimple.c +0 -60
  259. data/ext/pango/rbpangoglyphinfo.c +0 -123
  260. data/ext/pango/rbpangoglyphitem.c +0 -125
  261. data/ext/pango/rbpangoglyphstring.c +0 -151
  262. data/ext/pango/rbpangogravity.c +0 -54
  263. data/ext/pango/rbpangoitem.c +0 -95
  264. data/ext/pango/rbpangolanguage.c +0 -94
  265. data/ext/pango/rbpangolayout.c +0 -583
  266. data/ext/pango/rbpangolayoutiter.c +0 -189
  267. data/ext/pango/rbpangolayoutline.c +0 -243
  268. data/ext/pango/rbpangologattr.c +0 -109
  269. data/ext/pango/rbpangomatrix.c +0 -143
  270. data/ext/pango/rbpangoprivate.h +0 -49
  271. data/ext/pango/rbpangorectangle.c +0 -170
  272. data/ext/pango/rbpangorenderer.c +0 -193
  273. data/ext/pango/rbpangoscript.c +0 -84
  274. data/ext/pango/rbpangoscriptiter.c +0 -92
  275. data/ext/pango/rbpangotabarray.c +0 -128
  276. data/sample/attribute.rb +0 -82
  277. data/sample/break.rb +0 -28
  278. data/sample/gdk_layout.rb +0 -27
  279. data/sample/glyphstring.rb +0 -61
  280. data/sample/item.rb +0 -37
  281. data/sample/label.rb +0 -23
  282. data/sample/layout.rb +0 -102
  283. data/sample/pango_cairo.rb +0 -66
  284. data/sample/parse.rb +0 -33
  285. data/sample/sample.txt +0 -10
  286. data/sample/script.rb +0 -23
  287. data/vendor/local/share/gtk-doc/html/pango/api-index-1-10.html +0 -134
  288. data/vendor/local/share/gtk-doc/html/pango/api-index-1-12.html +0 -48
  289. data/vendor/local/share/gtk-doc/html/pango/api-index-1-14.html +0 -63
  290. data/vendor/local/share/gtk-doc/html/pango/api-index-1-16.html +0 -227
  291. data/vendor/local/share/gtk-doc/html/pango/api-index-1-18.html +0 -151
  292. data/vendor/local/share/gtk-doc/html/pango/api-index-1-2.html +0 -121
  293. data/vendor/local/share/gtk-doc/html/pango/api-index-1-20.html +0 -86
  294. data/vendor/local/share/gtk-doc/html/pango/api-index-1-22.html +0 -123
  295. data/vendor/local/share/gtk-doc/html/pango/api-index-1-24.html +0 -96
  296. data/vendor/local/share/gtk-doc/html/pango/api-index-1-26.html +0 -45
  297. data/vendor/local/share/gtk-doc/html/pango/api-index-1-30.html +0 -38
  298. data/vendor/local/share/gtk-doc/html/pango/api-index-1-31-0.html +0 -38
  299. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32-4.html +0 -52
  300. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32.html +0 -41
  301. data/vendor/local/share/gtk-doc/html/pango/api-index-1-34.html +0 -38
  302. data/vendor/local/share/gtk-doc/html/pango/api-index-1-38.html +0 -79
  303. data/vendor/local/share/gtk-doc/html/pango/api-index-1-4.html +0 -200
  304. data/vendor/local/share/gtk-doc/html/pango/api-index-1-6.html +0 -164
  305. data/vendor/local/share/gtk-doc/html/pango/api-index-1-8.html +0 -170
  306. data/vendor/local/share/gtk-doc/html/pango/api-index-deprecated.html +0 -441
@@ -0,0 +1,1483 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>Rectangle: Graphene Reference Manual</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7
+ <link rel="home" href="index.html" title="Graphene Reference Manual">
8
+ <link rel="up" href="ch01.html" title="Graphene">
9
+ <link rel="prev" href="graphene-Size.html" title="Size">
10
+ <link rel="next" href="graphene-Quad.html" title="Quad">
11
+ <meta name="generator" content="GTK-Doc V1.25 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ </head>
14
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
16
+ <td width="100%" align="left" class="shortcuts">
17
+ <a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
18
+ <a href="#graphene-Rectangle.description" class="shortcut">Description</a></span>
19
+ </td>
20
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
21
+ <td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
22
+ <td><a accesskey="p" href="graphene-Size.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
23
+ <td><a accesskey="n" href="graphene-Quad.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
24
+ </tr></table>
25
+ <div class="refentry">
26
+ <a name="graphene-Rectangle"></a><div class="titlepage"></div>
27
+ <div class="refnamediv"><table width="100%"><tr>
28
+ <td valign="top">
29
+ <h2><span class="refentrytitle"><a name="graphene-Rectangle.top_of_page"></a>Rectangle</span></h2>
30
+ <p>Rectangle — Rectangular shape type</p>
31
+ </td>
32
+ <td class="gallery_image" valign="top" align="right"></td>
33
+ </tr></table></div>
34
+ <div class="refsect1">
35
+ <a name="graphene-Rectangle.functions"></a><h2>Functions</h2>
36
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
37
+ <colgroup>
38
+ <col width="150px" class="functions_return">
39
+ <col class="functions_name">
40
+ </colgroup>
41
+ <tbody>
42
+ <tr>
43
+ <td class="define_keyword">#define</td>
44
+ <td class="function_name">
45
+ <a class="link" href="graphene-Rectangle.html#GRAPHENE-RECT-INIT:CAPS" title="GRAPHENE_RECT_INIT()">GRAPHENE_RECT_INIT</a><span class="c_punctuation">()</span>
46
+ </td>
47
+ </tr>
48
+ <tr>
49
+ <td class="function_type">
50
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
51
+ </td>
52
+ <td class="function_name">
53
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-alloc" title="graphene_rect_alloc ()">graphene_rect_alloc</a> <span class="c_punctuation">()</span>
54
+ </td>
55
+ </tr>
56
+ <tr>
57
+ <td class="function_type">
58
+ <span class="returnvalue">void</span>
59
+ </td>
60
+ <td class="function_name">
61
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-free" title="graphene_rect_free ()">graphene_rect_free</a> <span class="c_punctuation">()</span>
62
+ </td>
63
+ </tr>
64
+ <tr>
65
+ <td class="function_type">
66
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
67
+ </td>
68
+ <td class="function_name">
69
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-init" title="graphene_rect_init ()">graphene_rect_init</a> <span class="c_punctuation">()</span>
70
+ </td>
71
+ </tr>
72
+ <tr>
73
+ <td class="function_type">
74
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
75
+ </td>
76
+ <td class="function_name">
77
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-init-from-rect" title="graphene_rect_init_from_rect ()">graphene_rect_init_from_rect</a> <span class="c_punctuation">()</span>
78
+ </td>
79
+ </tr>
80
+ <tr>
81
+ <td class="function_type">
82
+ <span class="returnvalue">bool</span>
83
+ </td>
84
+ <td class="function_name">
85
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-equal" title="graphene_rect_equal ()">graphene_rect_equal</a> <span class="c_punctuation">()</span>
86
+ </td>
87
+ </tr>
88
+ <tr>
89
+ <td class="function_type">
90
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
91
+ </td>
92
+ <td class="function_name">
93
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-normalize" title="graphene_rect_normalize ()">graphene_rect_normalize</a> <span class="c_punctuation">()</span>
94
+ </td>
95
+ </tr>
96
+ <tr>
97
+ <td class="function_type">
98
+ <span class="returnvalue">void</span>
99
+ </td>
100
+ <td class="function_name">
101
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-normalize-r" title="graphene_rect_normalize_r ()">graphene_rect_normalize_r</a> <span class="c_punctuation">()</span>
102
+ </td>
103
+ </tr>
104
+ <tr>
105
+ <td class="function_type">
106
+ <span class="returnvalue">void</span>
107
+ </td>
108
+ <td class="function_name">
109
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-center" title="graphene_rect_get_center ()">graphene_rect_get_center</a> <span class="c_punctuation">()</span>
110
+ </td>
111
+ </tr>
112
+ <tr>
113
+ <td class="function_type">
114
+ <span class="returnvalue">void</span>
115
+ </td>
116
+ <td class="function_name">
117
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-top-left" title="graphene_rect_get_top_left ()">graphene_rect_get_top_left</a> <span class="c_punctuation">()</span>
118
+ </td>
119
+ </tr>
120
+ <tr>
121
+ <td class="function_type">
122
+ <span class="returnvalue">void</span>
123
+ </td>
124
+ <td class="function_name">
125
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-top-right" title="graphene_rect_get_top_right ()">graphene_rect_get_top_right</a> <span class="c_punctuation">()</span>
126
+ </td>
127
+ </tr>
128
+ <tr>
129
+ <td class="function_type">
130
+ <span class="returnvalue">void</span>
131
+ </td>
132
+ <td class="function_name">
133
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-bottom-right" title="graphene_rect_get_bottom_right ()">graphene_rect_get_bottom_right</a> <span class="c_punctuation">()</span>
134
+ </td>
135
+ </tr>
136
+ <tr>
137
+ <td class="function_type">
138
+ <span class="returnvalue">void</span>
139
+ </td>
140
+ <td class="function_name">
141
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-bottom-left" title="graphene_rect_get_bottom_left ()">graphene_rect_get_bottom_left</a> <span class="c_punctuation">()</span>
142
+ </td>
143
+ </tr>
144
+ <tr>
145
+ <td class="function_type">
146
+ <span class="returnvalue">float</span>
147
+ </td>
148
+ <td class="function_name">
149
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-x" title="graphene_rect_get_x ()">graphene_rect_get_x</a> <span class="c_punctuation">()</span>
150
+ </td>
151
+ </tr>
152
+ <tr>
153
+ <td class="function_type">
154
+ <span class="returnvalue">float</span>
155
+ </td>
156
+ <td class="function_name">
157
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-y" title="graphene_rect_get_y ()">graphene_rect_get_y</a> <span class="c_punctuation">()</span>
158
+ </td>
159
+ </tr>
160
+ <tr>
161
+ <td class="function_type">
162
+ <span class="returnvalue">float</span>
163
+ </td>
164
+ <td class="function_name">
165
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-width" title="graphene_rect_get_width ()">graphene_rect_get_width</a> <span class="c_punctuation">()</span>
166
+ </td>
167
+ </tr>
168
+ <tr>
169
+ <td class="function_type">
170
+ <span class="returnvalue">float</span>
171
+ </td>
172
+ <td class="function_name">
173
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-height" title="graphene_rect_get_height ()">graphene_rect_get_height</a> <span class="c_punctuation">()</span>
174
+ </td>
175
+ </tr>
176
+ <tr>
177
+ <td class="function_type">
178
+ <span class="returnvalue">void</span>
179
+ </td>
180
+ <td class="function_name">
181
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-get-vertices" title="graphene_rect_get_vertices ()">graphene_rect_get_vertices</a> <span class="c_punctuation">()</span>
182
+ </td>
183
+ </tr>
184
+ <tr>
185
+ <td class="function_type">
186
+ <span class="returnvalue">void</span>
187
+ </td>
188
+ <td class="function_name">
189
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-union" title="graphene_rect_union ()">graphene_rect_union</a> <span class="c_punctuation">()</span>
190
+ </td>
191
+ </tr>
192
+ <tr>
193
+ <td class="function_type">
194
+ <span class="returnvalue">bool</span>
195
+ </td>
196
+ <td class="function_name">
197
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-intersection" title="graphene_rect_intersection ()">graphene_rect_intersection</a> <span class="c_punctuation">()</span>
198
+ </td>
199
+ </tr>
200
+ <tr>
201
+ <td class="function_type">
202
+ <span class="returnvalue">bool</span>
203
+ </td>
204
+ <td class="function_name">
205
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-contains-point" title="graphene_rect_contains_point ()">graphene_rect_contains_point</a> <span class="c_punctuation">()</span>
206
+ </td>
207
+ </tr>
208
+ <tr>
209
+ <td class="function_type">
210
+ <span class="returnvalue">bool</span>
211
+ </td>
212
+ <td class="function_name">
213
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-contains-rect" title="graphene_rect_contains_rect ()">graphene_rect_contains_rect</a> <span class="c_punctuation">()</span>
214
+ </td>
215
+ </tr>
216
+ <tr>
217
+ <td class="function_type">
218
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
219
+ </td>
220
+ <td class="function_name">
221
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-offset" title="graphene_rect_offset ()">graphene_rect_offset</a> <span class="c_punctuation">()</span>
222
+ </td>
223
+ </tr>
224
+ <tr>
225
+ <td class="function_type">
226
+ <span class="returnvalue">void</span>
227
+ </td>
228
+ <td class="function_name">
229
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-offset-r" title="graphene_rect_offset_r ()">graphene_rect_offset_r</a> <span class="c_punctuation">()</span>
230
+ </td>
231
+ </tr>
232
+ <tr>
233
+ <td class="function_type">
234
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
235
+ </td>
236
+ <td class="function_name">
237
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-inset" title="graphene_rect_inset ()">graphene_rect_inset</a> <span class="c_punctuation">()</span>
238
+ </td>
239
+ </tr>
240
+ <tr>
241
+ <td class="function_type">
242
+ <span class="returnvalue">void</span>
243
+ </td>
244
+ <td class="function_name">
245
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-inset-r" title="graphene_rect_inset_r ()">graphene_rect_inset_r</a> <span class="c_punctuation">()</span>
246
+ </td>
247
+ </tr>
248
+ <tr>
249
+ <td class="function_type">
250
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
251
+ </td>
252
+ <td class="function_name">
253
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-round-to-pixel" title="graphene_rect_round_to_pixel ()">graphene_rect_round_to_pixel</a> <span class="c_punctuation">()</span>
254
+ </td>
255
+ </tr>
256
+ <tr>
257
+ <td class="function_type">
258
+ <span class="returnvalue">void</span>
259
+ </td>
260
+ <td class="function_name">
261
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-round" title="graphene_rect_round ()">graphene_rect_round</a> <span class="c_punctuation">()</span>
262
+ </td>
263
+ </tr>
264
+ <tr>
265
+ <td class="function_type">
266
+ <span class="returnvalue">void</span>
267
+ </td>
268
+ <td class="function_name">
269
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-expand" title="graphene_rect_expand ()">graphene_rect_expand</a> <span class="c_punctuation">()</span>
270
+ </td>
271
+ </tr>
272
+ <tr>
273
+ <td class="function_type">
274
+ <span class="returnvalue">void</span>
275
+ </td>
276
+ <td class="function_name">
277
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-interpolate" title="graphene_rect_interpolate ()">graphene_rect_interpolate</a> <span class="c_punctuation">()</span>
278
+ </td>
279
+ </tr>
280
+ <tr>
281
+ <td class="function_type">const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
282
+ </td>
283
+ <td class="function_name">
284
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-zero" title="graphene_rect_zero ()">graphene_rect_zero</a> <span class="c_punctuation">()</span>
285
+ </td>
286
+ </tr>
287
+ </tbody>
288
+ </table></div>
289
+ </div>
290
+ <div class="refsect1">
291
+ <a name="graphene-Rectangle.other"></a><h2>Types and Values</h2>
292
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
293
+ <colgroup>
294
+ <col width="150px" class="name">
295
+ <col class="description">
296
+ </colgroup>
297
+ <tbody><tr>
298
+ <td class="datatype_keyword"> </td>
299
+ <td class="function_name"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t">graphene_rect_t</a></td>
300
+ </tr></tbody>
301
+ </table></div>
302
+ </div>
303
+ <div class="refsect1">
304
+ <a name="graphene-Rectangle.includes"></a><h2>Includes</h2>
305
+ <pre class="synopsis">#include &lt;graphene.h&gt;
306
+ </pre>
307
+ </div>
308
+ <div class="refsect1">
309
+ <a name="graphene-Rectangle.description"></a><h2>Description</h2>
310
+ <p><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> is a type representing a rectangle through an origin
311
+ <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> point and a <a class="link" href="graphene-Size.html#graphene-size-t" title="graphene_size_t"><span class="type">graphene_size_t</span></a> size.</p>
312
+ <p><span class="inlinemediaobject"><img src="rectangle.png"></span></p>
313
+ <p>Operations on a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> will normalize the rectangle, to
314
+ ensure that the origin is always the top-left corner of the rectangle
315
+ and that the size is always positive.</p>
316
+ </div>
317
+ <div class="refsect1">
318
+ <a name="graphene-Rectangle.functions_details"></a><h2>Functions</h2>
319
+ <div class="refsect2">
320
+ <a name="GRAPHENE-RECT-INIT:CAPS"></a><h3>GRAPHENE_RECT_INIT()</h3>
321
+ <pre class="programlisting">#define GRAPHENE_RECT_INIT(_x,_y,_w,_h)</pre>
322
+ <p>Initializes a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> when declaring it.</p>
323
+ <div class="refsect3">
324
+ <a name="GRAPHENE-RECT-INIT.parameters"></a><h4>Parameters</h4>
325
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
326
+ <colgroup>
327
+ <col width="150px" class="parameters_name">
328
+ <col class="parameters_description">
329
+ <col width="200px" class="parameters_annotations">
330
+ </colgroup>
331
+ <tbody>
332
+ <tr>
333
+ <td class="parameter_name"><p>_x</p></td>
334
+ <td class="parameter_description"><p>the X coordinate of the origin</p></td>
335
+ <td class="parameter_annotations"> </td>
336
+ </tr>
337
+ <tr>
338
+ <td class="parameter_name"><p>_y</p></td>
339
+ <td class="parameter_description"><p>the Y coordinate of the origin</p></td>
340
+ <td class="parameter_annotations"> </td>
341
+ </tr>
342
+ <tr>
343
+ <td class="parameter_name"><p>_w</p></td>
344
+ <td class="parameter_description"><p>the width</p></td>
345
+ <td class="parameter_annotations"> </td>
346
+ </tr>
347
+ <tr>
348
+ <td class="parameter_name"><p>_h</p></td>
349
+ <td class="parameter_description"><p>the height</p></td>
350
+ <td class="parameter_annotations"> </td>
351
+ </tr>
352
+ </tbody>
353
+ </table></div>
354
+ </div>
355
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
356
+ </div>
357
+ <hr>
358
+ <div class="refsect2">
359
+ <a name="graphene-rect-alloc"></a><h3>graphene_rect_alloc ()</h3>
360
+ <pre class="programlisting"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
361
+ graphene_rect_alloc (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
362
+ <p>Allocates a new <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a>.</p>
363
+ <p>The contents of the returned rectangle are undefined.</p>
364
+ <div class="refsect3">
365
+ <a name="graphene-rect-alloc.returns"></a><h4>Returns</h4>
366
+ <p> the newly allocated rectangle. </p>
367
+ <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
368
+ </div>
369
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
370
+ </div>
371
+ <hr>
372
+ <div class="refsect2">
373
+ <a name="graphene-rect-free"></a><h3>graphene_rect_free ()</h3>
374
+ <pre class="programlisting"><span class="returnvalue">void</span>
375
+ graphene_rect_free (<em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>);</pre>
376
+ <p>Frees the resources allocated by <a class="link" href="graphene-Rectangle.html#graphene-rect-alloc" title="graphene_rect_alloc ()"><code class="function">graphene_rect_alloc()</code></a>.</p>
377
+ <div class="refsect3">
378
+ <a name="graphene-rect-free.parameters"></a><h4>Parameters</h4>
379
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
380
+ <colgroup>
381
+ <col width="150px" class="parameters_name">
382
+ <col class="parameters_description">
383
+ <col width="200px" class="parameters_annotations">
384
+ </colgroup>
385
+ <tbody><tr>
386
+ <td class="parameter_name"><p>r</p></td>
387
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
388
+ <td class="parameter_annotations"> </td>
389
+ </tr></tbody>
390
+ </table></div>
391
+ </div>
392
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
393
+ </div>
394
+ <hr>
395
+ <div class="refsect2">
396
+ <a name="graphene-rect-init"></a><h3>graphene_rect_init ()</h3>
397
+ <pre class="programlisting"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
398
+ graphene_rect_init (<em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
399
+ <em class="parameter"><code><span class="type">float</span> x</code></em>,
400
+ <em class="parameter"><code><span class="type">float</span> y</code></em>,
401
+ <em class="parameter"><code><span class="type">float</span> width</code></em>,
402
+ <em class="parameter"><code><span class="type">float</span> height</code></em>);</pre>
403
+ <p>Initializes the given <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> with the given values.</p>
404
+ <p>This function will implicitly normalize the <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a>
405
+ before returning.</p>
406
+ <div class="refsect3">
407
+ <a name="graphene-rect-init.parameters"></a><h4>Parameters</h4>
408
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
409
+ <colgroup>
410
+ <col width="150px" class="parameters_name">
411
+ <col class="parameters_description">
412
+ <col width="200px" class="parameters_annotations">
413
+ </colgroup>
414
+ <tbody>
415
+ <tr>
416
+ <td class="parameter_name"><p>r</p></td>
417
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
418
+ <td class="parameter_annotations"> </td>
419
+ </tr>
420
+ <tr>
421
+ <td class="parameter_name"><p>x</p></td>
422
+ <td class="parameter_description"><p>the X coordinate of the <em class="parameter"><code>graphene_rect_t.origin</code></em>
423
+ </p></td>
424
+ <td class="parameter_annotations"> </td>
425
+ </tr>
426
+ <tr>
427
+ <td class="parameter_name"><p>y</p></td>
428
+ <td class="parameter_description"><p>the Y coordinate of the <em class="parameter"><code>graphene_rect_t.origin</code></em>
429
+ </p></td>
430
+ <td class="parameter_annotations"> </td>
431
+ </tr>
432
+ <tr>
433
+ <td class="parameter_name"><p>width</p></td>
434
+ <td class="parameter_description"><p>the width of the <em class="parameter"><code>graphene_rect_t.size</code></em>
435
+ </p></td>
436
+ <td class="parameter_annotations"> </td>
437
+ </tr>
438
+ <tr>
439
+ <td class="parameter_name"><p>height</p></td>
440
+ <td class="parameter_description"><p>the height of the <em class="parameter"><code>graphene_rect_t.size</code></em>
441
+ </p></td>
442
+ <td class="parameter_annotations"> </td>
443
+ </tr>
444
+ </tbody>
445
+ </table></div>
446
+ </div>
447
+ <div class="refsect3">
448
+ <a name="graphene-rect-init.returns"></a><h4>Returns</h4>
449
+ <p> the initialized rectangle. </p>
450
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
451
+ </div>
452
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
453
+ </div>
454
+ <hr>
455
+ <div class="refsect2">
456
+ <a name="graphene-rect-init-from-rect"></a><h3>graphene_rect_init_from_rect ()</h3>
457
+ <pre class="programlisting"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
458
+ graphene_rect_init_from_rect (<em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
459
+ <em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *src</code></em>);</pre>
460
+ <p>Initializes <em class="parameter"><code>r</code></em>
461
+ using the given <em class="parameter"><code>src</code></em>
462
+ rectangle.</p>
463
+ <p>This function will implicitly normalize the <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a>
464
+ before returning.</p>
465
+ <div class="refsect3">
466
+ <a name="graphene-rect-init-from-rect.parameters"></a><h4>Parameters</h4>
467
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
468
+ <colgroup>
469
+ <col width="150px" class="parameters_name">
470
+ <col class="parameters_description">
471
+ <col width="200px" class="parameters_annotations">
472
+ </colgroup>
473
+ <tbody>
474
+ <tr>
475
+ <td class="parameter_name"><p>r</p></td>
476
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
477
+ <td class="parameter_annotations"> </td>
478
+ </tr>
479
+ <tr>
480
+ <td class="parameter_name"><p>src</p></td>
481
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
482
+ <td class="parameter_annotations"> </td>
483
+ </tr>
484
+ </tbody>
485
+ </table></div>
486
+ </div>
487
+ <div class="refsect3">
488
+ <a name="graphene-rect-init-from-rect.returns"></a><h4>Returns</h4>
489
+ <p> the initialized rectangle. </p>
490
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
491
+ </div>
492
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
493
+ </div>
494
+ <hr>
495
+ <div class="refsect2">
496
+ <a name="graphene-rect-equal"></a><h3>graphene_rect_equal ()</h3>
497
+ <pre class="programlisting"><span class="returnvalue">bool</span>
498
+ graphene_rect_equal (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *a</code></em>,
499
+ <em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *b</code></em>);</pre>
500
+ <p>Checks whether the two given rectangle are equal.</p>
501
+ <div class="refsect3">
502
+ <a name="graphene-rect-equal.parameters"></a><h4>Parameters</h4>
503
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
504
+ <colgroup>
505
+ <col width="150px" class="parameters_name">
506
+ <col class="parameters_description">
507
+ <col width="200px" class="parameters_annotations">
508
+ </colgroup>
509
+ <tbody>
510
+ <tr>
511
+ <td class="parameter_name"><p>a</p></td>
512
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
513
+ <td class="parameter_annotations"> </td>
514
+ </tr>
515
+ <tr>
516
+ <td class="parameter_name"><p>b</p></td>
517
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
518
+ <td class="parameter_annotations"> </td>
519
+ </tr>
520
+ </tbody>
521
+ </table></div>
522
+ </div>
523
+ <div class="refsect3">
524
+ <a name="graphene-rect-equal.returns"></a><h4>Returns</h4>
525
+ <p> <code class="literal">true</code> if the rectangles are equal</p>
526
+ </div>
527
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
528
+ </div>
529
+ <hr>
530
+ <div class="refsect2">
531
+ <a name="graphene-rect-normalize"></a><h3>graphene_rect_normalize ()</h3>
532
+ <pre class="programlisting"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
533
+ graphene_rect_normalize (<em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>);</pre>
534
+ <p>Normalizes the passed rectangle.</p>
535
+ <p>This function ensures that the size of the rectangle is made of
536
+ positive values, and that the origin is the top-left corner of
537
+ the rectangle.</p>
538
+ <div class="refsect3">
539
+ <a name="graphene-rect-normalize.parameters"></a><h4>Parameters</h4>
540
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
541
+ <colgroup>
542
+ <col width="150px" class="parameters_name">
543
+ <col class="parameters_description">
544
+ <col width="200px" class="parameters_annotations">
545
+ </colgroup>
546
+ <tbody><tr>
547
+ <td class="parameter_name"><p>r</p></td>
548
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
549
+ <td class="parameter_annotations"> </td>
550
+ </tr></tbody>
551
+ </table></div>
552
+ </div>
553
+ <div class="refsect3">
554
+ <a name="graphene-rect-normalize.returns"></a><h4>Returns</h4>
555
+ <p> the normalized rectangle. </p>
556
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
557
+ </div>
558
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
559
+ </div>
560
+ <hr>
561
+ <div class="refsect2">
562
+ <a name="graphene-rect-normalize-r"></a><h3>graphene_rect_normalize_r ()</h3>
563
+ <pre class="programlisting"><span class="returnvalue">void</span>
564
+ graphene_rect_normalize_r (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
565
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
566
+ <p>Normalizes the passed rectangle.</p>
567
+ <p>This function ensures that the size of the rectangle is made of
568
+ positive values, and that the origin is in the top-left corner
569
+ of the rectangle.</p>
570
+ <div class="refsect3">
571
+ <a name="graphene-rect-normalize-r.parameters"></a><h4>Parameters</h4>
572
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
573
+ <colgroup>
574
+ <col width="150px" class="parameters_name">
575
+ <col class="parameters_description">
576
+ <col width="200px" class="parameters_annotations">
577
+ </colgroup>
578
+ <tbody>
579
+ <tr>
580
+ <td class="parameter_name"><p>r</p></td>
581
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
582
+ <td class="parameter_annotations"> </td>
583
+ </tr>
584
+ <tr>
585
+ <td class="parameter_name"><p>res</p></td>
586
+ <td class="parameter_description"><p> the return location for the
587
+ normalized rectangle. </p></td>
588
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
589
+ </tr>
590
+ </tbody>
591
+ </table></div>
592
+ </div>
593
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
594
+ </div>
595
+ <hr>
596
+ <div class="refsect2">
597
+ <a name="graphene-rect-get-center"></a><h3>graphene_rect_get_center ()</h3>
598
+ <pre class="programlisting"><span class="returnvalue">void</span>
599
+ graphene_rect_get_center (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
600
+ <em class="parameter"><code><a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> *p</code></em>);</pre>
601
+ <p>Retrieves the coordinates of the center of the given rectangle.</p>
602
+ <div class="refsect3">
603
+ <a name="graphene-rect-get-center.parameters"></a><h4>Parameters</h4>
604
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
605
+ <colgroup>
606
+ <col width="150px" class="parameters_name">
607
+ <col class="parameters_description">
608
+ <col width="200px" class="parameters_annotations">
609
+ </colgroup>
610
+ <tbody>
611
+ <tr>
612
+ <td class="parameter_name"><p>r</p></td>
613
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
614
+ <td class="parameter_annotations"> </td>
615
+ </tr>
616
+ <tr>
617
+ <td class="parameter_name"><p>p</p></td>
618
+ <td class="parameter_description"><p> return location for a <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a>. </p></td>
619
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
620
+ </tr>
621
+ </tbody>
622
+ </table></div>
623
+ </div>
624
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
625
+ </div>
626
+ <hr>
627
+ <div class="refsect2">
628
+ <a name="graphene-rect-get-top-left"></a><h3>graphene_rect_get_top_left ()</h3>
629
+ <pre class="programlisting"><span class="returnvalue">void</span>
630
+ graphene_rect_get_top_left (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
631
+ <em class="parameter"><code><a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> *p</code></em>);</pre>
632
+ <p>Retrieves the coordinates of the top-left corner of the given rectangle.</p>
633
+ <div class="refsect3">
634
+ <a name="graphene-rect-get-top-left.parameters"></a><h4>Parameters</h4>
635
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
636
+ <colgroup>
637
+ <col width="150px" class="parameters_name">
638
+ <col class="parameters_description">
639
+ <col width="200px" class="parameters_annotations">
640
+ </colgroup>
641
+ <tbody>
642
+ <tr>
643
+ <td class="parameter_name"><p>r</p></td>
644
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
645
+ <td class="parameter_annotations"> </td>
646
+ </tr>
647
+ <tr>
648
+ <td class="parameter_name"><p>p</p></td>
649
+ <td class="parameter_description"><p> return location for a <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a>. </p></td>
650
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
651
+ </tr>
652
+ </tbody>
653
+ </table></div>
654
+ </div>
655
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
656
+ </div>
657
+ <hr>
658
+ <div class="refsect2">
659
+ <a name="graphene-rect-get-top-right"></a><h3>graphene_rect_get_top_right ()</h3>
660
+ <pre class="programlisting"><span class="returnvalue">void</span>
661
+ graphene_rect_get_top_right (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
662
+ <em class="parameter"><code><a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> *p</code></em>);</pre>
663
+ <p>Retrieves the coordinates of the top-right corner of the given rectangle.</p>
664
+ <div class="refsect3">
665
+ <a name="graphene-rect-get-top-right.parameters"></a><h4>Parameters</h4>
666
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
667
+ <colgroup>
668
+ <col width="150px" class="parameters_name">
669
+ <col class="parameters_description">
670
+ <col width="200px" class="parameters_annotations">
671
+ </colgroup>
672
+ <tbody>
673
+ <tr>
674
+ <td class="parameter_name"><p>r</p></td>
675
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
676
+ <td class="parameter_annotations"> </td>
677
+ </tr>
678
+ <tr>
679
+ <td class="parameter_name"><p>p</p></td>
680
+ <td class="parameter_description"><p> return location for a <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a>. </p></td>
681
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
682
+ </tr>
683
+ </tbody>
684
+ </table></div>
685
+ </div>
686
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
687
+ </div>
688
+ <hr>
689
+ <div class="refsect2">
690
+ <a name="graphene-rect-get-bottom-right"></a><h3>graphene_rect_get_bottom_right ()</h3>
691
+ <pre class="programlisting"><span class="returnvalue">void</span>
692
+ graphene_rect_get_bottom_right (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
693
+ <em class="parameter"><code><a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> *p</code></em>);</pre>
694
+ <p>Retrieves the coordinates of the bottom-right corner of the given rectangle.</p>
695
+ <div class="refsect3">
696
+ <a name="graphene-rect-get-bottom-right.parameters"></a><h4>Parameters</h4>
697
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
698
+ <colgroup>
699
+ <col width="150px" class="parameters_name">
700
+ <col class="parameters_description">
701
+ <col width="200px" class="parameters_annotations">
702
+ </colgroup>
703
+ <tbody>
704
+ <tr>
705
+ <td class="parameter_name"><p>r</p></td>
706
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
707
+ <td class="parameter_annotations"> </td>
708
+ </tr>
709
+ <tr>
710
+ <td class="parameter_name"><p>p</p></td>
711
+ <td class="parameter_description"><p> return location for a <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a>. </p></td>
712
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
713
+ </tr>
714
+ </tbody>
715
+ </table></div>
716
+ </div>
717
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
718
+ </div>
719
+ <hr>
720
+ <div class="refsect2">
721
+ <a name="graphene-rect-get-bottom-left"></a><h3>graphene_rect_get_bottom_left ()</h3>
722
+ <pre class="programlisting"><span class="returnvalue">void</span>
723
+ graphene_rect_get_bottom_left (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
724
+ <em class="parameter"><code><a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> *p</code></em>);</pre>
725
+ <p>Retrieves the coordinates of the bottom-left corner of the given rectangle.</p>
726
+ <div class="refsect3">
727
+ <a name="graphene-rect-get-bottom-left.parameters"></a><h4>Parameters</h4>
728
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
729
+ <colgroup>
730
+ <col width="150px" class="parameters_name">
731
+ <col class="parameters_description">
732
+ <col width="200px" class="parameters_annotations">
733
+ </colgroup>
734
+ <tbody>
735
+ <tr>
736
+ <td class="parameter_name"><p>r</p></td>
737
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
738
+ <td class="parameter_annotations"> </td>
739
+ </tr>
740
+ <tr>
741
+ <td class="parameter_name"><p>p</p></td>
742
+ <td class="parameter_description"><p> return location for a <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a>. </p></td>
743
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
744
+ </tr>
745
+ </tbody>
746
+ </table></div>
747
+ </div>
748
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
749
+ </div>
750
+ <hr>
751
+ <div class="refsect2">
752
+ <a name="graphene-rect-get-x"></a><h3>graphene_rect_get_x ()</h3>
753
+ <pre class="programlisting"><span class="returnvalue">float</span>
754
+ graphene_rect_get_x (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>);</pre>
755
+ <p>Retrieves the normalized X coordinate of the origin of the given
756
+ rectangle.</p>
757
+ <div class="refsect3">
758
+ <a name="graphene-rect-get-x.parameters"></a><h4>Parameters</h4>
759
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
760
+ <colgroup>
761
+ <col width="150px" class="parameters_name">
762
+ <col class="parameters_description">
763
+ <col width="200px" class="parameters_annotations">
764
+ </colgroup>
765
+ <tbody><tr>
766
+ <td class="parameter_name"><p>r</p></td>
767
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
768
+ <td class="parameter_annotations"> </td>
769
+ </tr></tbody>
770
+ </table></div>
771
+ </div>
772
+ <div class="refsect3">
773
+ <a name="graphene-rect-get-x.returns"></a><h4>Returns</h4>
774
+ <p> the normalized X coordinate of the rectangle</p>
775
+ </div>
776
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
777
+ </div>
778
+ <hr>
779
+ <div class="refsect2">
780
+ <a name="graphene-rect-get-y"></a><h3>graphene_rect_get_y ()</h3>
781
+ <pre class="programlisting"><span class="returnvalue">float</span>
782
+ graphene_rect_get_y (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>);</pre>
783
+ <p>Retrieves the normalized Y coordinate of the origin of the given
784
+ rectangle.</p>
785
+ <div class="refsect3">
786
+ <a name="graphene-rect-get-y.parameters"></a><h4>Parameters</h4>
787
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
788
+ <colgroup>
789
+ <col width="150px" class="parameters_name">
790
+ <col class="parameters_description">
791
+ <col width="200px" class="parameters_annotations">
792
+ </colgroup>
793
+ <tbody><tr>
794
+ <td class="parameter_name"><p>r</p></td>
795
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
796
+ <td class="parameter_annotations"> </td>
797
+ </tr></tbody>
798
+ </table></div>
799
+ </div>
800
+ <div class="refsect3">
801
+ <a name="graphene-rect-get-y.returns"></a><h4>Returns</h4>
802
+ <p> the normalized Y coordinate of the rectangle</p>
803
+ </div>
804
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
805
+ </div>
806
+ <hr>
807
+ <div class="refsect2">
808
+ <a name="graphene-rect-get-width"></a><h3>graphene_rect_get_width ()</h3>
809
+ <pre class="programlisting"><span class="returnvalue">float</span>
810
+ graphene_rect_get_width (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>);</pre>
811
+ <p>Retrieves the normalized width of the given rectangle.</p>
812
+ <div class="refsect3">
813
+ <a name="graphene-rect-get-width.parameters"></a><h4>Parameters</h4>
814
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
815
+ <colgroup>
816
+ <col width="150px" class="parameters_name">
817
+ <col class="parameters_description">
818
+ <col width="200px" class="parameters_annotations">
819
+ </colgroup>
820
+ <tbody><tr>
821
+ <td class="parameter_name"><p>r</p></td>
822
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
823
+ <td class="parameter_annotations"> </td>
824
+ </tr></tbody>
825
+ </table></div>
826
+ </div>
827
+ <div class="refsect3">
828
+ <a name="graphene-rect-get-width.returns"></a><h4>Returns</h4>
829
+ <p> the normalized width of the rectangle</p>
830
+ </div>
831
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
832
+ </div>
833
+ <hr>
834
+ <div class="refsect2">
835
+ <a name="graphene-rect-get-height"></a><h3>graphene_rect_get_height ()</h3>
836
+ <pre class="programlisting"><span class="returnvalue">float</span>
837
+ graphene_rect_get_height (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>);</pre>
838
+ <p>Retrieves the normalized height of the given rectangle.</p>
839
+ <div class="refsect3">
840
+ <a name="graphene-rect-get-height.parameters"></a><h4>Parameters</h4>
841
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
842
+ <colgroup>
843
+ <col width="150px" class="parameters_name">
844
+ <col class="parameters_description">
845
+ <col width="200px" class="parameters_annotations">
846
+ </colgroup>
847
+ <tbody><tr>
848
+ <td class="parameter_name"><p>r</p></td>
849
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
850
+ <td class="parameter_annotations"> </td>
851
+ </tr></tbody>
852
+ </table></div>
853
+ </div>
854
+ <div class="refsect3">
855
+ <a name="graphene-rect-get-height.returns"></a><h4>Returns</h4>
856
+ <p> the normalized height of the rectangle</p>
857
+ </div>
858
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
859
+ </div>
860
+ <hr>
861
+ <div class="refsect2">
862
+ <a name="graphene-rect-get-vertices"></a><h3>graphene_rect_get_vertices ()</h3>
863
+ <pre class="programlisting"><span class="returnvalue">void</span>
864
+ graphene_rect_get_vertices (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
865
+ <em class="parameter"><code><a class="link" href="graphene-Vectors.html#graphene-vec2-t" title="graphene_vec2_t"><span class="type">graphene_vec2_t</span></a> vertices[]</code></em>);</pre>
866
+ <p>Computes the four vertices of a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a>.</p>
867
+ <div class="refsect3">
868
+ <a name="graphene-rect-get-vertices.parameters"></a><h4>Parameters</h4>
869
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
870
+ <colgroup>
871
+ <col width="150px" class="parameters_name">
872
+ <col class="parameters_description">
873
+ <col width="200px" class="parameters_annotations">
874
+ </colgroup>
875
+ <tbody>
876
+ <tr>
877
+ <td class="parameter_name"><p>r</p></td>
878
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
879
+ <td class="parameter_annotations"> </td>
880
+ </tr>
881
+ <tr>
882
+ <td class="parameter_name"><p>vertices</p></td>
883
+ <td class="parameter_description"><p> return location for an array
884
+ of 4 <a class="link" href="graphene-Vectors.html#graphene-vec2-t" title="graphene_vec2_t"><span class="type">graphene_vec2_t</span></a>. </p></td>
885
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> fixed-size=4]</span></td>
886
+ </tr>
887
+ </tbody>
888
+ </table></div>
889
+ </div>
890
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
891
+ </div>
892
+ <hr>
893
+ <div class="refsect2">
894
+ <a name="graphene-rect-union"></a><h3>graphene_rect_union ()</h3>
895
+ <pre class="programlisting"><span class="returnvalue">void</span>
896
+ graphene_rect_union (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *a</code></em>,
897
+ <em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *b</code></em>,
898
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
899
+ <p>Computes the union of the two given rectangles.</p>
900
+ <p><span class="inlinemediaobject"><img src="rectangle-union.png"></span></p>
901
+ <p>The union in the image above is the blue outline.</p>
902
+ <div class="refsect3">
903
+ <a name="graphene-rect-union.parameters"></a><h4>Parameters</h4>
904
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
905
+ <colgroup>
906
+ <col width="150px" class="parameters_name">
907
+ <col class="parameters_description">
908
+ <col width="200px" class="parameters_annotations">
909
+ </colgroup>
910
+ <tbody>
911
+ <tr>
912
+ <td class="parameter_name"><p>a</p></td>
913
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
914
+ <td class="parameter_annotations"> </td>
915
+ </tr>
916
+ <tr>
917
+ <td class="parameter_name"><p>b</p></td>
918
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
919
+ <td class="parameter_annotations"> </td>
920
+ </tr>
921
+ <tr>
922
+ <td class="parameter_name"><p>res</p></td>
923
+ <td class="parameter_description"><p> return location for a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a>. </p></td>
924
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
925
+ </tr>
926
+ </tbody>
927
+ </table></div>
928
+ </div>
929
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
930
+ </div>
931
+ <hr>
932
+ <div class="refsect2">
933
+ <a name="graphene-rect-intersection"></a><h3>graphene_rect_intersection ()</h3>
934
+ <pre class="programlisting"><span class="returnvalue">bool</span>
935
+ graphene_rect_intersection (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *a</code></em>,
936
+ <em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *b</code></em>,
937
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
938
+ <p>Computes the intersection of the two given rectangles.</p>
939
+ <p><span class="inlinemediaobject"><img src="rectangle-intersection.png"></span></p>
940
+ <p>The intersection in the image above is the blue outline.</p>
941
+ <p>If the two rectangles do not intersect, <em class="parameter"><code>res</code></em>
942
+ will contain
943
+ a degenerate rectangle with origin in (0, 0) and a size of 0.</p>
944
+ <div class="refsect3">
945
+ <a name="graphene-rect-intersection.parameters"></a><h4>Parameters</h4>
946
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
947
+ <colgroup>
948
+ <col width="150px" class="parameters_name">
949
+ <col class="parameters_description">
950
+ <col width="200px" class="parameters_annotations">
951
+ </colgroup>
952
+ <tbody>
953
+ <tr>
954
+ <td class="parameter_name"><p>a</p></td>
955
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
956
+ <td class="parameter_annotations"> </td>
957
+ </tr>
958
+ <tr>
959
+ <td class="parameter_name"><p>b</p></td>
960
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
961
+ <td class="parameter_annotations"> </td>
962
+ </tr>
963
+ <tr>
964
+ <td class="parameter_name"><p>res</p></td>
965
+ <td class="parameter_description"><p> return location for
966
+ a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a>. </p></td>
967
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>][<acronym title="NULL may be passed instead of a pointer to a location."><span class="acronym">optional</span></acronym>]</span></td>
968
+ </tr>
969
+ </tbody>
970
+ </table></div>
971
+ </div>
972
+ <div class="refsect3">
973
+ <a name="graphene-rect-intersection.returns"></a><h4>Returns</h4>
974
+ <p> <code class="literal">true</code> if the two rectangles intersect</p>
975
+ </div>
976
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
977
+ </div>
978
+ <hr>
979
+ <div class="refsect2">
980
+ <a name="graphene-rect-contains-point"></a><h3>graphene_rect_contains_point ()</h3>
981
+ <pre class="programlisting"><span class="returnvalue">bool</span>
982
+ graphene_rect_contains_point (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
983
+ <em class="parameter"><code>const <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> *p</code></em>);</pre>
984
+ <p>Checks whether a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> contains the given coordinates.</p>
985
+ <div class="refsect3">
986
+ <a name="graphene-rect-contains-point.parameters"></a><h4>Parameters</h4>
987
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
988
+ <colgroup>
989
+ <col width="150px" class="parameters_name">
990
+ <col class="parameters_description">
991
+ <col width="200px" class="parameters_annotations">
992
+ </colgroup>
993
+ <tbody>
994
+ <tr>
995
+ <td class="parameter_name"><p>r</p></td>
996
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
997
+ <td class="parameter_annotations"> </td>
998
+ </tr>
999
+ <tr>
1000
+ <td class="parameter_name"><p>p</p></td>
1001
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a></p></td>
1002
+ <td class="parameter_annotations"> </td>
1003
+ </tr>
1004
+ </tbody>
1005
+ </table></div>
1006
+ </div>
1007
+ <div class="refsect3">
1008
+ <a name="graphene-rect-contains-point.returns"></a><h4>Returns</h4>
1009
+ <p> <code class="literal">true</code> if the rectangle contains the point</p>
1010
+ </div>
1011
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
1012
+ </div>
1013
+ <hr>
1014
+ <div class="refsect2">
1015
+ <a name="graphene-rect-contains-rect"></a><h3>graphene_rect_contains_rect ()</h3>
1016
+ <pre class="programlisting"><span class="returnvalue">bool</span>
1017
+ graphene_rect_contains_rect (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *a</code></em>,
1018
+ <em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *b</code></em>);</pre>
1019
+ <p>Checks whether a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> fully contains the given
1020
+ rectangle.</p>
1021
+ <div class="refsect3">
1022
+ <a name="graphene-rect-contains-rect.parameters"></a><h4>Parameters</h4>
1023
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1024
+ <colgroup>
1025
+ <col width="150px" class="parameters_name">
1026
+ <col class="parameters_description">
1027
+ <col width="200px" class="parameters_annotations">
1028
+ </colgroup>
1029
+ <tbody>
1030
+ <tr>
1031
+ <td class="parameter_name"><p>a</p></td>
1032
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1033
+ <td class="parameter_annotations"> </td>
1034
+ </tr>
1035
+ <tr>
1036
+ <td class="parameter_name"><p>b</p></td>
1037
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1038
+ <td class="parameter_annotations"> </td>
1039
+ </tr>
1040
+ </tbody>
1041
+ </table></div>
1042
+ </div>
1043
+ <div class="refsect3">
1044
+ <a name="graphene-rect-contains-rect.returns"></a><h4>Returns</h4>
1045
+ <p> <code class="literal">true</code> if the rectangle <em class="parameter"><code>a</code></em>
1046
+ fully contains <em class="parameter"><code>b</code></em>
1047
+ </p>
1048
+ </div>
1049
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
1050
+ </div>
1051
+ <hr>
1052
+ <div class="refsect2">
1053
+ <a name="graphene-rect-offset"></a><h3>graphene_rect_offset ()</h3>
1054
+ <pre class="programlisting"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
1055
+ graphene_rect_offset (<em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
1056
+ <em class="parameter"><code><span class="type">float</span> d_x</code></em>,
1057
+ <em class="parameter"><code><span class="type">float</span> d_y</code></em>);</pre>
1058
+ <p>Offsets the origin by <em class="parameter"><code>d_x</code></em>
1059
+ and <em class="parameter"><code>d_y</code></em>
1060
+ .</p>
1061
+ <p>The size of the rectangle is unchanged.</p>
1062
+ <div class="refsect3">
1063
+ <a name="graphene-rect-offset.parameters"></a><h4>Parameters</h4>
1064
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1065
+ <colgroup>
1066
+ <col width="150px" class="parameters_name">
1067
+ <col class="parameters_description">
1068
+ <col width="200px" class="parameters_annotations">
1069
+ </colgroup>
1070
+ <tbody>
1071
+ <tr>
1072
+ <td class="parameter_name"><p>r</p></td>
1073
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1074
+ <td class="parameter_annotations"> </td>
1075
+ </tr>
1076
+ <tr>
1077
+ <td class="parameter_name"><p>d_x</p></td>
1078
+ <td class="parameter_description"><p>the horizontal offset</p></td>
1079
+ <td class="parameter_annotations"> </td>
1080
+ </tr>
1081
+ <tr>
1082
+ <td class="parameter_name"><p>d_y</p></td>
1083
+ <td class="parameter_description"><p>the vertical offset</p></td>
1084
+ <td class="parameter_annotations"> </td>
1085
+ </tr>
1086
+ </tbody>
1087
+ </table></div>
1088
+ </div>
1089
+ <div class="refsect3">
1090
+ <a name="graphene-rect-offset.returns"></a><h4>Returns</h4>
1091
+ <p> the offset rectangle. </p>
1092
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
1093
+ </div>
1094
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
1095
+ </div>
1096
+ <hr>
1097
+ <div class="refsect2">
1098
+ <a name="graphene-rect-offset-r"></a><h3>graphene_rect_offset_r ()</h3>
1099
+ <pre class="programlisting"><span class="returnvalue">void</span>
1100
+ graphene_rect_offset_r (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
1101
+ <em class="parameter"><code><span class="type">float</span> d_x</code></em>,
1102
+ <em class="parameter"><code><span class="type">float</span> d_y</code></em>,
1103
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
1104
+ <p>Offsets the origin of the given rectangle by <em class="parameter"><code>d_x</code></em>
1105
+ and <em class="parameter"><code>d_y</code></em>
1106
+ .</p>
1107
+ <p>The size of the rectangle is left unchanged.</p>
1108
+ <div class="refsect3">
1109
+ <a name="graphene-rect-offset-r.parameters"></a><h4>Parameters</h4>
1110
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1111
+ <colgroup>
1112
+ <col width="150px" class="parameters_name">
1113
+ <col class="parameters_description">
1114
+ <col width="200px" class="parameters_annotations">
1115
+ </colgroup>
1116
+ <tbody>
1117
+ <tr>
1118
+ <td class="parameter_name"><p>r</p></td>
1119
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1120
+ <td class="parameter_annotations"> </td>
1121
+ </tr>
1122
+ <tr>
1123
+ <td class="parameter_name"><p>d_x</p></td>
1124
+ <td class="parameter_description"><p>the horizontal offset</p></td>
1125
+ <td class="parameter_annotations"> </td>
1126
+ </tr>
1127
+ <tr>
1128
+ <td class="parameter_name"><p>d_y</p></td>
1129
+ <td class="parameter_description"><p>the vertical offset</p></td>
1130
+ <td class="parameter_annotations"> </td>
1131
+ </tr>
1132
+ <tr>
1133
+ <td class="parameter_name"><p>res</p></td>
1134
+ <td class="parameter_description"><p> return location for the offset
1135
+ rectangle. </p></td>
1136
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
1137
+ </tr>
1138
+ </tbody>
1139
+ </table></div>
1140
+ </div>
1141
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
1142
+ </div>
1143
+ <hr>
1144
+ <div class="refsect2">
1145
+ <a name="graphene-rect-inset"></a><h3>graphene_rect_inset ()</h3>
1146
+ <pre class="programlisting"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
1147
+ graphene_rect_inset (<em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
1148
+ <em class="parameter"><code><span class="type">float</span> d_x</code></em>,
1149
+ <em class="parameter"><code><span class="type">float</span> d_y</code></em>);</pre>
1150
+ <p>Changes the given rectangle to be smaller, or larger depending on the
1151
+ given inset parameters.</p>
1152
+ <p>To create an inset rectangle, use positive <em class="parameter"><code>d_x</code></em>
1153
+ or <em class="parameter"><code>d_y</code></em>
1154
+ values; to
1155
+ create a larger, encompassing rectangle, use negative <em class="parameter"><code>d_x</code></em>
1156
+ or <em class="parameter"><code>d_y</code></em>
1157
+
1158
+ values.</p>
1159
+ <p>The origin of the rectangle is offset by <em class="parameter"><code>d_x</code></em>
1160
+ and <em class="parameter"><code>d_y</code></em>
1161
+ , while the size
1162
+ is adjusted by <code class="literal">(2 * @d_x, 2 * @d_y)</code>. If <em class="parameter"><code>d_x</code></em>
1163
+ and <em class="parameter"><code>d_y</code></em>
1164
+ are positive
1165
+ values, the size of the rectangle is decreased; if <em class="parameter"><code>d_x</code></em>
1166
+ and <em class="parameter"><code>d_y</code></em>
1167
+ are
1168
+ negative values, the size of the rectangle is increased.</p>
1169
+ <p>If the size of the resulting inset rectangle has a negative width or
1170
+ height then the size will be set to zero.</p>
1171
+ <div class="refsect3">
1172
+ <a name="graphene-rect-inset.parameters"></a><h4>Parameters</h4>
1173
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1174
+ <colgroup>
1175
+ <col width="150px" class="parameters_name">
1176
+ <col class="parameters_description">
1177
+ <col width="200px" class="parameters_annotations">
1178
+ </colgroup>
1179
+ <tbody>
1180
+ <tr>
1181
+ <td class="parameter_name"><p>r</p></td>
1182
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1183
+ <td class="parameter_annotations"> </td>
1184
+ </tr>
1185
+ <tr>
1186
+ <td class="parameter_name"><p>d_x</p></td>
1187
+ <td class="parameter_description"><p>the horizontal inset</p></td>
1188
+ <td class="parameter_annotations"> </td>
1189
+ </tr>
1190
+ <tr>
1191
+ <td class="parameter_name"><p>d_y</p></td>
1192
+ <td class="parameter_description"><p>the vertical inset</p></td>
1193
+ <td class="parameter_annotations"> </td>
1194
+ </tr>
1195
+ </tbody>
1196
+ </table></div>
1197
+ </div>
1198
+ <div class="refsect3">
1199
+ <a name="graphene-rect-inset.returns"></a><h4>Returns</h4>
1200
+ <p> the inset rectangle. </p>
1201
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
1202
+ </div>
1203
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
1204
+ </div>
1205
+ <hr>
1206
+ <div class="refsect2">
1207
+ <a name="graphene-rect-inset-r"></a><h3>graphene_rect_inset_r ()</h3>
1208
+ <pre class="programlisting"><span class="returnvalue">void</span>
1209
+ graphene_rect_inset_r (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
1210
+ <em class="parameter"><code><span class="type">float</span> d_x</code></em>,
1211
+ <em class="parameter"><code><span class="type">float</span> d_y</code></em>,
1212
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
1213
+ <p>Changes the given rectangle to be smaller, or larger depending on the
1214
+ given inset parameters.</p>
1215
+ <p>To create an inset rectangle, use positive <em class="parameter"><code>d_x</code></em>
1216
+ or <em class="parameter"><code>d_y</code></em>
1217
+ values; to
1218
+ create a larger, encompassing rectangle, use negative <em class="parameter"><code>d_x</code></em>
1219
+ or <em class="parameter"><code>d_y</code></em>
1220
+
1221
+ values.</p>
1222
+ <p>The origin of the rectangle is offset by <em class="parameter"><code>d_x</code></em>
1223
+ and <em class="parameter"><code>d_y</code></em>
1224
+ , while the size
1225
+ is adjusted by <code class="literal">(2 * @d_x, 2 * @d_y)</code>. If <em class="parameter"><code>d_x</code></em>
1226
+ and <em class="parameter"><code>d_y</code></em>
1227
+ are positive
1228
+ values, the size of the rectangle is decreased; if <em class="parameter"><code>d_x</code></em>
1229
+ and <em class="parameter"><code>d_y</code></em>
1230
+ are
1231
+ negative values, the size of the rectangle is increased.</p>
1232
+ <p>If the size of the resulting inset rectangle has a negative width or
1233
+ height then the size will be set to zero.</p>
1234
+ <div class="refsect3">
1235
+ <a name="graphene-rect-inset-r.parameters"></a><h4>Parameters</h4>
1236
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1237
+ <colgroup>
1238
+ <col width="150px" class="parameters_name">
1239
+ <col class="parameters_description">
1240
+ <col width="200px" class="parameters_annotations">
1241
+ </colgroup>
1242
+ <tbody>
1243
+ <tr>
1244
+ <td class="parameter_name"><p>r</p></td>
1245
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1246
+ <td class="parameter_annotations"> </td>
1247
+ </tr>
1248
+ <tr>
1249
+ <td class="parameter_name"><p>d_x</p></td>
1250
+ <td class="parameter_description"><p>the horizontal inset</p></td>
1251
+ <td class="parameter_annotations"> </td>
1252
+ </tr>
1253
+ <tr>
1254
+ <td class="parameter_name"><p>d_y</p></td>
1255
+ <td class="parameter_description"><p>the vertical inset</p></td>
1256
+ <td class="parameter_annotations"> </td>
1257
+ </tr>
1258
+ <tr>
1259
+ <td class="parameter_name"><p>res</p></td>
1260
+ <td class="parameter_description"><p> return location for the inset rectangle. </p></td>
1261
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
1262
+ </tr>
1263
+ </tbody>
1264
+ </table></div>
1265
+ </div>
1266
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
1267
+ </div>
1268
+ <hr>
1269
+ <div class="refsect2">
1270
+ <a name="graphene-rect-round-to-pixel"></a><h3>graphene_rect_round_to_pixel ()</h3>
1271
+ <pre class="programlisting"><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
1272
+ graphene_rect_round_to_pixel (<em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>);</pre>
1273
+ <div class="warning">
1274
+ <p><code class="literal">graphene_rect_round_to_pixel</code> has been deprecated since version 1.4 and should not be used in newly-written code.</p>
1275
+ <p>Use <a class="link" href="graphene-Rectangle.html#graphene-rect-round" title="graphene_rect_round ()"><code class="function">graphene_rect_round()</code></a> instead</p>
1276
+ </div>
1277
+ <p>Rounds the origin and the size of the given rectangle to
1278
+ their nearest integer values; the rounding is guaranteed
1279
+ to be large enough to contain the original rectangle.</p>
1280
+ <div class="refsect3">
1281
+ <a name="graphene-rect-round-to-pixel.parameters"></a><h4>Parameters</h4>
1282
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1283
+ <colgroup>
1284
+ <col width="150px" class="parameters_name">
1285
+ <col class="parameters_description">
1286
+ <col width="200px" class="parameters_annotations">
1287
+ </colgroup>
1288
+ <tbody><tr>
1289
+ <td class="parameter_name"><p>r</p></td>
1290
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1291
+ <td class="parameter_annotations"> </td>
1292
+ </tr></tbody>
1293
+ </table></div>
1294
+ </div>
1295
+ <div class="refsect3">
1296
+ <a name="graphene-rect-round-to-pixel.returns"></a><h4>Returns</h4>
1297
+ <p> the pixel-aligned rectangle. </p>
1298
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
1299
+ </div>
1300
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
1301
+ </div>
1302
+ <hr>
1303
+ <div class="refsect2">
1304
+ <a name="graphene-rect-round"></a><h3>graphene_rect_round ()</h3>
1305
+ <pre class="programlisting"><span class="returnvalue">void</span>
1306
+ graphene_rect_round (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
1307
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
1308
+ <p>Rounds the origin and size of the given rectangle to
1309
+ their nearest integer values; the rounding is guaranteed
1310
+ to be large enough to contain the original rectangle.</p>
1311
+ <p>This function is the equivalent of calling <code class="literal">floor</code> on
1312
+ the coordinates of the origin, and <code class="literal">ceil</code> on the size.</p>
1313
+ <div class="refsect3">
1314
+ <a name="graphene-rect-round.parameters"></a><h4>Parameters</h4>
1315
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1316
+ <colgroup>
1317
+ <col width="150px" class="parameters_name">
1318
+ <col class="parameters_description">
1319
+ <col width="200px" class="parameters_annotations">
1320
+ </colgroup>
1321
+ <tbody>
1322
+ <tr>
1323
+ <td class="parameter_name"><p>r</p></td>
1324
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1325
+ <td class="parameter_annotations"> </td>
1326
+ </tr>
1327
+ <tr>
1328
+ <td class="parameter_name"><p>res</p></td>
1329
+ <td class="parameter_description"><p> return location for the
1330
+ rounded rectangle. </p></td>
1331
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
1332
+ </tr>
1333
+ </tbody>
1334
+ </table></div>
1335
+ </div>
1336
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
1337
+ </div>
1338
+ <hr>
1339
+ <div class="refsect2">
1340
+ <a name="graphene-rect-expand"></a><h3>graphene_rect_expand ()</h3>
1341
+ <pre class="programlisting"><span class="returnvalue">void</span>
1342
+ graphene_rect_expand (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *r</code></em>,
1343
+ <em class="parameter"><code>const <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> *p</code></em>,
1344
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
1345
+ <p>Expands a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> to contain the given <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a>.</p>
1346
+ <div class="refsect3">
1347
+ <a name="graphene-rect-expand.parameters"></a><h4>Parameters</h4>
1348
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1349
+ <colgroup>
1350
+ <col width="150px" class="parameters_name">
1351
+ <col class="parameters_description">
1352
+ <col width="200px" class="parameters_annotations">
1353
+ </colgroup>
1354
+ <tbody>
1355
+ <tr>
1356
+ <td class="parameter_name"><p>r</p></td>
1357
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1358
+ <td class="parameter_annotations"> </td>
1359
+ </tr>
1360
+ <tr>
1361
+ <td class="parameter_name"><p>p</p></td>
1362
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a></p></td>
1363
+ <td class="parameter_annotations"> </td>
1364
+ </tr>
1365
+ <tr>
1366
+ <td class="parameter_name"><p>res</p></td>
1367
+ <td class="parameter_description"><p> return location for the expanded rectangle. </p></td>
1368
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
1369
+ </tr>
1370
+ </tbody>
1371
+ </table></div>
1372
+ </div>
1373
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
1374
+ </div>
1375
+ <hr>
1376
+ <div class="refsect2">
1377
+ <a name="graphene-rect-interpolate"></a><h3>graphene_rect_interpolate ()</h3>
1378
+ <pre class="programlisting"><span class="returnvalue">void</span>
1379
+ graphene_rect_interpolate (<em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *a</code></em>,
1380
+ <em class="parameter"><code>const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *b</code></em>,
1381
+ <em class="parameter"><code><span class="type">double</span> factor</code></em>,
1382
+ <em class="parameter"><code><a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> *res</code></em>);</pre>
1383
+ <p>Linearly interpolates the origin and size of the two given
1384
+ rectangles.</p>
1385
+ <div class="refsect3">
1386
+ <a name="graphene-rect-interpolate.parameters"></a><h4>Parameters</h4>
1387
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1388
+ <colgroup>
1389
+ <col width="150px" class="parameters_name">
1390
+ <col class="parameters_description">
1391
+ <col width="200px" class="parameters_annotations">
1392
+ </colgroup>
1393
+ <tbody>
1394
+ <tr>
1395
+ <td class="parameter_name"><p>a</p></td>
1396
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1397
+ <td class="parameter_annotations"> </td>
1398
+ </tr>
1399
+ <tr>
1400
+ <td class="parameter_name"><p>b</p></td>
1401
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a></p></td>
1402
+ <td class="parameter_annotations"> </td>
1403
+ </tr>
1404
+ <tr>
1405
+ <td class="parameter_name"><p>factor</p></td>
1406
+ <td class="parameter_description"><p>the linear interpolation factor</p></td>
1407
+ <td class="parameter_annotations"> </td>
1408
+ </tr>
1409
+ <tr>
1410
+ <td class="parameter_name"><p>res</p></td>
1411
+ <td class="parameter_description"><p> return location for the
1412
+ interpolated rectangle. </p></td>
1413
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span></td>
1414
+ </tr>
1415
+ </tbody>
1416
+ </table></div>
1417
+ </div>
1418
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
1419
+ </div>
1420
+ <hr>
1421
+ <div class="refsect2">
1422
+ <a name="graphene-rect-zero"></a><h3>graphene_rect_zero ()</h3>
1423
+ <pre class="programlisting">const <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="returnvalue">graphene_rect_t</span></a> *
1424
+ graphene_rect_zero (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
1425
+ <p>Returns a degenerate rectangle with origin fixed at (0, 0) and
1426
+ a size of 0, 0.</p>
1427
+ <div class="refsect3">
1428
+ <a name="graphene-rect-zero.returns"></a><h4>Returns</h4>
1429
+ <p> a fixed rectangle. </p>
1430
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
1431
+ </div>
1432
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
1433
+ </div>
1434
+ </div>
1435
+ <div class="refsect1">
1436
+ <a name="graphene-Rectangle.other_details"></a><h2>Types and Values</h2>
1437
+ <div class="refsect2">
1438
+ <a name="graphene-rect-t"></a><h3>graphene_rect_t</h3>
1439
+ <pre class="programlisting">typedef struct {
1440
+ graphene_point_t origin;
1441
+ graphene_size_t size;
1442
+ } graphene_rect_t;
1443
+ </pre>
1444
+ <p>The location and size of a rectangle region.</p>
1445
+ <p>The width and height of a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> can be negative; for instance,
1446
+ a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> with an origin of [ 0, 0 ] and a size of [ 10, 10 ] is
1447
+ equivalent to a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> with an origin of [ 10, 10 ] and a size
1448
+ of [ -10, -10 ].</p>
1449
+ <p>Application code can normalize rectangles using <a class="link" href="graphene-Rectangle.html#graphene-rect-normalize" title="graphene_rect_normalize ()"><code class="function">graphene_rect_normalize()</code></a>;
1450
+ this function will ensure that the width and height of a rectangle are
1451
+ positive values. All functions taking a <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> as an argument
1452
+ will internally operate on a normalized copy; all functions returning a
1453
+ <a class="link" href="graphene-Rectangle.html#graphene-rect-t" title="graphene_rect_t"><span class="type">graphene_rect_t</span></a> will always return a normalized rectangle.</p>
1454
+ <div class="refsect3">
1455
+ <a name="graphene-rect-t.members"></a><h4>Members</h4>
1456
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
1457
+ <colgroup>
1458
+ <col width="300px" class="struct_members_name">
1459
+ <col class="struct_members_description">
1460
+ <col width="200px" class="struct_members_annotations">
1461
+ </colgroup>
1462
+ <tbody>
1463
+ <tr>
1464
+ <td class="struct_member_name"><p><a class="link" href="graphene-Point.html#graphene-point-t" title="graphene_point_t"><span class="type">graphene_point_t</span></a> <em class="structfield"><code><a name="graphene-rect-t.origin"></a>origin</code></em>;</p></td>
1465
+ <td class="struct_member_description"><p>the coordinates of the origin of the rectangle</p></td>
1466
+ <td class="struct_member_annotations"> </td>
1467
+ </tr>
1468
+ <tr>
1469
+ <td class="struct_member_name"><p><a class="link" href="graphene-Size.html#graphene-size-t" title="graphene_size_t"><span class="type">graphene_size_t</span></a> <em class="structfield"><code><a name="graphene-rect-t.size"></a>size</code></em>;</p></td>
1470
+ <td class="struct_member_description"><p>the size of the rectangle</p></td>
1471
+ <td class="struct_member_annotations"> </td>
1472
+ </tr>
1473
+ </tbody>
1474
+ </table></div>
1475
+ </div>
1476
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
1477
+ </div>
1478
+ </div>
1479
+ </div>
1480
+ <div class="footer">
1481
+ <hr>Generated by GTK-Doc V1.25</div>
1482
+ </body>
1483
+ </html>