@types/three
Version:
TypeScript definitions for three
52 lines (49 loc) • 2.36 kB
TypeScript
import {
MagnificationTextureFilter,
Mapping,
MinificationTextureFilter,
PixelFormat,
TextureDataType,
Wrapping,
} from "../constants.js";
import { Texture } from "./Texture.js";
/**
* Creates a texture from a {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas | canvas element}.
* @remarks
* This is almost the same as the base {@link Texture | Texture} class,
* except that it sets {@link Texture.needsUpdate | needsUpdate} to `true` immediately.
* @see {@link THREE.Texture | Texture}
* @see {@link https://threejs.org/docs/index.html#api/en/textures/CanvasTexture | Official Documentation}
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/textures/CanvasTexture.js | Source}
*/
export class CanvasTexture<TCanvas = HTMLCanvasElement> extends Texture<TCanvas> {
/**
* This creates a new {@link THREE.CanvasTexture | CanvasTexture} object.
* @param canvas The HTML canvas element from which to load the texture.
* @param mapping See {@link Texture.mapping | .mapping}. Default {@link THREE.Texture.DEFAULT_MAPPING}
* @param wrapS See {@link Texture.wrapS | .wrapS}. Default {@link THREE.ClampToEdgeWrapping}
* @param wrapT See {@link Texture.wrapT | .wrapT}. Default {@link THREE.ClampToEdgeWrapping}
* @param magFilter See {@link Texture.magFilter | .magFilter}. Default {@link THREE.LinearFilter}
* @param minFilter See {@link Texture.minFilter | .minFilter}. Default {@link THREE.LinearMipmapLinearFilter}
* @param format See {@link Texture.format | .format}. Default {@link THREE.RGBAFormat}
* @param type See {@link Texture.type | .type}. Default {@link THREE.UnsignedByteType}
* @param anisotropy See {@link Texture.anisotropy | .anisotropy}. Default {@link THREE.Texture.DEFAULT_ANISOTROPY}
*/
constructor(
canvas?: TCanvas,
mapping?: Mapping,
wrapS?: Wrapping,
wrapT?: Wrapping,
magFilter?: MagnificationTextureFilter,
minFilter?: MinificationTextureFilter,
format?: PixelFormat,
type?: TextureDataType,
anisotropy?: number,
);
/**
* Read-only flag to check if a given object is of type {@link CanvasTexture}.
* @remarks This is a _constant_ value
* @defaultValue `true`
*/
readonly isCanvasTexture: true;
}