当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript quat.rotateY方法代码示例

本文整理汇总了TypeScript中gl-matrix.quat.rotateY方法的典型用法代码示例。如果您正苦于以下问题:TypeScript quat.rotateY方法的具体用法?TypeScript quat.rotateY怎么用?TypeScript quat.rotateY使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在gl-matrix.quat的用法示例。


在下文中一共展示了quat.rotateY方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: updateMatrix

  public updateMatrix(camera: Camera | PerspectiveCamera | OrthographicCamera) {
    mat4.identity(this.modelViewMatrix);

    if (this.matrixAutoUpdate) {
      // Reset
      mat4.identity(this.localMatrix);
      mat4.identity(this.modelMatrix);
      quat.identity(this.quaternion);

      // If Object3D has a parent, copy the computed modelMatrix into localMatrix
      if (this.parent) {
        mat4.copy(this.localMatrix, this.parent.modelMatrix);
        mat4.multiply(this.modelMatrix, this.modelMatrix, this.localMatrix);
      }

      // Use lookAt quat as base
      // Note: this.rotation isn't updated if lookAt's used
      quat.copy(this.quaternion, this.quaternionLookAt);

      // Apply local transitions to modelMatrix
      mat4.translate(this.modelMatrix, this.modelMatrix, this.position.v);
      quat.rotateX(this.quaternion, this.quaternion, this.rotation.x);
      quat.rotateY(this.quaternion, this.quaternion, this.rotation.y);
      quat.rotateZ(this.quaternion, this.quaternion, this.rotation.z);
      axisAngle = quat.getAxisAngle(quaternionAxisAngle, this.quaternion);
      mat4.rotate(
        this.modelMatrix,
        this.modelMatrix,
        axisAngle,
        quaternionAxisAngle
      );
      mat4.scale(this.modelMatrix, this.modelMatrix, this.scale.v);
    }

    // Model View Matrix
    if (camera) {
      mat4.multiply(
        this.modelViewMatrix,
        camera.worldInverseMatrix,
        this.modelMatrix
      );
    }
  }
开发者ID:davidpaulrosser,项目名称:leonardo,代码行数:43,代码来源:Object3D.ts

示例2:

outQuat = quat.multiply(outQuat, quatA, quatB);
outQuat = quat.mul(outQuat, quatA, quatB);
outQuat = quat.scale(outQuat, quatA, 2);
outVal = quat.length(quatA);
outVal = quat.len(quatA);
outVal = quat.squaredLength(quatA);
outVal = quat.sqrLen(quatA);
outQuat = quat.normalize(outQuat, quatA);
outVal = quat.dot(quatA, quatB);
outQuat = quat.lerp(outQuat, quatA, quatB, 0.5);
outQuat = quat.slerp(outQuat, quatA, quatB, 0.5);
outQuat = quat.invert(outQuat, quatA);
outQuat = quat.conjugate(outQuat, quatA);
outStr = quat.str(quatA);
outQuat = quat.rotateX(outQuat, quatA, deg90);
outQuat = quat.rotateY(outQuat, quatA, deg90);
outQuat = quat.rotateZ(outQuat, quatA, deg90);
outQuat = quat.fromMat3(outQuat, mat3A);
outQuat = quat.calculateW(outQuat, quatA);
outBool = quat.exactEquals(quatA, quatB);
outBool = quat.equals(quatA, quatB);

// glMatrix
outVal = glMatrix.RANDOM();
outVal = glMatrix.EPSILON;
outBool = glMatrix.ENABLE_SIMD;
outBool = glMatrix.SIMD_AVAILABLE;
outBool = glMatrix.USE_SIMD;
outBool = glMatrix.equals(1, 1);
outBool = glMatrix.equals(1, -1);
outVal = glMatrix.toRadian(10);
开发者ID:DenisCarriere,项目名称:DefinitelyTyped,代码行数:31,代码来源:gl-matrix-tests.ts


注:本文中的gl-matrix.quat.rotateY方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。