當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript vec3.multiply方法代碼示例

本文整理匯總了TypeScript中neuroglancer/util/geom.vec3.multiply方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript vec3.multiply方法的具體用法?TypeScript vec3.multiply怎麽用?TypeScript vec3.multiply使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在neuroglancer/util/geom.vec3的用法示例。


在下文中一共展示了vec3.multiply方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: constructor

  constructor(options: VolumeChunkSpecificationOptions) {
    let {
      lowerVoxelBound = kZeroVec,
      upperVoxelBound,
      chunkDataSize,
      voxelSize,
      transform,
      baseVoxelOffset = kZeroVec
    } = options;
    let {
      lowerClipBound = vec3.multiply(vec3.create(), voxelSize, lowerVoxelBound),
      upperClipBound = vec3.multiply(vec3.create(), voxelSize, upperVoxelBound)
    } = options;
    const chunkSize = vec3.multiply(vec3.create(), chunkDataSize, voxelSize);
    let lowerChunkBound = vec3.create();
    let upperChunkBound = vec3.create();
    for (let i = 0; i < 3; ++i) {
      lowerChunkBound[i] = Math.floor(lowerVoxelBound[i] / chunkDataSize[i]);
      upperChunkBound[i] = Math.floor((upperVoxelBound[i] - 1) / chunkDataSize[i] + 1);
    }
    super({voxelSize, transform, lowerChunkBound, upperChunkBound, chunkSize});
    this.baseVoxelOffset = baseVoxelOffset;
    this.lowerClipBound = lowerClipBound;
    this.upperClipBound = upperClipBound;
    this.lowerVoxelBound = lowerVoxelBound;
    this.upperVoxelBound = upperVoxelBound;
    this.chunkDataSize = chunkDataSize;

    let dataType = this.dataType = options.dataType;
    let numChannels = this.numChannels = options.numChannels;

    this.chunkBytes = prod3(chunkDataSize) * DATA_TYPE_BYTES[dataType] * numChannels;

    this.compressedSegmentationBlockSize = options.compressedSegmentationBlockSize;
  }
開發者ID:google,項目名稱:neuroglancer,代碼行數:35,代碼來源:base.ts

示例2:

 return this.scales.map(scaleInfo => {
   return VolumeChunkSpecification
       .getDefaults({
         voxelSize: scaleInfo.resolution,
         dataType: this.dataType,
         numChannels: this.numChannels,
         transform: mat4.fromTranslation(
             mat4.create(),
             vec3.multiply(vec3.create(), scaleInfo.resolution, scaleInfo.voxelOffset)),
         upperVoxelBound: scaleInfo.size,
         volumeType: this.volumeType,
         chunkDataSizes: scaleInfo.chunkSizes,
         baseVoxelOffset: scaleInfo.voxelOffset,
         compressedSegmentationBlockSize: scaleInfo.compressedSegmentationBlockSize,
         volumeSourceOptions,
       })
       .map(spec => this.chunkManager.getChunkSource(PrecomputedVolumeChunkSource, {
         spec,
         parameters: {
           'baseUrls': this.baseUrls,
           'path': `${this.path}/${scaleInfo.key}`,
           'encoding': scaleInfo.encoding
         }
       }));
 });
開發者ID:google,項目名稱:neuroglancer,代碼行數:25,代碼來源:frontend.ts

示例3: getSources

  getSources(vectorGraphicsSourceOptions: VectorGraphicsSourceOptions) {
    const voxelSize = this.stackInfo.voxelResolution;
    const chunkSize = vec3.subtract(
        vec3.create(), this.stackInfo.upperVoxelBound, this.stackInfo.lowerVoxelBound);
    vec3.multiply(chunkSize, chunkSize, voxelSize);
    chunkSize[2] = voxelSize[2];

    const spec = VectorGraphicsChunkSpecification.make({
      voxelSize,
      chunkSize,
      lowerChunkBound: vec3.fromValues(0, 0, this.stackInfo.lowerVoxelBound[2]),
      upperChunkBound: vec3.fromValues(1, 1, this.stackInfo.upperVoxelBound[2]),
      vectorGraphicsSourceOptions
    });
    const source = this.chunkManager.getChunkSource(PointMatchSource, {
      spec,
      parameters: {
        'baseUrls': this.baseUrls,
        'owner': this.ownerInfo.owner,
        'project': this.stackInfo.project,
        'stack': this.stack,
        'encoding': 'points',
        'matchCollection': this.matchCollection,
        'zoffset': this.zoffset
      }
    });

    return [[source]];
  }
開發者ID:google,項目名稱:neuroglancer,代碼行數:29,代碼來源:frontend.ts

示例4: getStaticAnnotations

 getStaticAnnotations() {
   const {topLevelMetadata, baseScaleIndex} = this;
   const annotationSet = new AnnotationSource(mat4.fromScaling(
       mat4.create(),
       vec3.multiply(
           vec3.create(), topLevelMetadata.pixelResolution,
           topLevelMetadata.scales[baseScaleIndex])));
   annotationSet.readonly = true;
   annotationSet.add(makeDataBoundsBoundingBox(vec3.create(), this.scales[baseScaleIndex]!.size));
   return annotationSet;
 }
開發者ID:google,項目名稱:neuroglancer,代碼行數:11,代碼來源:frontend.ts

示例5:

 return this.scales.map(scaleInfo => {
   return VolumeChunkSpecification
       .getDefaults({
         voxelSize: scaleInfo.resolution,
         dataType: this.dataType,
         numChannels: this.numChannels,
         chunkLayoutOffset:
             vec3.multiply(vec3.create(), scaleInfo.resolution, scaleInfo.voxelOffset),
         upperVoxelBound: scaleInfo.size,
         volumeType: this.volumeType,
         chunkDataSizes: scaleInfo.chunkSizes,
         baseVoxelOffset: scaleInfo.voxelOffset,
         compressedSegmentationBlockSize: scaleInfo.compressedSegmentationBlockSize
       })
       .map(spec => VolumeChunkSource.get(chunkManager, spec, {
         'baseUrls': this.baseUrls,
         'path': `${this.path}/${scaleInfo.key}`,
         'encoding': scaleInfo.encoding
       }));
 });
開發者ID:funkey,項目名稱:neuroglancer,代碼行數:20,代碼來源:frontend.ts

示例6: getSources

 getSources(chunkManager: ChunkManager) {
   let {numChannels, dataType, volumeType, encoding} = this;
   // Clip based on the bounds of the first scale.
   const baseScale = this.scales[0][0];
   let upperClipBound = vec3.multiply(vec3.create(), baseScale.voxelSize, baseScale.sizeInVoxels);
   return this.scales.map(levelScales => levelScales.map(scaleInfo => {
     const spec = VolumeChunkSpecification.withDefaultCompression({
       voxelSize: scaleInfo.voxelSize,
       dataType,
       volumeType,
       numChannels,
       chunkLayoutOffset: scaleInfo.offset,
       upperVoxelBound: scaleInfo.sizeInVoxels,
       upperClipBound: upperClipBound,
       chunkDataSize: scaleInfo.chunkDataSize!,
     });
     return VolumeChunkSource.get(
         chunkManager, spec, {baseUrls: this.baseUrls, key: scaleInfo.key, encoding: encoding});
   }));
 }
開發者ID:funkey,項目名稱:neuroglancer,代碼行數:20,代碼來源:frontend.ts


注:本文中的neuroglancer/util/geom.vec3.multiply方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。