UNPKG

molstar

Version:

A comprehensive macromolecular library.

30 lines (29 loc) 1.07 kB
/** * Copyright (c) 2018-2019 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal <david.sehnal@gmail.com> * @author Alexander Rose <alexander.rose@weirdbyte.de> */ import { Box3D } from '../primitives/box3d'; import { Sphere3D } from '../primitives/sphere3d'; export interface Result<T> { count: number; indices: T[]; squaredDistances: number[]; } export declare namespace Result { function add<T>(result: Result<T>, index: T, distSq: number): void; function reset(result: Result<any>): void; function create<T = number>(): Result<T>; function copy<T = number>(out: Result<T>, result: Result<T>): Result<T>; } export interface Lookup3D<T = number> { find(x: number, y: number, z: number, radius: number, result?: Result<T>): 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>; }