diff --git a/src/mol-math/geometry/lookup3d/common.ts b/src/mol-math/geometry/lookup3d/common.ts index 874735b9ca2659be52324834350cc595f5bc5024..924274b8b0f520a3e1bfb5e6aeab36b7889670bd 100644 --- a/src/mol-math/geometry/lookup3d/common.ts +++ b/src/mol-math/geometry/lookup3d/common.ts @@ -33,4 +33,6 @@ export interface Lookup3D<T = number> { find(x: number, y: number, z: number, radius: number): Result<T>, check(x: number, y: number, z: number, radius: number): boolean, readonly boundary: { readonly box: Box3D, readonly sphere: Sphere3D } + /** transient result */ + readonly result: Result<T> } \ No newline at end of file diff --git a/src/mol-math/geometry/lookup3d/grid.ts b/src/mol-math/geometry/lookup3d/grid.ts index 5270a27600e482edf597e63ec2b821116a16ab47..328f2d00aafa2f6c4e2a2edf0280a08ac2bb8473 100644 --- a/src/mol-math/geometry/lookup3d/grid.ts +++ b/src/mol-math/geometry/lookup3d/grid.ts @@ -27,6 +27,7 @@ class GridLookup3DImpl implements GridLookup3D<number> { private ctx: QueryContext; boundary: Lookup3D['boundary']; buckets: GridLookup3D['buckets']; + result: Result<number> find(x: number, y: number, z: number, radius: number): Result<number> { this.ctx.x = x; @@ -52,6 +53,7 @@ class GridLookup3DImpl implements GridLookup3D<number> { this.ctx = createContext(structure); this.boundary = { box: structure.boundingBox, sphere: structure.boundingSphere }; this.buckets = { offset: structure.bucketOffset, count: structure.bucketCounts, array: structure.bucketArray }; + this.result = this.ctx.result } }