molstar
Version:
A comprehensive macromolecular library.
234 lines (233 loc) • 8.8 kB
TypeScript
/**
* Copyright (c) 2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author Alexander Rose <alexander.rose@weirdbyte.de>
*/
import { ParamDefinition as PD } from '../../../mol-util/param-definition';
import { Structure } from '../../../mol-model/structure';
import { ThemeRegistryContext } from '../../../mol-theme/theme';
import { RepresentationContext, RepresentationParamsGetter } from '../../../mol-repr/representation';
import { StructureRepresentation, StructureRepresentationProvider } from '../../../mol-repr/structure/representation';
import { UnitsVisual } from '../../../mol-repr/structure/units-visual';
import { ValidationReport } from './prop';
import { ComplexVisual } from '../../../mol-repr/structure/complex-visual';
export declare const IntraUnitClashParams: {
linkCap: PD.BooleanParam;
sizeFactor: PD.Numeric;
linkScale: PD.Numeric;
linkSpacing: PD.Numeric;
aromaticScale: PD.Numeric;
aromaticSpacing: PD.Numeric;
aromaticDashCount: PD.Numeric;
dashCount: PD.Numeric;
dashScale: PD.Numeric;
dashCap: PD.BooleanParam;
stubCap: PD.BooleanParam;
radialSegments: PD.Numeric;
unitKinds: PD.MultiSelect<"spheres" | "gaussians" | "atomic">;
includeParent: PD.BooleanParam;
doubleSided: PD.BooleanParam;
flipSided: PD.BooleanParam;
flatShaded: PD.BooleanParam;
ignoreLight: PD.BooleanParam;
xrayShaded: PD.BooleanParam;
transparentBackfaces: PD.Select<string>;
bumpFrequency: PD.Numeric;
bumpAmplitude: PD.Numeric;
alpha: PD.Numeric;
quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
material: PD.Group<PD.Normalize<{
metalness: number;
roughness: number;
bumpiness: number;
}>>;
clip: PD.Group<PD.Normalize<{
variant: import("../../../mol-util/clip").Clip.Variant;
objects: PD.Normalize<{
type: any;
invert: any;
position: any;
rotation: any;
scale: any;
}>[];
}>>;
instanceGranularity: PD.BooleanParam;
};
export declare type IntraUnitClashParams = typeof IntraUnitClashParams;
export declare function IntraUnitClashVisual(materialId: number): UnitsVisual<IntraUnitClashParams>;
export declare const InterUnitClashParams: {
linkCap: PD.BooleanParam;
sizeFactor: PD.Numeric;
linkScale: PD.Numeric;
linkSpacing: PD.Numeric;
aromaticScale: PD.Numeric;
aromaticSpacing: PD.Numeric;
aromaticDashCount: PD.Numeric;
dashCount: PD.Numeric;
dashScale: PD.Numeric;
dashCap: PD.BooleanParam;
stubCap: PD.BooleanParam;
radialSegments: PD.Numeric;
unitKinds: PD.MultiSelect<"spheres" | "gaussians" | "atomic">;
includeParent: PD.BooleanParam;
doubleSided: PD.BooleanParam;
flipSided: PD.BooleanParam;
flatShaded: PD.BooleanParam;
ignoreLight: PD.BooleanParam;
xrayShaded: PD.BooleanParam;
transparentBackfaces: PD.Select<string>;
bumpFrequency: PD.Numeric;
bumpAmplitude: PD.Numeric;
alpha: PD.Numeric;
quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
material: PD.Group<PD.Normalize<{
metalness: number;
roughness: number;
bumpiness: number;
}>>;
clip: PD.Group<PD.Normalize<{
variant: import("../../../mol-util/clip").Clip.Variant;
objects: PD.Normalize<{
type: any;
invert: any;
position: any;
rotation: any;
scale: any;
}>[];
}>>;
instanceGranularity: PD.BooleanParam;
};
export declare type InterUnitClashParams = typeof InterUnitClashParams;
export declare function InterUnitClashVisual(materialId: number): ComplexVisual<InterUnitClashParams>;
export declare const ClashesParams: {
unitKinds: PD.MultiSelect<"spheres" | "gaussians" | "atomic">;
visuals: PD.MultiSelect<"intra-clash" | "inter-clash">;
linkCap: PD.BooleanParam;
sizeFactor: PD.Numeric;
linkScale: PD.Numeric;
linkSpacing: PD.Numeric;
aromaticScale: PD.Numeric;
aromaticSpacing: PD.Numeric;
aromaticDashCount: PD.Numeric;
dashCount: PD.Numeric;
dashScale: PD.Numeric;
dashCap: PD.BooleanParam;
stubCap: PD.BooleanParam;
radialSegments: PD.Numeric;
includeParent: PD.BooleanParam;
doubleSided: PD.BooleanParam;
flipSided: PD.BooleanParam;
flatShaded: PD.BooleanParam;
ignoreLight: PD.BooleanParam;
xrayShaded: PD.BooleanParam;
transparentBackfaces: PD.Select<string>;
bumpFrequency: PD.Numeric;
bumpAmplitude: PD.Numeric;
alpha: PD.Numeric;
quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
material: PD.Group<PD.Normalize<{
metalness: number;
roughness: number;
bumpiness: number;
}>>;
clip: PD.Group<PD.Normalize<{
variant: import("../../../mol-util/clip").Clip.Variant;
objects: PD.Normalize<{
type: any;
invert: any;
position: any;
rotation: any;
scale: any;
}>[];
}>>;
instanceGranularity: PD.BooleanParam;
};
export declare type ClashesParams = typeof ClashesParams;
export declare function getClashesParams(ctx: ThemeRegistryContext, structure: Structure): {
unitKinds: PD.MultiSelect<"spheres" | "gaussians" | "atomic">;
visuals: PD.MultiSelect<"intra-clash" | "inter-clash">;
linkCap: PD.BooleanParam;
sizeFactor: PD.Numeric;
linkScale: PD.Numeric;
linkSpacing: PD.Numeric;
aromaticScale: PD.Numeric;
aromaticSpacing: PD.Numeric;
aromaticDashCount: PD.Numeric;
dashCount: PD.Numeric;
dashScale: PD.Numeric;
dashCap: PD.BooleanParam;
stubCap: PD.BooleanParam;
radialSegments: PD.Numeric;
includeParent: PD.BooleanParam;
doubleSided: PD.BooleanParam;
flipSided: PD.BooleanParam;
flatShaded: PD.BooleanParam;
ignoreLight: PD.BooleanParam;
xrayShaded: PD.BooleanParam;
transparentBackfaces: PD.Select<string>;
bumpFrequency: PD.Numeric;
bumpAmplitude: PD.Numeric;
alpha: PD.Numeric;
quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
material: PD.Group<PD.Normalize<{
metalness: number;
roughness: number;
bumpiness: number;
}>>;
clip: PD.Group<PD.Normalize<{
variant: import("../../../mol-util/clip").Clip.Variant;
objects: PD.Normalize<{
type: any;
invert: any;
position: any;
rotation: any;
scale: any;
}>[];
}>>;
instanceGranularity: PD.BooleanParam;
};
export declare type ClashesRepresentation = StructureRepresentation<ClashesParams>;
export declare function ClashesRepresentation(ctx: RepresentationContext, getParams: RepresentationParamsGetter<Structure, ClashesParams>): ClashesRepresentation;
export declare const ClashesRepresentationProvider: StructureRepresentationProvider<{
unitKinds: PD.MultiSelect<"spheres" | "gaussians" | "atomic">;
visuals: PD.MultiSelect<"intra-clash" | "inter-clash">;
linkCap: PD.BooleanParam;
sizeFactor: PD.Numeric;
linkScale: PD.Numeric;
linkSpacing: PD.Numeric;
aromaticScale: PD.Numeric;
aromaticSpacing: PD.Numeric;
aromaticDashCount: PD.Numeric;
dashCount: PD.Numeric;
dashScale: PD.Numeric;
dashCap: PD.BooleanParam;
stubCap: PD.BooleanParam;
radialSegments: PD.Numeric;
includeParent: PD.BooleanParam;
doubleSided: PD.BooleanParam;
flipSided: PD.BooleanParam;
flatShaded: PD.BooleanParam;
ignoreLight: PD.BooleanParam;
xrayShaded: PD.BooleanParam;
transparentBackfaces: PD.Select<string>;
bumpFrequency: PD.Numeric;
bumpAmplitude: PD.Numeric;
alpha: PD.Numeric;
quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
material: PD.Group<PD.Normalize<{
metalness: number;
roughness: number;
bumpiness: number;
}>>;
clip: PD.Group<PD.Normalize<{
variant: import("../../../mol-util/clip").Clip.Variant;
objects: PD.Normalize<{
type: any;
invert: any;
position: any;
rotation: any;
scale: any;
}>[];
}>>;
instanceGranularity: PD.BooleanParam;
}, ValidationReport.Tag.Clashes>;