Cameras are perspectives through which the Scene may be viewed.

Projection can be perspective or orthographic. Cameras are contained in nodes and thus can be transformed. The camera is defined such that the local +X axis is to the right, the lens looks towards the local -Z axis, and the top of the camera is aligned with the local +Y axis. If no transformation is specified, the location of the camera is at the origin.

Usage:

const camera = doc.createCamera('myCamera')
    .setType('perspective')
    .setZNear(0.1)
    .setZFar(100)
    .setYFov(Math.PI / 4)
    .setAspectRatio(1.5);

node.setCamera(camera);

References:

Hierarchy

Properties

propertyType: string

Property type.

Methods

  • clone(): this
  • copy(other: this, resolve: PropertyResolver<Property>): this
  • Copies all data from another property to this one. Child properties are copied by reference, unless a 'resolve' function is given to override that.

  • detach(): this
  • Removes all inbound references to this object. At the end of the process the object is considered 'detached': it may hold references to child resources, but nothing holds references to it. A detached object may be re-attached.

  • dispose(): void
  • Removes both inbound references to and outbound references from this object. At the end of the process the object holds no references, and nothing holds references to it. A disposed object is not reusable.

  • getAspectRatio(): number
  • Floating-point aspect ratio of the field of view. When undefined, the aspect ratio of the canvas is used.

  • getExtension<Prop>(name: string): Prop
  • getExtras(): object
  • Returns a reference to the Extras object, containing application-specific data for this Property. Extras should be an Object, not a primitive value, for best portability.

  • getName(): string
  • Returns the name of this property. While names are not required to be unique, this is encouraged, and non-unique names will be overwritten in some tools. For custom data about a property, prefer to use Extras.

  • getType(): CameraType
  • getXMag(): number
  • Floating-point horizontal magnification of the view, and half the view's width in world units.

  • getYFov(): number
  • getYMag(): number
  • Floating-point vertical magnification of the view, and half the view's height in world units.

  • getZFar(): number
  • Floating-point distance to the far clipping plane. When defined, zfar must be greater than znear. If zfar is undefined, runtime must use infinite projection matrix.

  • getZNear(): number
  • isDisposed(): boolean
  • Returns a list of all properties that hold a reference to this property. For example, a material may hold references to various textures, but a texture does not hold references to the materials that use it.

    It is often necessary to filter the results for a particular type: some resources, like Accessors, may be referenced by different types of properties. Most properties include the Root as a parent, which is usually not of interest.

    Usage:

    const materials = texture
        .listParents()
        .filter((p) => p instanceof Material)
  • setAspectRatio(aspectRatio: number): this
  • Floating-point aspect ratio of the field of view. When undefined, the aspect ratio of the canvas is used.

  • setExtension<Prop>(name: string, extensionProperty: Prop): this
  • setExtras(extras: object): this
  • Updates the Extras object, containing application-specific data for this Property. Extras should be an Object, not a primitive value, for best portability.

  • setName(name: string): this
  • Sets the name of this property. While names are not required to be unique, this is encouraged, and non-unique names will be overwritten in some tools. For custom data about a property, prefer to use Extras.

  • setType(type: CameraType): this
  • setXMag(xmag: number): this
  • Floating-point horizontal magnification of the view, and half the view's width in world units.

  • setYFov(yfov: number): this
  • setYMag(ymag: number): this
  • Floating-point vertical magnification of the view, and half the view's height in world units.

  • setZFar(zfar: number): this
  • Floating-point distance to the far clipping plane. When defined, zfar must be greater than znear. If zfar is undefined, runtime must use infinite projection matrix.

  • setZNear(znear: number): this
Function symbol, f(📦) → 📦, where the argument and output are a box labeled 'glTF'.

Made by Don McCurdy TypeDoc documentation Copyright 2020 under MIT license