ImageLoader.html 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <base href="../../../" />
  6. <script src="list.js"></script>
  7. <script src="page.js"></script>
  8. <link type="text/css" rel="stylesheet" href="page.css" />
  9. </head>
  10. <body>
  11. <h1>[name]</h1>
  12. <p class="desc">
  13. 用来加载一个[page:Image]的加载器。
  14. 内部使用[page:FileLoader]来加载文件,并被
  15. [page:CubeTextureLoader]、[page:ObjectLoader]、[page:TextureLoader]所使用。
  16. </p>
  17. <h2>例子</h2>
  18. <p>
  19. [example:webgl_loader_obj WebGL / loader / obj]<br />
  20. [example:webgl_shaders_ocean WebGL / shaders / ocean]
  21. </p>
  22. <code>
  23. // 初始化一个加载器
  24. var loader = new THREE.ImageLoader();
  25. // 加载一个图片资源
  26. loader.load(
  27. // 资源URL
  28. 'textures/skyboxsun25degtest.png',
  29. // onLoad回调
  30. function ( image ) {
  31. // use the image, e.g. draw part of it on a canvas
  32. var canvas = document.createElement( 'canvas' );
  33. var context = canvas.getContext( '2d' );
  34. context.drawImage( image, 100, 100 );
  35. },
  36. // 目前暂不支持onProgress的回调
  37. undefined,
  38. // onError回调
  39. function () {
  40. console.error( 'An error happened.' );
  41. }
  42. );
  43. </code>
  44. <p>
  45. 请注意three.js r84遗弃了ImageLoader进度事件. 对于支持进度事件的ImageLoader
  46. 请参考[link:https://github.com/mrdoob/three.js/issues/10439#issuecomment-275785639 this thread].
  47. </p>
  48. <h2>构造方法</h2>
  49. <h3>[name]( [param:LoadingManager manager] )</h3>
  50. <p>
  51. [page:LoadingManager manager] — 加载器使用的[page:LoadingManager loadingManager],默认为[page:LoadingManager THREE.DefaultLoadingManager].<br /><br />
  52. 创建一个新的[name].
  53. </p>
  54. <h2>属性</h2>
  55. <h3>[property:String crossOrigin]</h3>
  56. <p>
  57. 如果设置了,在开始加载前, 将为图片分配 [link:https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes crossOrigin]
  58. 属性,其值为 *crossOrigin*, 默认为"anonymous"。
  59. </p>
  60. <h3>[property:LoadingManager manager]</h3>
  61. <p>
  62. 加载器正在使用的[page:LoadingManager loadingManager],默认值为[page:DefaultLoadingManager].
  63. </p>
  64. <h3>[property:String path]</h3>
  65. <p>所要加载文件的基本路径。 请参考[page:.setPath],默认为*undefined*。</p>
  66. <h2>方法</h2>
  67. <h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
  68. <p>
  69. [page:String url] — 文件的URL或者路径,也可以为
  70. [link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI].<br />
  71. [page:Function onLoad] —加载完成时将调用。回调参数为将要加载的[page:Image image]。<br />
  72. [page:Function onProgress] — 此回调函数暂时不支持。<br />
  73. [page:Function onError] — 在加载错误时被调用。<br />
  74. </p>
  75. <p>
  76. 从URL中进行加载,并返回将包含数据的[page:Image image]对象。
  77. </p>
  78. <h3>[method:null setCrossOrigin]( [param:String value] )</h3>
  79. <p>设置[page:.crossOrigin]的属性。</p>
  80. <h3>[method:FileLoader setPath]( [param:String path] )</h3>
  81. <p>
  82. 设置加载文件的基本路径或URL。当加载同一目录中下的许多图片时,此方法将很有用。
  83. </p>
  84. <h2>源</h2>
  85. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  86. </body>
  87. </html>