@realsee/dnalogel
Version:
109 lines (108 loc) • 2.93 kB
TypeScript
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;
};