Three.js API手册

动画
AnimationAction AnimationClip AnimationMixer AnimationObjectGroup AnimationUtils KeyframeTrack PropertyBinding PropertyMixer
动画 / 轨道
BooleanKeyframeTrack ColorKeyframeTrack NumberKeyframeTrack QuaternionKeyframeTrack StringKeyframeTrack VectorKeyframeTrack
音频
Audio AudioAnalyser AudioContext AudioListener PositionalAudio
摄像机
ArrayCamera Camera CubeCamera OrthographicCamera PerspectiveCamera StereoCamera
常量
Animation Core CustomBlendingEquation DrawModes Materials Renderer Textures
核心
BufferAttribute BufferGeometry Clock DirectGeometry EventDispatcher Face3 Geometry InstancedBufferAttribute InstancedBufferGeometry InstancedInterleavedBuffer InterleavedBuffer InterleavedBufferAttribute Layers Object3D Raycaster Uniform
核心 / BufferAttributes
BufferAttribute_Types
弃用列表
DeprecatedList
附件
Earcut ShapeUtils
附件 / 核心
Curve CurvePath Font Interpolations Path Shape ShapePath
附件 / 曲线
ArcCurve CatmullRomCurve3 CubicBezierCurve CubicBezierCurve3 EllipseCurve LineCurve LineCurve3 QuadraticBezierCurve QuadraticBezierCurve3 SplineCurve
附件 / 物体
ImmediateRenderObject
几何体
BoxBufferGeometry BoxGeometry CircleBufferGeometry CircleGeometry ConeBufferGeometry ConeGeometry CylinderBufferGeometry CylinderGeometry DodecahedronBufferGeometry DodecahedronGeometry EdgesGeometry ExtrudeBufferGeometry ExtrudeGeometry IcosahedronBufferGeometry IcosahedronGeometry LatheBufferGeometry LatheGeometry OctahedronBufferGeometry OctahedronGeometry ParametricBufferGeometry ParametricGeometry PlaneBufferGeometry PlaneGeometry PolyhedronBufferGeometry PolyhedronGeometry RingBufferGeometry RingGeometry ShapeBufferGeometry ShapeGeometry SphereBufferGeometry SphereGeometry TetrahedronBufferGeometry TetrahedronGeometry TextBufferGeometry TextGeometry TorusBufferGeometry TorusGeometry TorusKnotBufferGeometry TorusKnotGeometry TubeBufferGeometry TubeGeometry WireframeGeometry
辅助对象
ArrowHelper AxesHelper BoxHelper Box3Helper CameraHelper DirectionalLightHelper FaceNormalsHelper GridHelper PolarGridHelper PositionalAudioHelper HemisphereLightHelper PlaneHelper PointLightHelper RectAreaLightHelper SkeletonHelper SpotLightHelper VertexNormalsHelper
灯光
AmbientLight DirectionalLight HemisphereLight Light PointLight RectAreaLight SpotLight
灯光 / 阴影
DirectionalLightShadow LightShadow SpotLightShadow
加载器
AnimationLoader AudioLoader BufferGeometryLoader Cache CompressedTextureLoader CubeTextureLoader DataTextureLoader FileLoader FontLoader ImageBitmapLoader ImageLoader Loader LoaderUtils MaterialLoader ObjectLoader TextureLoader
加载器 / 管理器
DefaultLoadingManager LoadingManager
材质
LineBasicMaterial LineDashedMaterial Material MeshBasicMaterial MeshDepthMaterial MeshDistanceMaterial MeshLambertMaterial MeshMatcapMaterial MeshNormalMaterial MeshPhongMaterial MeshPhysicalMaterial MeshStandardMaterial MeshToonMaterial PointsMaterial RawShaderMaterial ShaderMaterial ShadowMaterial SpriteMaterial
数学库
Box2 Box3 Color Cylindrical Euler Frustum Interpolant Line3 Math Matrix3 Matrix4 Plane Quaternion Ray Sphere Spherical Triangle Vector2 Vector3 Vector4
数学库 / 插值
CubicInterpolant DiscreteInterpolant LinearInterpolant QuaternionLinearInterpolant
物体
Bone Group Line LineLoop LineSegments LOD Mesh Points Skeleton SkinnedMesh Sprite
渲染器
WebGLMultisampleRenderTarget WebGLRenderer WebGLRenderTarget WebGLRenderTargetCube
渲染器 / 着色器
ShaderChunk ShaderLib UniformsLib UniformsUtils
场景
Fog FogExp2 Scene
纹理贴图
CanvasTexture CompressedTexture CubeTexture DataTexture DataTexture3D DepthTexture Texture VideoTexture

FileLoader

使用XMLHttpRequest来加载资源的低级类,并由大多数加载器内部使用。 它也可以直接用于加载任何没有对应加载器的文件类型。

例子

WebGL / loader / msgpack
WebGL / morphtargets / human

var loader = new THREE.FileLoader(); 
//加载一个文本文件,并把结果输出到控制台上 
loader.load( 
  // resource URL 
  'example.txt', 
  // onLoad回调 
  function ( data ) { 
    // output the text to the console 
    console.log( data ) 
  }, 
  // onProgress回调 
  function ( xhr ) { 
    console.log( (xhr.loaded / xhr.total * 100) + '% loaded' ); 
  }, 
  // onError回调 
  function ( err ) { 
    console.error( 'An error happened' ); 
  } 
);

注意: 必须启用缓存 THREE.Cache.enabled = true; 这是一个全局属性,只需要设置一次,供内部使用FileLoader的所有加载器使用。 Cache 是​​一个缓存模块,用于保存通过此加载器发出的每个请求的响应,因此每个文件都会被请求一次。

构造函数

FileLoader ( manager : LoadingManager )

manager — loadingManager 是加载器所使用的加载管理器。 默认为 DefaultLoadingManager.

属性

# .manager : LoadingManager

loadingManager 是加载器所使用的加载管理器,默认为 DefaultLoadingManager.

# .mimeType : String

详情 mimeType. 请参考 .setMimeType。默认为 undefined

# .path : String

将要加载的文件的基本路径。请参考 .setPath。 默认为 undefined.

# .requestHeader : object

request header 在HTTP 请求中使用。 请参考 .setRequestHeader。 默认为 undefined.

# .responseType : String

请求的响应类型。 请参考 .setResponseType. 默认为 undefined.

# .withCredentials : String

XMLHttpRequest是否使用证书。 请参考 .setWithCredentials. 默认为 undefined.

方法

# .load ( url : String, onLoad : Function, onProgress : Function, onError : Function ) : null

url — 文件的URL或者路径,也可以为 Data URI.
onLoad (可选) — 加载完成时将调用。回调参数将是加载的响应。
onProgress (可选) — 将在加载过程中进行调用。参数将是XMLHttpRequest实例, 其中包含 total 和 loaded 字节
onError (可选) — 在加载错误时被调用。

加载URL并将响应传递给onLoad函数。

# .setMimeType ( mimeType : String ) : FileLoader

设置正在加载的文件预期类型 mimeType 。请注意,在许多情况下,这将自动确定,因此默认情况下它是 undefined

# .setPath ( path : String ) : FileLoader

设置加载文件的基本路径或URL。当加载同一目录中的许多模型,此方法将很有用。

# .setRequestHeader ( requestHeader : object ) : FileLoader

requestHeader - key: 要设置header的名称。 value:要设置header的值。

请参考在HTTP 请求中的 request header

# .setResponseType ( responseType : String ) : FileLoader

改变响应的类型,其类型有效值如下:
text 或者空 string (默认) - 返回的数据类型为 string.
arraybuffer - 加载的数据类型到一个数组buffer中 ArrayBuffer 并进行返回。
blob - 返回的数据为 Blob
document - 使用 DOMParser 解析文件。
json - 将文件解析为 JSON.parse.

# .setWithCredentials ( value : Boolean ) : FileLoader

XMLHttpRequest是否使用cookie、授权头或TLS客户端证书等凭据。 请参考 XMLHttpRequest.withCredentials.
请注意,当您在本地或从同一域加载文件,则该方法无效。

源 -

src/loaders/FileLoader.js