Skip to content
On this page

mxcad_2d API 文档 / 2d / MxCADSelectionSet

Class: MxCADSelectionSet

2d.MxCADSelectionSet

选择集 用于选择实体

Hierarchy

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

new MxCADSelectionSet()

构造函数

Overrides

McRxObject.constructor

Properties

imp

imp: any = 0

内部实现对象。

Inherited from

McRxObject.imp


isSelectHighlight

isSelectHighlight: boolean = true

选择是否高亮


isWhileSelect

isWhileSelect: boolean = true

是否循环选择

Accessors

dxf0

get dxf0(): string

获取 DXF 代码 0 的值。

Returns

string

Inherited from

McRxObject.dxf0


objectName

get objectName(): string

获取对象名称。

Returns

string

Inherited from

McRxObject.objectName

Methods

allSelect

allSelect(filter?): number

全选

Example

ts
import { MxCADSelectionSet } from "mxcad";

   let ss = new MxCADSelectionSet();
   ss.allSelect();

Parameters

NameTypeDefault valueDescription
filternull | MxCADResbufnull过滤对象

Returns

number


constructor_MxCADResbuf

Protected constructor_MxCADResbuf(imp): void

Parameters

NameType
impany

Returns

void

Inherited from

McRxObject.constructor_MxCADResbuf


count

count(): number

获取当前选中的个数

Returns

number


crossingSelect

crossingSelect(dX1, dY1, dX2, dY2, filter?): number

根据两个对角点选择一个实体对象的索引

Parameters

NameTypeDefault valueDescription
dX1numberundefined角点1 X轴值
dY1numberundefined角点1 Y轴值
dX2numberundefined角点2 X轴值
dY2numberundefined角点2 Y轴值
filternull | MxCADResbufnull过滤对象

Returns

number


forEach

forEach(call): void

遍历已选中的实体

Example

ts
import { MxCADSelectionSet } from "mxcad";

   let ss = new MxCADSelectionSet();
   ss.allSelect();
   ss.forEach((id) => {
       let ent: any = id.getMcDbEntity();
   })

Parameters

NameType
call(val: McObjectId) => void

Returns

void


getIds

getIds(): McObjectId[]

得到当前已选中的所有对象ID

Returns

McObjectId[]

选中id对象数组


getImp

getImp(): any

获取内部实现对象。

Returns

any

内部实现对象。

Inherited from

McRxObject.getImp


getJson

getJson(): string

获取 JSON 格式的字符串。

Returns

string

JSON 格式的字符串。

Inherited from

McRxObject.getJson


getSelectPoint

getSelectPoint(): Object

得到选择形成的两个对角点

Returns

Object

NameType
pt1McGePoint3d
pt2McGePoint3d

initTempObject

initTempObject(imp): void

初始化临时对象。

Parameters

NameTypeDescription
impany内部实现对象。

Returns

void

Inherited from

McRxObject.initTempObject


isKindOf

isKindOf(sObjectName): boolean

判断对象类型

Parameters

NameTypeDescription
sObjectNamestring类型名

Returns

boolean

返回对象是否是目标类型

Inherited from

McRxObject.isKindOf


isNull

isNull(): boolean

选择集为空

Returns

boolean

Overrides

McRxObject.isNull


item

item(lItem): McObjectId

根据对象索引 得到对应对象ID

Parameters

NameTypeDescription
lItemnumber对象索引

Returns

McObjectId


pointSelect

pointSelect(dX, dY, filter?, dTol?): number

根据一个坐标点选择一个实体对象的索引

Parameters

NameTypeDefault valueDescription
dXnumberundefined坐标x
dYnumberundefined坐标y
filternull | MxCADResbufnull过滤对象
dTolnumber-1-

Returns

number


setJson

setJson(str): boolean

设置 JSON 格式的字符串。

Parameters

NameTypeDescription
strstringJSON 格式的字符串。

Returns

boolean

是否设置成功。

Inherited from

McRxObject.setJson


userSelect

userSelect(strPrompt?, filter?, init?): Promise<boolean>

用户选择

Example

ts
import { MxCADResbuf, MxCADSelectionSet } from "mxcad";

  let filter = new MxCADResbuf();
  filter.AddMcDbEntityTypes("INSERT");
  let ss = new MxCADSelectionSet();
  if (!await ss.userSelect("选择要刷的目标块:", filter)) return;
  if (ss.count() == 0) return;
  let ids = ss.getIds();
  console.log(ids);

Parameters

NameTypeDefault valueDescription
strPrompt?stringundefined字符串提示
filternull | MxCADResbufnull提示
init?(getPoint: MrxDbgUiPrPoint) => anyundefined用户选择前的初始化操作

Returns

Promise<boolean>