yanchengPowerSupply/node_modules/mxdraw/dist/lib/MxModule/MxDbSVG/index.d.ts

108 lines
3.1 KiB
TypeScript

import McGiWorldDraw from '../McGiWorldDraw';
import MxDbEntity from '../MxDbEntity';
import MxDbSVGText from '../MxDbSVGText';
import MxDrawObject from '../MxDrawObject';
import drawMxDbSVG from './draw';
/**
* MxDbSVG 绘制SVG图形.
*/
declare class MxDbSVG extends MxDbEntity {
static cmd: string;
static draw: typeof drawMxDbSVG;
private svgPos;
private svg;
private svgPath;
private svgSize;
private svgAlignmentRatio;
private imagePath;
private isLoadMaterialFromPath;
private material;
/** 延z轴旋转的数值 */
svgRotate: number;
/** 是否倒置SVG图形 */
svgReverse: boolean;
svgMirror: boolean;
private svgChildColor;
svgMargin: THREE.Vector2;
private isSvgDirtyLocation;
private isLoadFromPath;
private aryText;
private svgBoxSize;
/** 固定尺寸,图片和文字大小,取屏幕像素绘图单位。 */
fixedSize: boolean;
/**使用svg的颜色 */
useSvgColor: boolean;
setSvgChildColor(aryColor: number[]): void;
getSvgChildColor(): number[];
private calcVewSize;
calcSvgDrawRect(mxObj: MxDrawObject): any;
private calcImageDrawRect;
worldDraw(pWorldDraw: McGiWorldDraw): void;
/**
* 设置SVG的路径
* @param path 路径
* @param preload 是否提前加载SVG
* */
setSvgPath(path: string, preload?: boolean): Promise<void>;
/**
* 获取SVG的路径
* */
getSvgPath(): string;
/**
* 设置SVG显示位置
* @param pos THREE.Vector3
* */
setSvgPostion(pos: THREE.Vector3): void;
/** 设置图片路径
* @param sPath 路径
* */
setImagePath(sPath: string, material?: THREE.MeshLambertMaterial): void;
/** 获取图片路径 */
getImagePath(): string;
/**
* 获取SVG显示位置
* */
getSvgPostion(): THREE.Vector3;
/**
* 设置SVG大小
* @param size THREE.Vector2 x表示宽度y表示高度
* */
setSvgSize(size: THREE.Vector2): void;
getSvgSize(): THREE.Vector2;
/** 设置SVG 的调整比例
* @param alignmentRatio THREE.Vector2
* */
setSvgAlignmentRatio(alignmentRatio: THREE.Vector2): void;
getSvgAlignmentRatio(): THREE.Vector2;
/** 获取文字数组下标中的文字
* @param index 数组下标
* @return {@link MxDbSVGText}
* */
getText(index: number): MxDbSVGText | null;
/** 添加文字
* @param txt {@link MxDbSVGText}
* */
addText(txt: MxDbSVGText): void;
getGripPoints(): Array<THREE.Vector3>;
moveGripPointsAt(index: number, offset: THREE.Vector3): boolean;
private calcSvgPosition;
dwgIn(obj: any): boolean;
dwgOut(obj: any): object;
create(): MxDbSVG;
transformBy(mat: THREE.Matrix4): void;
getTypeName(): string;
/**
* 设置颜色
* @param color 颜色值
* */
setColor(color: number | string | THREE.Color): this;
/**
* 设置svg对象
* */
setSvg(svg: any): void;
private calcSvgBoxSize;
reComputeSVG(): void;
protected onViewChange(): boolean;
}
export default MxDbSVG;