/** @module MrxDbgUiPrPointClass */ import McEdGetPointWorldDrawObject from '../McEdGetPointWorldDrawObject'; import MrxDbgUiPrBaseReturn from '../MrxDbgUiPrBaseReturn'; export interface MrxDbgUiPrPointClass { keyWords(): string; setKeyWords(keyWordList: string): void; message(): string; setMessage(message: string): void; keyWordPicked(): string; isKeyWordPicked(matchKeyWord: string): boolean; setInputToucheType(toucheType: number): void; getInputToucheType(): number; setUserDraw(pDraw: any): void; value(): THREE.Vector3; valueDocCoord(): THREE.Vector3; basePt(): THREE.Vector3; setBasePt(basePt: THREE.Vector3): void; setUseBasePt(useIt: boolean): void; go(retcall: (status: MrxDbgUiPrBaseReturn) => void): void; goWhile(retcall: (status: MrxDbgUiPrBaseReturn) => any, exitcall?: (status: MrxDbgUiPrBaseReturn) => any): void; drawReserve(callAddEntity?: (ent: THREE.Object3D) => void): void; } /** * MrxDbgUiPrPoint 用于构建一个取点对象 * @example ```typescript * new Mx.MrxDbgUiPrPoint() * ``` */ export default class MrxDbgUiPrPoint { constructor(); /** * 返回关键字列表 * @returns 关键词列表 */ keyWords(): string; /** * 设置关键字列表 * @param keyWordList 关键词列表 * @returns void */ setKeyWords(keyWordList: string): void; /** * 提示字符串 * @returns 提示消息 */ message(): string; /** * 设置提示字符串 * @param message 提示消息 * @returns 提示消息 */ setMessage(message: string): void; /** * 返回用户选择的关键字 * @returns 选择的关键字 */ keyWordPicked(): string; /** * 测试某一个关键字是否被用户选择 * @param matchKeyWord 要检测的关键字 * @returns true为真 */ isKeyWordPicked(matchKeyWord: string): boolean; /** * 设置交互过程的动态绘制调用对象 * @param pDraw {@link McEdGetPointWorldDrawObject | 动态绘制调用对象} * @returns void */ setUserDraw(pDraw: McEdGetPointWorldDrawObject | ((currentPoint: THREE.Vector3, pWorldDraw: McEdGetPointWorldDrawObject) => void)): void; /** * 得以获取的点对象,Three.js坐标 * @returns 点对象 THREE.THREE.Vector3 */ value(): THREE.Vector3; /** * 得以获取的点对象,DWG图纸坐标. * @returns 点对象 DWG图纸坐标 */ valueDocCoord(): THREE.Vector3; /** * 得到动态拖动的基点 * @returns 基点 THREE.THREE.Vector3 */ basePt(): THREE.Vector3; /** * 设置动态拖动的基点 * @param basePt 基点 THREE.THREE.Vector3 * @returns 点对象 DWG图纸坐标 */ setBasePt(basePt: THREE.Vector3): void; /** * 设置使用动态拖动的基点 * @param useIt 是否设置 默认为false * @returns void */ setUseBasePt(useIt: boolean): void; /** * 开始动态拖动 * @param retcall 回调参数status {@link MrxDbgUiPrBaseReturn | 状态值} * @returns void */ go(retcall?: (status: MrxDbgUiPrBaseReturn) => void): Promise; /** * 动态拖动,连续取点,直到ESC退出。 * @param retcall 回调参数status {@link MrxDbgUiPrBaseReturn | 状态值} * @param exitcall 回调参数status {@link MrxDbgUiPrBaseReturn | 状态值} * @returns void */ goWhile(retcall: (status: MrxDbgUiPrBaseReturn) => any, exitcall?: (status: MrxDbgUiPrBaseReturn) => any): void; /** * 把动态绘制的对象,保留到图上。 * @param callAddEntity 回调参数ent 类型:THREE.THREE.Object3D * @returns 点对象 DWG图纸坐标 */ drawReserve(callAddEntity?: (ent: THREE.Object3D) => void): void; /** * 设置需要的Touche输入类型,默认值是 {@link MxType.InputToucheType.kGetBegan} * */ setInputToucheType(toucheType: number): void; /** * 返回需要的Touche输入类型 */ getInputToucheType(): number; }