Skip to content

mxcad_2d API 文档 / 2d / McDbGroup

Class: McDbGroup

2d.McDbGroup

McDbGroup 是图纸中的分组对象,用于把多个对象组织成一个逻辑集合。

Description

该类用于管理一组对象的整体选择、命名和描述信息,便于对多个对象进行统一处理。 通过它可以完成:

  • 创建一组对象集合;
  • 设置组名和描述;
  • 控制组是否可选;
  • 通过数据库中的组字典保存和查询分组。

使用方式:

  1. 先选择多个对象;
  2. 调用数据库的 CreateGroup() 创建组;
  3. 通过 name、description、isSelectable 控制组属性;
  4. 后续按组对象执行整体管理或选择处理。

总结:在实际开发中,McDbGroup 是对象分组管理的核心类型,适合实现批量处理、统一选择和组织管理。

Example

ts
import { MxCpp, McDbGroup, MxCADSelectionSet } from "mxcad";

// 创建并管理图形分组对象。
async function testGroup() {
  const ss = new MxCADSelectionSet();
  const ok = await ss.userSelect("选择要分组的对象");
  if (!ok) return;

  const mxcad = MxCpp.getCurrentMxCAD();
  const group = new McDbGroup();
  group.name = "MyGroup";
  group.description = "测试分组";
  mxcad.getDatabase().CreateGroup(ss.getIds(), group.name);
}

Hierarchy

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

new McDbGroup(imp?)

构造函数。

Parameters

NameType
imp?any

Overrides

McDbObject.constructor

Properties

imp

imp: any = 0

内部实现对象。

Inherited from

McDbObject.imp

Accessors

description

get description(): string

Returns

string

set description(description): void

说明内容

Parameters

NameType
descriptionstring

Returns

void


dxf0

get dxf0(): string

得到对象的DXF组码的类型名,这个和AutoCAD中的DXF组码是一样。 比如直线的类型名为:McDbLine,DXF0组码值: LINE,DXF0组码值可以用来构造集时的类型过滤。

Returns

string

Inherited from

McDbObject.dxf0


isSelectable

get isSelectable(): boolean

Returns

boolean

set isSelectable(val): void

是否选择操作

Parameters

NameType
valboolean

Returns

void


name

get name(): string

Returns

string

set name(name): void

组名

Parameters

NameType
namestring

Returns

void


objectName

get objectName(): string

获取对象名称。

Returns

string

返回对象名

Inherited from

McDbObject.objectName

Methods

append

append(id): boolean

向组添加对象

Parameters

NameType
idMcObjectId

Returns

boolean


appendArray

appendArray(aryId): boolean

向组添加对象数组

Parameters

NameType
aryIdMcObjectId[]

Returns

boolean


assertObjectModification

assertObjectModification(autoUndo?): number

设置对象被改变的状态,可自动触发更新显示函数,更新显示。 比如块表记录更新了,需要通知块引用更新显示,可以调用该函数。

Parameters

NameTypeDefault valueDescription
autoUndobooleanfalse这次修改是否要自动支持撤销,默认为false

Returns

number

Inherited from

McDbObject.assertObjectModification


clear

clear(): boolean

清空组

Returns

boolean


clone

clone(): null | McDbObject

克隆对象。

Returns

null | McDbObject

克隆出的对象。

Inherited from

McDbObject.clone


createExtensionDictionary

createExtensionDictionary(): boolean

创建对象的扩展字典数据.

Returns

boolean

Inherited from

McDbObject.createExtensionDictionary


erase

erase(): boolean

删除对象。

Returns

boolean

是否删除成功。

Inherited from

McDbObject.erase


getAllEntityId

getAllEntityId(): McObjectId[]

得到组中所有对象

Returns

McObjectId[]


getDatabase

getDatabase(): McDbDatabase

得到对象所在的数据库

Returns

McDbDatabase

返回数据库

Inherited from

McDbObject.getDatabase


getDatabaseIndexId

getDatabaseIndexId(): number

获取对象的索引ID

Returns

number

Inherited from

McDbObject.getDatabaseIndexId


getExtensionDictionary

getExtensionDictionary(): McDbDictionary

得到对象的扩展字典数据.

Returns

McDbDictionary

扩展字典数据

Inherited from

McDbObject.getExtensionDictionary


getGripEditBasePointsIndex

getGripEditBasePointsIndex(): number[]

获取对象的夹点对应的编辑基点索引。

Returns

number[]

Inherited from

McDbObject.getGripEditBasePointsIndex


getGripPoints

getGripPoints(): McGePoint3dArray

获取对象的夹点数组

Returns

McGePoint3dArray

Inherited from

McDbObject.getGripPoints


getHandle

getHandle(): string

得到对象句柄

Returns

string

返回对象句柄

Inherited from

McDbObject.getHandle


getImp

getImp(): any

获取内部实现对象。

Returns

any

内部实现对象。

Inherited from

McDbObject.getImp


getJson

getJson(): string

获取 JSON 格式的字符串。

Returns

string

JSON 格式的字符串。

Inherited from

McDbObject.getJson


getObjectID

getObjectID(): McObjectId

获取对象 ID。

Returns

McObjectId

对象 ID。

Inherited from

McDbObject.getObjectID


getOwnerID

getOwnerID(): number

得到对象拥用者的id

Returns

number

Inherited from

McDbObject.getOwnerID


has

has(id): boolean

组中是否有该对象

Parameters

NameType
idMcObjectId

Returns

boolean


initTempObject

initTempObject(imp): void

初始化临时对象。

Parameters

NameTypeDescription
impany内部实现对象。

Returns

void

Inherited from

McDbObject.initTempObject


isErased

isErased(): boolean

对象是否已经删除

Returns

boolean

Inherited from

McDbObject.isErased


isHaveExtensionDictionary

isHaveExtensionDictionary(): boolean

是否有扩展字典数据.

Returns

boolean

Inherited from

McDbObject.isHaveExtensionDictionary


isKindOf

isKindOf(sObjectName): boolean

判断对象类型

Parameters

NameTypeDescription
sObjectNamestring类型名

Returns

boolean

返回对象是否是目标类型

Inherited from

McDbObject.isKindOf


isNull

isNull(): any

判断是否为空对象

Returns

any

Inherited from

McDbObject.isNull


moveGripPointsAt

moveGripPointsAt(iIndex, dXOffset, dYOffset, dZOffset): any

移动对象的夹点

Parameters

NameTypeDescription
iIndexnumber索引
dXOffsetnumberX轴偏移量
dYOffsetnumberY轴偏移量
dZOffsetnumberZ轴偏移量

Returns

any

Inherited from

McDbObject.moveGripPointsAt


numEntities

numEntities(): number

得到组中所有对象数量

Returns

number


setJson

setJson(str): boolean

设置 JSON 格式的字符串。

Parameters

NameTypeDescription
strstringJSON 格式的字符串。

Returns

boolean

是否设置成功。

Inherited from

McDbObject.setJson


unErase

unErase(): boolean

反删除对象。

Returns

boolean

Inherited from

McDbObject.unErase