From 93b9953f6d4f2887bc7850326c31290d30f9b026 Mon Sep 17 00:00:00 2001 From: Alexander Rose <alexander.rose@weirdbyte.de> Date: Sun, 3 Oct 2021 10:43:56 -0700 Subject: [PATCH] add missing createEmpty* geo utils - direct-volume - image - texture-mesh --- src/mol-geo/geometry/direct-volume/direct-volume.ts | 12 ++++++++++-- src/mol-geo/geometry/image/image.ts | 7 +++++-- src/mol-geo/geometry/texture-mesh/texture-mesh.ts | 8 ++++++-- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/src/mol-geo/geometry/direct-volume/direct-volume.ts b/src/mol-geo/geometry/direct-volume/direct-volume.ts index 87bbe53cd..c46e32c5d 100644 --- a/src/mol-geo/geometry/direct-volume/direct-volume.ts +++ b/src/mol-geo/geometry/direct-volume/direct-volume.ts @@ -9,7 +9,7 @@ import { LocationIterator, PositionLocation } from '../../../mol-geo/util/locati import { RenderableState } from '../../../mol-gl/renderable'; import { DirectVolumeValues } from '../../../mol-gl/renderable/direct-volume'; import { calculateTransformBoundingSphere } from '../../../mol-gl/renderable/util'; -import { Texture } from '../../../mol-gl/webgl/texture'; +import { createNullTexture, Texture } from '../../../mol-gl/webgl/texture'; import { Box3D, Sphere3D } from '../../../mol-math/geometry'; import { Mat4, Vec2, Vec3, Vec4 } from '../../../mol-math/linear-algebra'; import { Theme } from '../../../mol-theme/theme'; @@ -129,7 +129,15 @@ export namespace DirectVolume { } export function createEmpty(directVolume?: DirectVolume): DirectVolume { - return {} as DirectVolume; // TODO + const bbox = Box3D(); + const gridDimension = Vec3(); + const transform = Mat4.identity(); + const unitToCartn = Mat4.identity(); + const cellDim = Vec3(); + const texture = createNullTexture(); + const stats = Grid.One.stats; + const packedGroup = false; + return create(bbox, gridDimension, transform, unitToCartn, cellDim, texture, stats, packedGroup, directVolume); } export function createRenderModeParam(stats?: Grid['stats']) { diff --git a/src/mol-geo/geometry/image/image.ts b/src/mol-geo/geometry/image/image.ts index 0f34aeff7..614477174 100644 --- a/src/mol-geo/geometry/image/image.ts +++ b/src/mol-geo/geometry/image/image.ts @@ -7,7 +7,7 @@ import { hashFnv32a } from '../../../mol-data/util'; import { LocationIterator } from '../../../mol-geo/util/location-iterator'; import { RenderableState } from '../../../mol-gl/renderable'; -import { calculateTransformBoundingSphere, TextureImage } from '../../../mol-gl/renderable/util'; +import { calculateTransformBoundingSphere, createTextureImage, TextureImage } from '../../../mol-gl/renderable/util'; import { Sphere3D } from '../../../mol-math/geometry'; import { Vec2, Vec4, Vec3 } from '../../../mol-math/linear-algebra'; import { Theme } from '../../../mol-theme/theme'; @@ -113,7 +113,10 @@ namespace Image { } export function createEmpty(image?: Image): Image { - return {} as Image; // TODO + const imageTexture = createTextureImage(0, 4, Uint8Array); + const corners = image ? image.cornerBuffer.ref.value : new Float32Array(8 * 3); + const groupTexture = createTextureImage(0, 4, Uint8Array); + return create(imageTexture, corners, groupTexture, image); } export const Params = { diff --git a/src/mol-geo/geometry/texture-mesh/texture-mesh.ts b/src/mol-geo/geometry/texture-mesh/texture-mesh.ts index 47bbecb28..f8df9d171 100644 --- a/src/mol-geo/geometry/texture-mesh/texture-mesh.ts +++ b/src/mol-geo/geometry/texture-mesh/texture-mesh.ts @@ -19,7 +19,7 @@ import { createEmptyOverpaint } from '../overpaint-data'; import { createEmptyTransparency } from '../transparency-data'; import { TextureMeshValues } from '../../../mol-gl/renderable/texture-mesh'; import { calculateTransformBoundingSphere } from '../../../mol-gl/renderable/util'; -import { Texture } from '../../../mol-gl/webgl/texture'; +import { createNullTexture, Texture } from '../../../mol-gl/webgl/texture'; import { Vec2, Vec4 } from '../../../mol-math/linear-algebra'; import { createEmptyClipping } from '../clipping-data'; import { NullLocation } from '../../../mol-model/location'; @@ -97,7 +97,11 @@ export namespace TextureMesh { } export function createEmpty(textureMesh?: TextureMesh): TextureMesh { - return {} as TextureMesh; // TODO + const vt = textureMesh ? textureMesh.vertexTexture.ref.value : createNullTexture(); + const gt = textureMesh ? textureMesh.groupTexture.ref.value : createNullTexture(); + const nt = textureMesh ? textureMesh.normalTexture.ref.value : createNullTexture(); + const bs = textureMesh ? textureMesh.boundingSphere : Sphere3D(); + return create(0, 0, vt, gt, nt, bs, textureMesh); } export const Params = { -- GitLab