Skip to content
On this page

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