UNPKG

@realsee/dnalogel

Version:
109 lines (108 loc) 2.93 kB
import type * as THREE from 'three'; export type Color = THREE.Color | string | number; export declare const DEFAULT_COLOR = 16777215; export declare const DEFAULT_LINE_COLOR = 16777215; export declare const DEFAULT_LINE_WIDTH = 1; export declare const DEFAULT_LINE_OPACITY = 1; export declare const DEFAULT_OPACITY = 0.4; export declare const DEFAULT_HIGHLIGHT_OPACITY = 0.6; export type OpacityStyle = { /** * @description: 透明度 * @default 0.5 */ opacity?: number; }; export type ColorStyle = { /** * @description: 颜色 * @default 0xffffff */ color?: Color; }; export type LineOpacityStyle = { /** * @description: 透明度 * @default 1 */ lineOpacity?: number; }; export type LineColorStyle = { /** * @description: 边框线颜色 * @default 0xffffff */ lineColor?: Color; }; export type LineWidthStyle = { /** * @description: 线宽 * @default 1 */ lineWidth?: number; }; export type CreateLimitConfig = { /** * @description 限制折线绘制的平面; `xoz` 限制在水平面; `y` 限制垂直面; `none` 不限制 * @default `none` */ limit: 'xoz' | 'y' | 'none'; }; export type DrawMethodConfig = { /** * @description 矩形绘制方式; `vertex` 按顺序绘制三个点; `diagonal` 先绘制对角线; * @default `diagonal` */ drawMethod: 'vertex' | 'diagonal'; }; export type OcclusionStyle = { /** * @description 是否以一种半透明的方式显示遮挡的部分 */ occlusionVisibility: boolean; /** * @description 当 occlusionVisibility 为true时,以哪种方式显示被遮挡的部分 * @params 'depthTest': 关闭深度测试, 'translucence': 半透明 * @default 'translucence' */ occlusionMode: 'translucence' | 'depthTest'; }; export type LengthConfig = { /** * @description 开启 距离 展示 * @default false */ lengthEnable: boolean; /** * @description 距离/面积 单位 * @default 'm' */ lengthUnit: 'm' | 'mm' | 'ft'; /** * @description Number of decimal places for length measurements in metric units (meters). Area measurements remain at fixed 2 decimal places. * @default 2 */ precision?: number; }; export type DisplayInfoConfig = { /** * @description 提示信息 */ tip: string | HTMLElement; /** * @description 提示信息样式 */ cssStyle?: string; }; export type LineStyle = LineColorStyle & LineOpacityStyle & LineWidthStyle; export type PolygonDrawConfig = { /** * @description 简单模式:不吸附、不与模型发生关系,所有点高度取模型最高点 * @default false */ simpleMode?: boolean; /** * @description 闭合吸附的屏幕像素距离,单位px,默认10 */ autoClosePixelDistance?: number; };