import { Color } from "three"; import McGiWorldDraw from "../McGiWorldDraw"; import MxDbEntity from "../MxDbEntity"; import drawMxDbText from "./draw"; import { SpriteTextObj, SpriteTextColorType, TextFontWeight } from "./SpriteText"; /** * MxDbText 绘制文字 * @describe 适用于标签标注类型的文字(永远面向相机的平面) * @example * ``` js * obj = new MxDbText() obj.rxInit() obj.position = new THREE.Vector3() obj.backgroundColor = '#ff0000' obj.padding = 5 obj.strokeWidth = 3 obj.strokeColor = "#3a8bd2" obj.borderColor = "#ff00ff" obj.borderWidth = 2 obj.borderRadius = 2 obj.opacity = 0.8 obj.text = 'This is\nsome multi-line\ntext' obj.height = 100000 obj.color = "#fff000" * ``` */ export declare class MxDbText extends MxDbEntity { static cmd: string; static draw: typeof drawMxDbText; /** 文字所在位置*/ position: import("three").Vector3; setPosition(position: THREE.Vector3): this; private _text; /** 文字内容*/ get text(): string; set text(text: string); setText(text: string): this; private _height; /** 文字高度*/ get height(): number; set height(height: number); setHeight(height: number): this; private _backgroundColor; /** 背景颜色 */ get backgroundColor(): SpriteTextColorType; set backgroundColor(color: SpriteTextColorType); setBackgroundColor(backgroundColor: SpriteTextColorType): this; private _padding; /** 填充范围 */ get padding(): number | number[]; set padding(padding: number | number[]); setPadding(padding: number | number[]): this; private _borderWidth; /** 边框宽度 */ get borderWidth(): number; set borderWidth(borderWidth: number); setBorderWidth(borderWidth: number): this; private _borderRadius; /** 边框圆角 */ get borderRadius(): number; set borderRadius(borderRadius: number); setBorderRadius(borderRadius: number): this; private _borderColor; /** 边框颜色 */ get borderColor(): SpriteTextColorType; set borderColor(borderColor: SpriteTextColorType); setBorderColor(borderColor: SpriteTextColorType): this; private _fontFace; /** 客户端字体 */ get fontFace(): string; set fontFace(fontFace: string); setFontFace(fontFace: string): this; private _fontSize; /** 字体大小 */ get fontSize(): number; set fontSize(fontSize: number); setFontSize(fontSize: number): this; private _fontWeight; /** 字体粗细 */ get fontWeight(): TextFontWeight; set fontWeight(fontWeight: TextFontWeight); setFontWeight(fontWeight: TextFontWeight): this; private _strokeWidth; /** 笔划宽度 */ get strokeWidth(): number; set strokeWidth(strokeWidth: number); setStrokeWidth(strokeWidth: number): this; private _strokeColor; /** 笔划颜色 */ get strokeColor(): SpriteTextColorType; set strokeColor(strokeColor: SpriteTextColorType); setStrokeColor(strokeColor: SpriteTextColorType): this; private _textAlign; /** 文本格式 */ get textAlign(): CanvasTextAlign; set textAlign(textAlign: CanvasTextAlign); setTextAlign(textAlign: CanvasTextAlign): this; private _textShadowBlur; /** 文字阴影模糊程度 */ get textShadowBlur(): number; set textShadowBlur(textShadowBlur: number); setTextShadowBlur(textShadowBlur: number): this; private _textShadowColor; /** 文字阴影颜色*/ get textShadowColor(): string | number | Color | undefined; set textShadowColor(textShadowColor: string | number | Color | undefined); setTextShadowColor(textShadowColor: string | number | Color | undefined): this; private _textShadowOffsetX; /** 文字阴影X轴偏移量 */ get textShadowOffsetX(): number; set textShadowOffsetX(textShadowOffsetX: number); setTextShadowOffsetX(textShadowOffsetX: number): this; private _textShadowOffsetY; /** 文字阴影X轴偏移量 */ get textShadowOffsetY(): number; set textShadowOffsetY(textShadowOffsetY: number); setTextShadowOffsetY(textShadowOffsetY: number): this; private _angle; /** 角度*/ get angle(): number; set angle(angle: number); setAngle(angle: number): this; private _scale; /** 缩放倍数 */ get scale(): number; set scale(scale: number); setScale(scale: number): this; private _underline; /** 下划线 */ get underline(): boolean; set underline(underline: boolean); setUnderline(underline: boolean): void; /** SpriteText实例 */ protected spriteText: SpriteTextObj; getTypeName(): string; worldDraw(pWorldDraw: McGiWorldDraw): void; /**创建精灵文字对象 */ protected createSpriteText(): void; getGripPoints(): THREE.Vector3[]; moveGripPointsAt(index: number, offset: THREE.Vector3): boolean; create(): MxDbEntity; dwgIn(obj: any): boolean; dwgOut(obj: any): object; getGeomExtents(): THREE.Box3 | null; erase(): boolean; }