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,916 @@
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>Point3D: 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-Point.html" title="Point">
10
+ <link rel="next" href="graphene-Size.html" title="Size">
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-Point3D.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-Point.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
23
+ <td><a accesskey="n" href="graphene-Size.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-Point3D"></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-Point3D.top_of_page"></a>Point3D</span></h2>
30
+ <p>Point3D — A point with 3 coordinates</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-Point3D.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-Point3D.html#GRAPHENE-POINT3D-INIT:CAPS" title="GRAPHENE_POINT3D_INIT()">GRAPHENE_POINT3D_INIT</a><span class="c_punctuation">()</span>
46
+ </td>
47
+ </tr>
48
+ <tr>
49
+ <td class="function_type">
50
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
51
+ </td>
52
+ <td class="function_name">
53
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-alloc" title="graphene_point3d_alloc ()">graphene_point3d_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-Point3D.html#graphene-point3d-free" title="graphene_point3d_free ()">graphene_point3d_free</a> <span class="c_punctuation">()</span>
62
+ </td>
63
+ </tr>
64
+ <tr>
65
+ <td class="function_type">
66
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
67
+ </td>
68
+ <td class="function_name">
69
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-init" title="graphene_point3d_init ()">graphene_point3d_init</a> <span class="c_punctuation">()</span>
70
+ </td>
71
+ </tr>
72
+ <tr>
73
+ <td class="function_type">
74
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
75
+ </td>
76
+ <td class="function_name">
77
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-init-from-point" title="graphene_point3d_init_from_point ()">graphene_point3d_init_from_point</a> <span class="c_punctuation">()</span>
78
+ </td>
79
+ </tr>
80
+ <tr>
81
+ <td class="function_type">
82
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
83
+ </td>
84
+ <td class="function_name">
85
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-init-from-vec3" title="graphene_point3d_init_from_vec3 ()">graphene_point3d_init_from_vec3</a> <span class="c_punctuation">()</span>
86
+ </td>
87
+ </tr>
88
+ <tr>
89
+ <td class="function_type">
90
+ <span class="returnvalue">void</span>
91
+ </td>
92
+ <td class="function_name">
93
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-to-vec3" title="graphene_point3d_to_vec3 ()">graphene_point3d_to_vec3</a> <span class="c_punctuation">()</span>
94
+ </td>
95
+ </tr>
96
+ <tr>
97
+ <td class="function_type">
98
+ <span class="returnvalue">bool</span>
99
+ </td>
100
+ <td class="function_name">
101
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-equal" title="graphene_point3d_equal ()">graphene_point3d_equal</a> <span class="c_punctuation">()</span>
102
+ </td>
103
+ </tr>
104
+ <tr>
105
+ <td class="function_type">
106
+ <span class="returnvalue">bool</span>
107
+ </td>
108
+ <td class="function_name">
109
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-near" title="graphene_point3d_near ()">graphene_point3d_near</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-Point3D.html#graphene-point3d-scale" title="graphene_point3d_scale ()">graphene_point3d_scale</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-Point3D.html#graphene-point3d-cross" title="graphene_point3d_cross ()">graphene_point3d_cross</a> <span class="c_punctuation">()</span>
126
+ </td>
127
+ </tr>
128
+ <tr>
129
+ <td class="function_type">
130
+ <span class="returnvalue">float</span>
131
+ </td>
132
+ <td class="function_name">
133
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-dot" title="graphene_point3d_dot ()">graphene_point3d_dot</a> <span class="c_punctuation">()</span>
134
+ </td>
135
+ </tr>
136
+ <tr>
137
+ <td class="function_type">
138
+ <span class="returnvalue">float</span>
139
+ </td>
140
+ <td class="function_name">
141
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-length" title="graphene_point3d_length ()">graphene_point3d_length</a> <span class="c_punctuation">()</span>
142
+ </td>
143
+ </tr>
144
+ <tr>
145
+ <td class="function_type">
146
+ <span class="returnvalue">void</span>
147
+ </td>
148
+ <td class="function_name">
149
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-normalize" title="graphene_point3d_normalize ()">graphene_point3d_normalize</a> <span class="c_punctuation">()</span>
150
+ </td>
151
+ </tr>
152
+ <tr>
153
+ <td class="function_type">
154
+ <span class="returnvalue">void</span>
155
+ </td>
156
+ <td class="function_name">
157
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-normalize-viewport" title="graphene_point3d_normalize_viewport ()">graphene_point3d_normalize_viewport</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-Point3D.html#graphene-point3d-distance" title="graphene_point3d_distance ()">graphene_point3d_distance</a> <span class="c_punctuation">()</span>
166
+ </td>
167
+ </tr>
168
+ <tr>
169
+ <td class="function_type">
170
+ <span class="returnvalue">void</span>
171
+ </td>
172
+ <td class="function_name">
173
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-interpolate" title="graphene_point3d_interpolate ()">graphene_point3d_interpolate</a> <span class="c_punctuation">()</span>
174
+ </td>
175
+ </tr>
176
+ <tr>
177
+ <td class="function_type">const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
178
+ </td>
179
+ <td class="function_name">
180
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-zero" title="graphene_point3d_zero ()">graphene_point3d_zero</a> <span class="c_punctuation">()</span>
181
+ </td>
182
+ </tr>
183
+ </tbody>
184
+ </table></div>
185
+ </div>
186
+ <div class="refsect1">
187
+ <a name="graphene-Point3D.other"></a><h2>Types and Values</h2>
188
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
189
+ <colgroup>
190
+ <col width="150px" class="name">
191
+ <col class="description">
192
+ </colgroup>
193
+ <tbody>
194
+ <tr>
195
+ <td class="define_keyword">#define</td>
196
+ <td class="function_name"><a class="link" href="graphene-Point3D.html#GRAPHENE-POINT3D-INIT-ZERO:CAPS" title="GRAPHENE_POINT3D_INIT_ZERO">GRAPHENE_POINT3D_INIT_ZERO</a></td>
197
+ </tr>
198
+ <tr>
199
+ <td class="datatype_keyword"> </td>
200
+ <td class="function_name"><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t">graphene_point3d_t</a></td>
201
+ </tr>
202
+ </tbody>
203
+ </table></div>
204
+ </div>
205
+ <div class="refsect1">
206
+ <a name="graphene-Point3D.includes"></a><h2>Includes</h2>
207
+ <pre class="synopsis">#include &lt;graphene.h&gt;
208
+ </pre>
209
+ </div>
210
+ <div class="refsect1">
211
+ <a name="graphene-Point3D.description"></a><h2>Description</h2>
212
+ <p><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> is a data structure capable of describing a point with
213
+ three coordinates:</p>
214
+ <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
215
+ <li class="listitem"><p><em class="parameter"><code>graphene_point3d_t.x</code></em>
216
+ </p></li>
217
+ <li class="listitem"><p><em class="parameter"><code>graphene_point3d_t.y</code></em>
218
+ </p></li>
219
+ <li class="listitem"><p><em class="parameter"><code>graphene_point3d_t.z</code></em>
220
+ </p></li>
221
+ </ul></div>
222
+ </div>
223
+ <div class="refsect1">
224
+ <a name="graphene-Point3D.functions_details"></a><h2>Functions</h2>
225
+ <div class="refsect2">
226
+ <a name="GRAPHENE-POINT3D-INIT:CAPS"></a><h3>GRAPHENE_POINT3D_INIT()</h3>
227
+ <pre class="programlisting">#define GRAPHENE_POINT3D_INIT(_x,_y,_z) (graphene_point3d_t) { .x = (_x), .y = (_y), .z = (_z) }
228
+ </pre>
229
+ <p>Initializes a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> to the given coordinates when declaring it.</p>
230
+ <div class="refsect3">
231
+ <a name="GRAPHENE-POINT3D-INIT.parameters"></a><h4>Parameters</h4>
232
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
233
+ <colgroup>
234
+ <col width="150px" class="parameters_name">
235
+ <col class="parameters_description">
236
+ <col width="200px" class="parameters_annotations">
237
+ </colgroup>
238
+ <tbody>
239
+ <tr>
240
+ <td class="parameter_name"><p>_x</p></td>
241
+ <td class="parameter_description"><p>the X coordinate</p></td>
242
+ <td class="parameter_annotations"> </td>
243
+ </tr>
244
+ <tr>
245
+ <td class="parameter_name"><p>_y</p></td>
246
+ <td class="parameter_description"><p>the Y coordinate</p></td>
247
+ <td class="parameter_annotations"> </td>
248
+ </tr>
249
+ <tr>
250
+ <td class="parameter_name"><p>_z</p></td>
251
+ <td class="parameter_description"><p>the Z coordinate</p></td>
252
+ <td class="parameter_annotations"> </td>
253
+ </tr>
254
+ </tbody>
255
+ </table></div>
256
+ </div>
257
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
258
+ </div>
259
+ <hr>
260
+ <div class="refsect2">
261
+ <a name="graphene-point3d-alloc"></a><h3>graphene_point3d_alloc ()</h3>
262
+ <pre class="programlisting"><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
263
+ graphene_point3d_alloc (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
264
+ <p>Allocates a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> structure.</p>
265
+ <p><span class="annotation">[<acronym title="This symbol is a constructor, not a static method."><span class="acronym">constructor</span></acronym>]</span></p>
266
+ <div class="refsect3">
267
+ <a name="graphene-point3d-alloc.returns"></a><h4>Returns</h4>
268
+ <p> the newly allocated structure.
269
+ Use <a class="link" href="graphene-Point3D.html#graphene-point3d-free" title="graphene_point3d_free ()"><code class="function">graphene_point3d_free()</code></a> to free the resources
270
+ allocated by this function. </p>
271
+ <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
272
+ </div>
273
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
274
+ </div>
275
+ <hr>
276
+ <div class="refsect2">
277
+ <a name="graphene-point3d-free"></a><h3>graphene_point3d_free ()</h3>
278
+ <pre class="programlisting"><span class="returnvalue">void</span>
279
+ graphene_point3d_free (<em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>);</pre>
280
+ <p>Frees the resources allocated via <a class="link" href="graphene-Point3D.html#graphene-point3d-alloc" title="graphene_point3d_alloc ()"><code class="function">graphene_point3d_alloc()</code></a>.</p>
281
+ <div class="refsect3">
282
+ <a name="graphene-point3d-free.parameters"></a><h4>Parameters</h4>
283
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
284
+ <colgroup>
285
+ <col width="150px" class="parameters_name">
286
+ <col class="parameters_description">
287
+ <col width="200px" class="parameters_annotations">
288
+ </colgroup>
289
+ <tbody><tr>
290
+ <td class="parameter_name"><p>p</p></td>
291
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
292
+ <td class="parameter_annotations"> </td>
293
+ </tr></tbody>
294
+ </table></div>
295
+ </div>
296
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
297
+ </div>
298
+ <hr>
299
+ <div class="refsect2">
300
+ <a name="graphene-point3d-init"></a><h3>graphene_point3d_init ()</h3>
301
+ <pre class="programlisting"><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
302
+ graphene_point3d_init (<em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>,
303
+ <em class="parameter"><code><span class="type">float</span> x</code></em>,
304
+ <em class="parameter"><code><span class="type">float</span> y</code></em>,
305
+ <em class="parameter"><code><span class="type">float</span> z</code></em>);</pre>
306
+ <p>Initializes a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> with the given coordinates.</p>
307
+ <div class="refsect3">
308
+ <a name="graphene-point3d-init.parameters"></a><h4>Parameters</h4>
309
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
310
+ <colgroup>
311
+ <col width="150px" class="parameters_name">
312
+ <col class="parameters_description">
313
+ <col width="200px" class="parameters_annotations">
314
+ </colgroup>
315
+ <tbody>
316
+ <tr>
317
+ <td class="parameter_name"><p>p</p></td>
318
+ <td class="parameter_description"><p>the <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> to initialize</p></td>
319
+ <td class="parameter_annotations"> </td>
320
+ </tr>
321
+ <tr>
322
+ <td class="parameter_name"><p>x</p></td>
323
+ <td class="parameter_description"><p>the X coordinate of the point</p></td>
324
+ <td class="parameter_annotations"> </td>
325
+ </tr>
326
+ <tr>
327
+ <td class="parameter_name"><p>y</p></td>
328
+ <td class="parameter_description"><p>the Y coordinate of the point</p></td>
329
+ <td class="parameter_annotations"> </td>
330
+ </tr>
331
+ <tr>
332
+ <td class="parameter_name"><p>z</p></td>
333
+ <td class="parameter_description"><p>the Z coordinate of the point</p></td>
334
+ <td class="parameter_annotations"> </td>
335
+ </tr>
336
+ </tbody>
337
+ </table></div>
338
+ </div>
339
+ <div class="refsect3">
340
+ <a name="graphene-point3d-init.returns"></a><h4>Returns</h4>
341
+ <p> the initialized <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>. </p>
342
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
343
+ </div>
344
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
345
+ </div>
346
+ <hr>
347
+ <div class="refsect2">
348
+ <a name="graphene-point3d-init-from-point"></a><h3>graphene_point3d_init_from_point ()</h3>
349
+ <pre class="programlisting"><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
350
+ graphene_point3d_init_from_point (<em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>,
351
+ <em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *src</code></em>);</pre>
352
+ <p>Initializes a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> using the coordinates of
353
+ another <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>.</p>
354
+ <div class="refsect3">
355
+ <a name="graphene-point3d-init-from-point.parameters"></a><h4>Parameters</h4>
356
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
357
+ <colgroup>
358
+ <col width="150px" class="parameters_name">
359
+ <col class="parameters_description">
360
+ <col width="200px" class="parameters_annotations">
361
+ </colgroup>
362
+ <tbody>
363
+ <tr>
364
+ <td class="parameter_name"><p>p</p></td>
365
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
366
+ <td class="parameter_annotations"> </td>
367
+ </tr>
368
+ <tr>
369
+ <td class="parameter_name"><p>src</p></td>
370
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
371
+ <td class="parameter_annotations"> </td>
372
+ </tr>
373
+ </tbody>
374
+ </table></div>
375
+ </div>
376
+ <div class="refsect3">
377
+ <a name="graphene-point3d-init-from-point.returns"></a><h4>Returns</h4>
378
+ <p> the initialized point. </p>
379
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
380
+ </div>
381
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
382
+ </div>
383
+ <hr>
384
+ <div class="refsect2">
385
+ <a name="graphene-point3d-init-from-vec3"></a><h3>graphene_point3d_init_from_vec3 ()</h3>
386
+ <pre class="programlisting"><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
387
+ graphene_point3d_init_from_vec3 (<em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>,
388
+ <em class="parameter"><code>const <a class="link" href="graphene-Vectors.html#graphene-vec3-t" title="graphene_vec3_t"><span class="type">graphene_vec3_t</span></a> *v</code></em>);</pre>
389
+ <p>Initializes a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> using the components
390
+ of a <a class="link" href="graphene-Vectors.html#graphene-vec3-t" title="graphene_vec3_t"><span class="type">graphene_vec3_t</span></a>.</p>
391
+ <div class="refsect3">
392
+ <a name="graphene-point3d-init-from-vec3.parameters"></a><h4>Parameters</h4>
393
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
394
+ <colgroup>
395
+ <col width="150px" class="parameters_name">
396
+ <col class="parameters_description">
397
+ <col width="200px" class="parameters_annotations">
398
+ </colgroup>
399
+ <tbody>
400
+ <tr>
401
+ <td class="parameter_name"><p>p</p></td>
402
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
403
+ <td class="parameter_annotations"> </td>
404
+ </tr>
405
+ <tr>
406
+ <td class="parameter_name"><p>v</p></td>
407
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Vectors.html#graphene-vec3-t" title="graphene_vec3_t"><span class="type">graphene_vec3_t</span></a></p></td>
408
+ <td class="parameter_annotations"> </td>
409
+ </tr>
410
+ </tbody>
411
+ </table></div>
412
+ </div>
413
+ <div class="refsect3">
414
+ <a name="graphene-point3d-init-from-vec3.returns"></a><h4>Returns</h4>
415
+ <p> the initialized <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>. </p>
416
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
417
+ </div>
418
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
419
+ </div>
420
+ <hr>
421
+ <div class="refsect2">
422
+ <a name="graphene-point3d-to-vec3"></a><h3>graphene_point3d_to_vec3 ()</h3>
423
+ <pre class="programlisting"><span class="returnvalue">void</span>
424
+ graphene_point3d_to_vec3 (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>,
425
+ <em class="parameter"><code><a class="link" href="graphene-Vectors.html#graphene-vec3-t" title="graphene_vec3_t"><span class="type">graphene_vec3_t</span></a> *v</code></em>);</pre>
426
+ <p>Stores the coordinates of a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> into a
427
+ <a class="link" href="graphene-Vectors.html#graphene-vec3-t" title="graphene_vec3_t"><span class="type">graphene_vec3_t</span></a>.</p>
428
+ <div class="refsect3">
429
+ <a name="graphene-point3d-to-vec3.parameters"></a><h4>Parameters</h4>
430
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
431
+ <colgroup>
432
+ <col width="150px" class="parameters_name">
433
+ <col class="parameters_description">
434
+ <col width="200px" class="parameters_annotations">
435
+ </colgroup>
436
+ <tbody>
437
+ <tr>
438
+ <td class="parameter_name"><p>p</p></td>
439
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
440
+ <td class="parameter_annotations"> </td>
441
+ </tr>
442
+ <tr>
443
+ <td class="parameter_name"><p>v</p></td>
444
+ <td class="parameter_description"><p> return location for a <a class="link" href="graphene-Vectors.html#graphene-vec3-t" title="graphene_vec3_t"><span class="type">graphene_vec3_t</span></a>. </p></td>
445
+ <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>
446
+ </tr>
447
+ </tbody>
448
+ </table></div>
449
+ </div>
450
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
451
+ </div>
452
+ <hr>
453
+ <div class="refsect2">
454
+ <a name="graphene-point3d-equal"></a><h3>graphene_point3d_equal ()</h3>
455
+ <pre class="programlisting"><span class="returnvalue">bool</span>
456
+ graphene_point3d_equal (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *a</code></em>,
457
+ <em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *b</code></em>);</pre>
458
+ <p>Checks whether two given points are equal.</p>
459
+ <div class="refsect3">
460
+ <a name="graphene-point3d-equal.parameters"></a><h4>Parameters</h4>
461
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
462
+ <colgroup>
463
+ <col width="150px" class="parameters_name">
464
+ <col class="parameters_description">
465
+ <col width="200px" class="parameters_annotations">
466
+ </colgroup>
467
+ <tbody>
468
+ <tr>
469
+ <td class="parameter_name"><p>a</p></td>
470
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
471
+ <td class="parameter_annotations"> </td>
472
+ </tr>
473
+ <tr>
474
+ <td class="parameter_name"><p>b</p></td>
475
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
476
+ <td class="parameter_annotations"> </td>
477
+ </tr>
478
+ </tbody>
479
+ </table></div>
480
+ </div>
481
+ <div class="refsect3">
482
+ <a name="graphene-point3d-equal.returns"></a><h4>Returns</h4>
483
+ <p> <code class="literal">true</code> if the points are equal</p>
484
+ </div>
485
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
486
+ </div>
487
+ <hr>
488
+ <div class="refsect2">
489
+ <a name="graphene-point3d-near"></a><h3>graphene_point3d_near ()</h3>
490
+ <pre class="programlisting"><span class="returnvalue">bool</span>
491
+ graphene_point3d_near (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *a</code></em>,
492
+ <em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *b</code></em>,
493
+ <em class="parameter"><code><span class="type">float</span> epsilon</code></em>);</pre>
494
+ <p>Checks whether the two points are near each other, within
495
+ an <em class="parameter"><code>epsilon</code></em>
496
+ factor.</p>
497
+ <div class="refsect3">
498
+ <a name="graphene-point3d-near.parameters"></a><h4>Parameters</h4>
499
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
500
+ <colgroup>
501
+ <col width="150px" class="parameters_name">
502
+ <col class="parameters_description">
503
+ <col width="200px" class="parameters_annotations">
504
+ </colgroup>
505
+ <tbody>
506
+ <tr>
507
+ <td class="parameter_name"><p>a</p></td>
508
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
509
+ <td class="parameter_annotations"> </td>
510
+ </tr>
511
+ <tr>
512
+ <td class="parameter_name"><p>b</p></td>
513
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
514
+ <td class="parameter_annotations"> </td>
515
+ </tr>
516
+ <tr>
517
+ <td class="parameter_name"><p>epsilon</p></td>
518
+ <td class="parameter_description"><p>fuzzyness factor</p></td>
519
+ <td class="parameter_annotations"> </td>
520
+ </tr>
521
+ </tbody>
522
+ </table></div>
523
+ </div>
524
+ <div class="refsect3">
525
+ <a name="graphene-point3d-near.returns"></a><h4>Returns</h4>
526
+ <p> <code class="literal">true</code> if the points are near each other</p>
527
+ </div>
528
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
529
+ </div>
530
+ <hr>
531
+ <div class="refsect2">
532
+ <a name="graphene-point3d-scale"></a><h3>graphene_point3d_scale ()</h3>
533
+ <pre class="programlisting"><span class="returnvalue">void</span>
534
+ graphene_point3d_scale (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>,
535
+ <em class="parameter"><code><span class="type">float</span> factor</code></em>,
536
+ <em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *res</code></em>);</pre>
537
+ <p>Scales the coordinates of the given <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> by
538
+ the given <em class="parameter"><code>factor</code></em>
539
+ .</p>
540
+ <div class="refsect3">
541
+ <a name="graphene-point3d-scale.parameters"></a><h4>Parameters</h4>
542
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
543
+ <colgroup>
544
+ <col width="150px" class="parameters_name">
545
+ <col class="parameters_description">
546
+ <col width="200px" class="parameters_annotations">
547
+ </colgroup>
548
+ <tbody>
549
+ <tr>
550
+ <td class="parameter_name"><p>p</p></td>
551
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
552
+ <td class="parameter_annotations"> </td>
553
+ </tr>
554
+ <tr>
555
+ <td class="parameter_name"><p>factor</p></td>
556
+ <td class="parameter_description"><p>the scaling factor</p></td>
557
+ <td class="parameter_annotations"> </td>
558
+ </tr>
559
+ <tr>
560
+ <td class="parameter_name"><p>res</p></td>
561
+ <td class="parameter_description"><p> return location for the scaled point. </p></td>
562
+ <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>
563
+ </tr>
564
+ </tbody>
565
+ </table></div>
566
+ </div>
567
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
568
+ </div>
569
+ <hr>
570
+ <div class="refsect2">
571
+ <a name="graphene-point3d-cross"></a><h3>graphene_point3d_cross ()</h3>
572
+ <pre class="programlisting"><span class="returnvalue">void</span>
573
+ graphene_point3d_cross (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *a</code></em>,
574
+ <em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *b</code></em>,
575
+ <em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *res</code></em>);</pre>
576
+ <p>Computes the cross product of the two given <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>.</p>
577
+ <div class="refsect3">
578
+ <a name="graphene-point3d-cross.parameters"></a><h4>Parameters</h4>
579
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
580
+ <colgroup>
581
+ <col width="150px" class="parameters_name">
582
+ <col class="parameters_description">
583
+ <col width="200px" class="parameters_annotations">
584
+ </colgroup>
585
+ <tbody>
586
+ <tr>
587
+ <td class="parameter_name"><p>a</p></td>
588
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
589
+ <td class="parameter_annotations"> </td>
590
+ </tr>
591
+ <tr>
592
+ <td class="parameter_name"><p>b</p></td>
593
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
594
+ <td class="parameter_annotations"> </td>
595
+ </tr>
596
+ <tr>
597
+ <td class="parameter_name"><p>res</p></td>
598
+ <td class="parameter_description"><p> return location for the cross
599
+ product. </p></td>
600
+ <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>
601
+ </tr>
602
+ </tbody>
603
+ </table></div>
604
+ </div>
605
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
606
+ </div>
607
+ <hr>
608
+ <div class="refsect2">
609
+ <a name="graphene-point3d-dot"></a><h3>graphene_point3d_dot ()</h3>
610
+ <pre class="programlisting"><span class="returnvalue">float</span>
611
+ graphene_point3d_dot (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *a</code></em>,
612
+ <em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *b</code></em>);</pre>
613
+ <p>Computes the dot product of the two given <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>.</p>
614
+ <div class="refsect3">
615
+ <a name="graphene-point3d-dot.parameters"></a><h4>Parameters</h4>
616
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
617
+ <colgroup>
618
+ <col width="150px" class="parameters_name">
619
+ <col class="parameters_description">
620
+ <col width="200px" class="parameters_annotations">
621
+ </colgroup>
622
+ <tbody>
623
+ <tr>
624
+ <td class="parameter_name"><p>a</p></td>
625
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
626
+ <td class="parameter_annotations"> </td>
627
+ </tr>
628
+ <tr>
629
+ <td class="parameter_name"><p>b</p></td>
630
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
631
+ <td class="parameter_annotations"> </td>
632
+ </tr>
633
+ </tbody>
634
+ </table></div>
635
+ </div>
636
+ <div class="refsect3">
637
+ <a name="graphene-point3d-dot.returns"></a><h4>Returns</h4>
638
+ <p> the value of the dot product</p>
639
+ </div>
640
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
641
+ </div>
642
+ <hr>
643
+ <div class="refsect2">
644
+ <a name="graphene-point3d-length"></a><h3>graphene_point3d_length ()</h3>
645
+ <pre class="programlisting"><span class="returnvalue">float</span>
646
+ graphene_point3d_length (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>);</pre>
647
+ <p>Computes the length of the vector represented by the
648
+ coordinates of the given <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>.</p>
649
+ <div class="refsect3">
650
+ <a name="graphene-point3d-length.parameters"></a><h4>Parameters</h4>
651
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
652
+ <colgroup>
653
+ <col width="150px" class="parameters_name">
654
+ <col class="parameters_description">
655
+ <col width="200px" class="parameters_annotations">
656
+ </colgroup>
657
+ <tbody><tr>
658
+ <td class="parameter_name"><p>p</p></td>
659
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
660
+ <td class="parameter_annotations"> </td>
661
+ </tr></tbody>
662
+ </table></div>
663
+ </div>
664
+ <div class="refsect3">
665
+ <a name="graphene-point3d-length.returns"></a><h4>Returns</h4>
666
+ <p> the length of the vector represented by the point</p>
667
+ </div>
668
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
669
+ </div>
670
+ <hr>
671
+ <div class="refsect2">
672
+ <a name="graphene-point3d-normalize"></a><h3>graphene_point3d_normalize ()</h3>
673
+ <pre class="programlisting"><span class="returnvalue">void</span>
674
+ graphene_point3d_normalize (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>,
675
+ <em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *res</code></em>);</pre>
676
+ <p>Computes the normalization of the vector represented by the
677
+ coordinates of the given <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>.</p>
678
+ <div class="refsect3">
679
+ <a name="graphene-point3d-normalize.parameters"></a><h4>Parameters</h4>
680
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
681
+ <colgroup>
682
+ <col width="150px" class="parameters_name">
683
+ <col class="parameters_description">
684
+ <col width="200px" class="parameters_annotations">
685
+ </colgroup>
686
+ <tbody>
687
+ <tr>
688
+ <td class="parameter_name"><p>p</p></td>
689
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
690
+ <td class="parameter_annotations"> </td>
691
+ </tr>
692
+ <tr>
693
+ <td class="parameter_name"><p>res</p></td>
694
+ <td class="parameter_description"><p> return location for the normalized
695
+ <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>. </p></td>
696
+ <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>
697
+ </tr>
698
+ </tbody>
699
+ </table></div>
700
+ </div>
701
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
702
+ </div>
703
+ <hr>
704
+ <div class="refsect2">
705
+ <a name="graphene-point3d-normalize-viewport"></a><h3>graphene_point3d_normalize_viewport ()</h3>
706
+ <pre class="programlisting"><span class="returnvalue">void</span>
707
+ graphene_point3d_normalize_viewport (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *p</code></em>,
708
+ <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> *viewport</code></em>,
709
+ <em class="parameter"><code><span class="type">float</span> z_near</code></em>,
710
+ <em class="parameter"><code><span class="type">float</span> z_far</code></em>,
711
+ <em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *res</code></em>);</pre>
712
+ <p>Normalizes the coordinates of a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> using the
713
+ given viewport and clipping planes.</p>
714
+ <p>The coordinates of the resulting <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> will be
715
+ in the [ -1, 1 ] range.</p>
716
+ <div class="refsect3">
717
+ <a name="graphene-point3d-normalize-viewport.parameters"></a><h4>Parameters</h4>
718
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
719
+ <colgroup>
720
+ <col width="150px" class="parameters_name">
721
+ <col class="parameters_description">
722
+ <col width="200px" class="parameters_annotations">
723
+ </colgroup>
724
+ <tbody>
725
+ <tr>
726
+ <td class="parameter_name"><p>p</p></td>
727
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
728
+ <td class="parameter_annotations"> </td>
729
+ </tr>
730
+ <tr>
731
+ <td class="parameter_name"><p>viewport</p></td>
732
+ <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> representing a viewport</p></td>
733
+ <td class="parameter_annotations"> </td>
734
+ </tr>
735
+ <tr>
736
+ <td class="parameter_name"><p>z_near</p></td>
737
+ <td class="parameter_description"><p>the coordinate of the near clipping plane, or 0 for
738
+ the default near clipping plane</p></td>
739
+ <td class="parameter_annotations"> </td>
740
+ </tr>
741
+ <tr>
742
+ <td class="parameter_name"><p>z_far</p></td>
743
+ <td class="parameter_description"><p>the coordinate of the far clipping plane, or 1 for the
744
+ default far clipping plane</p></td>
745
+ <td class="parameter_annotations"> </td>
746
+ </tr>
747
+ <tr>
748
+ <td class="parameter_name"><p>res</p></td>
749
+ <td class="parameter_description"><p> the return location for the
750
+ normalized <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>. </p></td>
751
+ <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>
752
+ </tr>
753
+ </tbody>
754
+ </table></div>
755
+ </div>
756
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
757
+ </div>
758
+ <hr>
759
+ <div class="refsect2">
760
+ <a name="graphene-point3d-distance"></a><h3>graphene_point3d_distance ()</h3>
761
+ <pre class="programlisting"><span class="returnvalue">float</span>
762
+ graphene_point3d_distance (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *a</code></em>,
763
+ <em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *b</code></em>,
764
+ <em class="parameter"><code><a class="link" href="graphene-Vectors.html#graphene-vec3-t" title="graphene_vec3_t"><span class="type">graphene_vec3_t</span></a> *delta</code></em>);</pre>
765
+ <p>Computes the distance between the two given <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>.</p>
766
+ <div class="refsect3">
767
+ <a name="graphene-point3d-distance.parameters"></a><h4>Parameters</h4>
768
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
769
+ <colgroup>
770
+ <col width="150px" class="parameters_name">
771
+ <col class="parameters_description">
772
+ <col width="200px" class="parameters_annotations">
773
+ </colgroup>
774
+ <tbody>
775
+ <tr>
776
+ <td class="parameter_name"><p>a</p></td>
777
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
778
+ <td class="parameter_annotations"> </td>
779
+ </tr>
780
+ <tr>
781
+ <td class="parameter_name"><p>b</p></td>
782
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
783
+ <td class="parameter_annotations"> </td>
784
+ </tr>
785
+ <tr>
786
+ <td class="parameter_name"><p>delta</p></td>
787
+ <td class="parameter_description"><p> return location for the distance
788
+ components on the X, Y, and Z axis. </p></td>
789
+ <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>
790
+ </tr>
791
+ </tbody>
792
+ </table></div>
793
+ </div>
794
+ <div class="refsect3">
795
+ <a name="graphene-point3d-distance.returns"></a><h4>Returns</h4>
796
+ <p> the distance between two points</p>
797
+ </div>
798
+ <p class="since">Since: <a class="link" href="ix05.html#api-index-1.4">1.4</a></p>
799
+ </div>
800
+ <hr>
801
+ <div class="refsect2">
802
+ <a name="graphene-point3d-interpolate"></a><h3>graphene_point3d_interpolate ()</h3>
803
+ <pre class="programlisting"><span class="returnvalue">void</span>
804
+ graphene_point3d_interpolate (<em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *a</code></em>,
805
+ <em class="parameter"><code>const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *b</code></em>,
806
+ <em class="parameter"><code><span class="type">double</span> factor</code></em>,
807
+ <em class="parameter"><code><a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> *res</code></em>);</pre>
808
+ <p>Linearly interpolates each component of <em class="parameter"><code>a</code></em>
809
+ and <em class="parameter"><code>b</code></em>
810
+ using the
811
+ provided <em class="parameter"><code>factor</code></em>
812
+ , and places the result in <em class="parameter"><code>res</code></em>
813
+ .</p>
814
+ <div class="refsect3">
815
+ <a name="graphene-point3d-interpolate.parameters"></a><h4>Parameters</h4>
816
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
817
+ <colgroup>
818
+ <col width="150px" class="parameters_name">
819
+ <col class="parameters_description">
820
+ <col width="200px" class="parameters_annotations">
821
+ </colgroup>
822
+ <tbody>
823
+ <tr>
824
+ <td class="parameter_name"><p>a</p></td>
825
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
826
+ <td class="parameter_annotations"> </td>
827
+ </tr>
828
+ <tr>
829
+ <td class="parameter_name"><p>b</p></td>
830
+ <td class="parameter_description"><p>a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a></p></td>
831
+ <td class="parameter_annotations"> </td>
832
+ </tr>
833
+ <tr>
834
+ <td class="parameter_name"><p>factor</p></td>
835
+ <td class="parameter_description"><p>the interpolation factor</p></td>
836
+ <td class="parameter_annotations"> </td>
837
+ </tr>
838
+ <tr>
839
+ <td class="parameter_name"><p>res</p></td>
840
+ <td class="parameter_description"><p> the return location for the
841
+ interpolated <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a>. </p></td>
842
+ <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>
843
+ </tr>
844
+ </tbody>
845
+ </table></div>
846
+ </div>
847
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
848
+ </div>
849
+ <hr>
850
+ <div class="refsect2">
851
+ <a name="graphene-point3d-zero"></a><h3>graphene_point3d_zero ()</h3>
852
+ <pre class="programlisting">const <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="returnvalue">graphene_point3d_t</span></a> *
853
+ graphene_point3d_zero (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
854
+ <p>Retrieves a constant point with all three coordinates set to 0.</p>
855
+ <div class="refsect3">
856
+ <a name="graphene-point3d-zero.returns"></a><h4>Returns</h4>
857
+ <p> a zero point. </p>
858
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
859
+ </div>
860
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
861
+ </div>
862
+ </div>
863
+ <div class="refsect1">
864
+ <a name="graphene-Point3D.other_details"></a><h2>Types and Values</h2>
865
+ <div class="refsect2">
866
+ <a name="GRAPHENE-POINT3D-INIT-ZERO:CAPS"></a><h3>GRAPHENE_POINT3D_INIT_ZERO</h3>
867
+ <pre class="programlisting">#define GRAPHENE_POINT3D_INIT_ZERO GRAPHENE_POINT3D_INIT (0.f, 0.f, 0.f)
868
+ </pre>
869
+ <p>Initializes a <a class="link" href="graphene-Point3D.html#graphene-point3d-t" title="graphene_point3d_t"><span class="type">graphene_point3d_t</span></a> to (0, 0, 0) when declaring it.</p>
870
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
871
+ </div>
872
+ <hr>
873
+ <div class="refsect2">
874
+ <a name="graphene-point3d-t"></a><h3>graphene_point3d_t</h3>
875
+ <pre class="programlisting">typedef struct {
876
+ float x;
877
+ float y;
878
+ float z;
879
+ } graphene_point3d_t;
880
+ </pre>
881
+ <p>A point with three components: X, Y, and Z.</p>
882
+ <div class="refsect3">
883
+ <a name="graphene-point3d-t.members"></a><h4>Members</h4>
884
+ <div class="informaltable"><table class="informaltable" width="100%" border="0">
885
+ <colgroup>
886
+ <col width="300px" class="struct_members_name">
887
+ <col class="struct_members_description">
888
+ <col width="200px" class="struct_members_annotations">
889
+ </colgroup>
890
+ <tbody>
891
+ <tr>
892
+ <td class="struct_member_name"><p><span class="type">float</span> <em class="structfield"><code><a name="graphene-point3d-t.x"></a>x</code></em>;</p></td>
893
+ <td class="struct_member_description"><p>the X coordinate</p></td>
894
+ <td class="struct_member_annotations"> </td>
895
+ </tr>
896
+ <tr>
897
+ <td class="struct_member_name"><p><span class="type">float</span> <em class="structfield"><code><a name="graphene-point3d-t.y"></a>y</code></em>;</p></td>
898
+ <td class="struct_member_description"><p>the Y coordinate</p></td>
899
+ <td class="struct_member_annotations"> </td>
900
+ </tr>
901
+ <tr>
902
+ <td class="struct_member_name"><p><span class="type">float</span> <em class="structfield"><code><a name="graphene-point3d-t.z"></a>z</code></em>;</p></td>
903
+ <td class="struct_member_description"><p>the Z coordinate</p></td>
904
+ <td class="struct_member_annotations"> </td>
905
+ </tr>
906
+ </tbody>
907
+ </table></div>
908
+ </div>
909
+ <p class="since">Since: <a class="link" href="ix03.html#api-index-1.0">1.0</a></p>
910
+ </div>
911
+ </div>
912
+ </div>
913
+ <div class="footer">
914
+ <hr>Generated by GTK-Doc V1.25</div>
915
+ </body>
916
+ </html>