Skip to content

mxcad_2d API 文档 / 2d / MxCADUiPrString

Class: MxCADUiPrString ​

2d.MxCADUiPrString

UI交互 根据用户输入得到字符串

Example

ts
  import { MxCADUiPrString } from 'mxcad'

  const getStr = new MxCADUiPrString()
  getStr.setMessage("提示用户输入字符串:")
  const strVal = await getStr.go()
  console.log(strVal)

Hierarchy ​

Table of contents ​

Constructors ​

Methods ​

Constructors ​

constructor ​

• new MxCADUiPrString()

构造函数

Example

ts
import { MxCADUiPrString } from 'mxcad';

const getStr = new MxCADUiPrString();

Overrides ​

MxCADUiPrBase.constructor

Methods ​

abort ​

▸ abort(cause?): void

停止当前动态拖动

Parameters ​

NameTypeDefault value
causeDetailedResultDetailedResult.kCodeAbort

Returns ​

void

void

Inherited from ​

MxCADUiPrBase.abort


clearLastInputPoint ​

▸ clearLastInputPoint(): void

清除上一次的输入点数据。

Example

ts
//以 MxCADUiPrPoint 类示例, 其他MxCADUiPr* 系列的类同理
  import { MxCADUiPrPoint } from 'mxcad'

  const getPoint = new MxCADUiPrPoint();
  getPoint.clearLastInputPoint();

Returns ​

void

Inherited from ​

MxCADUiPrBase.clearLastInputPoint


disableAllTrace ​

▸ disableAllTrace(isDisable?): void

禁用所有跟踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  getPoint.disableAllTrace(true);

Parameters ​

NameTypeDefault valueDescription
isDisablebooleantrue是否禁用

Returns ​

void

Inherited from ​

MxCADUiPrBase.disableAllTrace


drawReserve ​

▸ drawReserve(callAddEntity?): void

把动态绘制的对象,保留到图上。

Example

ts
//以 MxCADUiPrPoint 类示例
 import { MxCADUiPrPoint } from 'mxcad';

 const getPoint = new MxCADUiPrPoint();
 const basePt = new McGePoint3d(0, 0, 0);
 getPoint.setBasePt(basePt);
 getPoint.setUserDraw((pt,pw)=>{
  const line = new McDbLine(basePt, pt);
  pw.drawMcDbEntity(line)
 })
 const val = await getPoint.go();
 if (!val) return;
 getPoint.drawReserve()

Parameters ​

NameTypeDescription
callAddEntity?(ent: Object3D) => void回调参数ent 类型:THREE.THREE.Object3D

Returns ​

void

Inherited from ​

MxCADUiPrBase.drawReserve


getCursorType ​

▸ getCursorType(): MxCursorType

返回光标类型

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.getCursorType())

Returns ​

MxCursorType

Inherited from ​

MxCADUiPrBase.getCursorType


getDetailedResult ​

▸ getDetailedResult(): DetailedResult

返回交互操作退出的详细原因

Example

ts
//以 MxCADUiPrDist 类示例
  import { MxCADUiPrDist } from 'mxcad';
  import { DetailedResult } from "mxdraw";

  const getDist = new MxCADUiPrDist();
  const val = await getDist.go();
  if (!val) return;
  if (getDist.getDetailedResult() === DetailedResult.kCoordIn) {
     console.log('提示输入', val)
   }

Returns ​

DetailedResult

当前交互操作返回值类型

Inherited from ​

MxCADUiPrBase.getDetailedResult


getDynamicInputType ​

▸ getDynamicInputType(): DynamicInputType

返回动态输入类型

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.getDynamicInputType())

Returns ​

DynamicInputType

动态输入显示类型

Inherited from ​

MxCADUiPrBase.getDynamicInputType


getInputToucheType ​

▸ getInputToucheType(): number

返回需要的Touche输入类型

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint();
  const toucheType = getPoint.getInputToucheType();
  console.log(toucheType)

Returns ​

number

Touche输入类型

Inherited from ​

MxCADUiPrBase.getInputToucheType


getStatus ​

▸ getStatus(): MrxDbgUiPrBaseReturn

获取操作状态

Example

ts
//以 MxCADUiPrDist 类示例
 import { MxCADUiPrDist } from 'mxcad';
 import { MrxDbgUiPrBaseReturn } from "mxdraw";

 const getDist = new MxCADUiPrDist();
 const val = await getDist.go();
 if (!val) return;
 if(getPoint.getStatus() === MrxDbgUiPrBaseReturn.kNone) {
   // 空输入
 }

Returns ​

MrxDbgUiPrBaseReturn

操作状态值

Inherited from ​

MxCADUiPrBase.getStatus


go ​

▸ go(): Promise<null | string>

开始动态拖动

Example

ts
import { MxCADUiPrString } from 'mxcad'

const getStr = new MxCADUiPrString();
const string = await getStr.go();

Returns ​

Promise<null | string>

返回一个promise对象,包含了用户输入的字符串


isDisableDynInput ​

▸ isDisableDynInput(): boolean

是否禁用动态输入框

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.isDisableDynInput())

Returns ​

boolean

Inherited from ​

MxCADUiPrBase.isDisableDynInput


isDisableDynamicTrace ​

▸ isDisableDynamicTrace(): boolean

是否禁用动态跟踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.isDisableDynamicTrace())

Returns ​

boolean

Inherited from ​

MxCADUiPrBase.isDisableDynamicTrace


isDisableGridTrace ​

▸ isDisableGridTrace(): boolean

是否禁用格网追踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.isDisableGridTrace())

Returns ​

boolean

Inherited from ​

MxCADUiPrBase.isDisableGridTrace


isDisableOrthoTrace ​

▸ isDisableOrthoTrace(): boolean

是否禁用正射追踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.isDisableOrthoTrace())

Returns ​

boolean

Inherited from ​

MxCADUiPrBase.isDisableOrthoTrace


isDisableOsnap ​

▸ isDisableOsnap(): boolean

是否禁用捕捉

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.isDisableOsnap())

Returns ​

boolean

Inherited from ​

MxCADUiPrBase.isDisableOsnap


isDisablePolarAxisTrace ​

▸ isDisablePolarAxisTrace(): boolean

是否禁用极轴跟踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  console.log(getPoint.isDisablePolarAxisTrace())

Returns ​

boolean

Inherited from ​

MxCADUiPrBase.isDisablePolarAxisTrace


isKeyWordPicked ​

▸ isKeyWordPicked(matchKeyWord): boolean

测试某一个关键字是否被用户选择

Example

ts
  //以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint();
  getPoint.setKeyWords("[选项1(A)/选项2(B)]");
  const pt = await getPoint.go();
  if(getPoint.isKeyWordPicked('A')){
   console.log('选项1')
  }else if(getPoint.isKeyWordPicked('B')){
   console.log('选项2')
  }

Parameters ​

NameTypeDescription
matchKeyWordstring要检测的关键字

Returns ​

boolean

true为真

Inherited from ​

MxCADUiPrBase.isKeyWordPicked


isOffsetInputPostion ​

▸ isOffsetInputPostion(): boolean

是否输入点遍移一个距离

Returns ​

boolean

Inherited from ​

MxCADUiPrBase.isOffsetInputPostion


keyWordPicked ​

▸ keyWordPicked(): string

返回用户选择的关键字

Example

ts
  //以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint();
  getPoint.setKeyWords("[选项1(A)/选项2(B)]");
  const pt = await getPoint.go();
  const key = getPoint.keyWordPicked();
  console.log(key)

Returns ​

string

选择的关键字

Inherited from ​

MxCADUiPrBase.keyWordPicked


keyWords ​

▸ keyWords(): string

返回关键字列表

Example

ts
//以 MxCADUiPrPoint 类示例,其他MxCADUiPr* 系列的类同理
  import { MxCADUiPrPoint } from 'mxcad'
  const getPoint = new MxCADUiPrPoint();
  getPoint.setKeyWords("[选项1(A)/选项2(B)]");
  const keyList = getPoint.keyWords();
  console.log("关键词列表", keyList)// 关键词列表 [选项1(A)/选项2(B)]

Returns ​

string

关键词列表

Inherited from ​

MxCADUiPrBase.keyWords


message ​

▸ message(): string

提示字符串

Example

ts
 //以 MxCADUiPrPoint 类示例, 其他MxCADUiPr* 系列的类同理
  import { MxCADUiPrPoint , McGePoint3d} from 'mxcad'

  const getPoint = new MxCADUiPrPoint();
  getPoint.setMessage("测试信息");
  console.log(getPoint.message());//测试信息

Returns ​

string

提示消息

Inherited from ​

MxCADUiPrBase.message


setCursorType ​

▸ setCursorType(type): void

设置光标类型

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';
  import { MxCursorType } from "mxdraw";

  const getPoint = new MxCADUiPrPoint()
  getPoint.setMessage("指定文字起点:")
  getPoint.setCursorType(MxCursorType.kCross);
  const pt = await getPoint.go();

Parameters ​

NameTypeDescription
typeMxCursorType鼠标样式类型

Returns ​

void

Inherited from ​

MxCADUiPrBase.setCursorType


setDisableDynInput ​

▸ setDisableDynInput(isDisable): void

设置是否禁用动态输入框

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  getPoint.setDisableDynInput(true);

Parameters ​

NameTypeDescription
isDisableboolean是否禁用

Returns ​

void

Inherited from ​

MxCADUiPrBase.setDisableDynInput


setDisableDynamicTrace ​

▸ setDisableDynamicTrace(isDisable): void

设置是否禁用动态跟踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  getPoint.setDisableDynamicTrace(true);

Parameters ​

NameTypeDescription
isDisableboolean是否禁用

Returns ​

void

Inherited from ​

MxCADUiPrBase.setDisableDynamicTrace


setDisableGridTrace ​

▸ setDisableGridTrace(isDisable): void

设置是否禁用格网追踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  getPoint.setDisableGridTrace(true);

Parameters ​

NameTypeDescription
isDisableboolean是否禁用

Returns ​

void

Inherited from ​

MxCADUiPrBase.setDisableGridTrace


setDisableOrthoTrace ​

▸ setDisableOrthoTrace(isDisable): void

设置是否禁用正射追踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  getPoint.setDisableOrthoTrace(true);

Parameters ​

NameTypeDescription
isDisableboolean是否禁用

Returns ​

void

Inherited from ​

MxCADUiPrBase.setDisableOrthoTrace


setDisableOsnap ​

▸ setDisableOsnap(isDisable): void

设置是否禁用捕捉

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  getPoint.setDisableOsnap(true);

Parameters ​

NameTypeDescription
isDisableboolean是否禁用

Returns ​

void

Inherited from ​

MxCADUiPrBase.setDisableOsnap


setDisablePolarAxisTrace ​

▸ setDisablePolarAxisTrace(isDisable): void

设置是否禁用极轴跟踪

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint()
  getPoint.setDisablePolarAxisTrace(true);

Parameters ​

NameTypeDescription
isDisableboolean是否禁用

Returns ​

void

Inherited from ​

MxCADUiPrBase.setDisablePolarAxisTrace


setDynamicInputType ​

▸ setDynamicInputType(type): void

设置动态输入类型

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';
  import { DynamicInputType } from "mxdraw";

  const getPoint = new MxCADUiPrPoint()
  getPoint.setDynamicInputType(DynamicInputType.kXYCoordInput);

Parameters ​

NameTypeDescription
typeDynamicInputType动态输入显示类型

Returns ​

void

Inherited from ​

MxCADUiPrBase.setDynamicInputType


setInputToucheType ​

▸ setInputToucheType(toucheType): void

设置需要的Touche输入类型,默认值是 MxType.InputToucheType.kGetBegan

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint();
  getPoint.setInputToucheType(MxType.InputToucheType.kGetEnd);

Parameters ​

NameTypeDescription
toucheTypenumbertoucheType类型

Returns ​

void

Inherited from ​

MxCADUiPrBase.setInputToucheType


setKeyWords ​

▸ setKeyWords(keyWordList): void

设置关键字列表

Example

ts
  //以 MxCADUiPrPoint 类示例, 其他MxCADUiPr* 系列的类同理
  import { MxCADUiPrPoint } from 'mxcad'
  const getPoint = new MxCADUiPrPoint();
  getPoint.setKeyWords("[选项1(A)/选项2(B)]")

Parameters ​

NameTypeDescription
keyWordListstring关键词列表

Returns ​

void

void

Inherited from ​

MxCADUiPrBase.setKeyWords


setLastInputPoint ​

▸ setLastInputPoint(pt): void

设置上一次的输入点。

Example

ts
  //以 MxCADUiPrPoint 类示例, 其他MxCADUiPr* 系列的类同理
  import { MxCADUiPrPoint , McGePoint3d} from 'mxcad'

  const getPoint = new MxCADUiPrPoint();
  getPoint.setLastInputPoint(new McGePoint3d(0,0,0));

Parameters ​

NameTypeDescription
ptMcGePoint3d点对象

Returns ​

void

Inherited from ​

MxCADUiPrBase.setLastInputPoint


setMessage ​

▸ setMessage(message): void

设置提示字符串

Example

ts
  //以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad'

  const getPoint = new MxCADUiPrPoint();
  getPoint.setMessage("\n提示消息")

Parameters ​

NameTypeDescription
messagestring提示消息

Returns ​

void

提示消息

Inherited from ​

MxCADUiPrBase.setMessage


setOffsetInputPostion ​

▸ setOffsetInputPostion(isOffset): void

设置输入点遍移一个距离

Parameters ​

NameType
isOffsetboolean

Returns ​

void

Inherited from ​

MxCADUiPrBase.setOffsetInputPostion


setUserDraw ​

▸ setUserDraw(pDraw): void

设置交互过程的动态绘制调用对象

Example

ts
//以 MxCADUiPrPoint 类示例
  import { MxCADUiPrPoint } from 'mxcad';

  const getPoint = new MxCADUiPrPoint();
  getPoint.setUserDraw((pt,pw)=>{
    console.log(pt, pw)
  })
  const pt = await getPoint.go();

Parameters ​

NameTypeDescription
pDraw(currentPoint: McGePoint3d, pWorldDraw: McEdGetPointWorldDrawObject) => voidMcEdGetPointWorldDrawObject | 动态绘制调用对象

Returns ​

void

void

Inherited from ​

MxCADUiPrBase.setUserDraw


setUserInputControls ​

▸ setUserInputControls(contros): void

设置输入控制设置

Example

ts
// 以 MxCADUiPrInt 类示例
  import { MxCADUiPrInt } from 'mxcad';
  import { UserInputControls } from "mxdraw"

  let getInt = new MxCADUiPrInt();
  getInt.setMessage("输入整数:");
  getInt.setUserInputControls(UserInputControls.kNoZeroResponseAccepted);
  let iRowNum = await getInt.go();
  if (iRowNum == null) return;

Parameters ​

NameType
controsnumber

Returns ​

void

Inherited from ​

MxCADUiPrBase.setUserInputControls


userInputControls ​

▸ userInputControls(): number

返回输入控制设置

Example

ts
// 以 MxCADUiPrInt 类示例
  import { MxCADUiPrInt } from 'mxcad';

  let getInt = new MxCADUiPrInt();
  console.log(getInt.userInputControls())

Returns ​

number

Inherited from ​

MxCADUiPrBase.userInputControls


value ​

▸ value(): string

获取用户输入的字符串

Example

ts
import { MxCADUiPrString } from 'mxcad';

const getStr = new MxCADUiPrString();
const val = await getStr.go();
if(!val) return;
const string = getStr.value();
console.log(string)

Returns ​

string