mxcad_2d API 文档 / 2d / McDbXlsxTable
Class: McDbXlsxTable
2d.McDbXlsxTable
自定义实体。
Example
import { IMcDbDwgFiler, McDbCustomEntity, McDbLine, McDbPolyline, McGePoint3d, McGePoint3dArray, MxCADUiPrPoint, MxCADWorldDraw, MxCpp } from "mxcad";
import { MxFun } from "mxdraw";
// 新创建 McDbTestLineCustomEntity 类继承 McDbCustomEntity
class McDbTestLineCustomEntity extends McDbCustomEntity {
// 定义McDbTestLineCustomEntity内部的点对象 pt1、pt2
private pt1: McGePoint3d = new McGePoint3d();
private pt2: McGePoint3d = new McGePoint3d();
// 构造函数
constructor(imp?: any) {
super(imp);
}
// 创建函数
public create(imp: any) {
return new McDbTestLineCustomEntity(imp)
}
// 获取类名
public getTypeName(): string {
return "McDbTestLineCustomEntity";
}
// 读取自定义实体数据pt1、pt2
public dwgInFields(filter: IMcDbDwgFiler): boolean {
this.pt1 = filter.readPoint("pt1").val;
this.pt2 = filter.readPoint("pt2").val;
return true;
}
// 写入自定义实体数据pt1、pt2
public dwgOutFields(filter: IMcDbDwgFiler): boolean {
filter.writePoint("pt1", this.pt1);
filter.writePoint("pt2", this.pt2);
return true;
}
// 处理夹点编辑效果
public moveGripPointsAt(iIndex: number, dXOffset: number, dYOffset: number, dZOffset: number) {
this.assertWrite();
if (iIndex == 0) {
this.pt1.x += dXOffset;
this.pt1.y += dYOffset;
this.pt1.z += dZOffset;
}
else if (iIndex == 1) {
this.pt2.x += dXOffset;
this.pt2.y += dYOffset;
this.pt2.z += dZOffset;
}
};
// 设置对象编辑点位
public getGripPoints(): McGePoint3dArray {
let ret = new McGePoint3dArray()
ret.append(this.pt1);
ret.append(this.pt2);
return ret;
};
// 绘制实体
public worldDraw(draw: MxCADWorldDraw): void {
// let tmpline = new McDbLine(this.pt1, this.pt2);
let pl= new McDbPolyline()
pl.addVertexAt(this.pt1)
pl.addVertexAt(this.pt2)
pl.addVertexAt(new McGePoint3d())
draw.drawEntity(pl);
}
// 设置pt1
public setPoint1(pt1: McGePoint3d) {
this.assertWrite();
this.pt1 = pt1.clone();
}
// 设置pt2
public setPoint2(pt2: McGePoint3d) {
this.assertWrite();
this.pt2 = pt2.clone();
}
// 获取pt1
public getPoint1() {
return this.pt1;
}
// 获取pt2
public getPoint2() {
return this.pt2;
}
}
Hierarchy
↳
McDbXlsxTable
Table of contents
Constructors
Properties
Accessors
- colWidth
- colorIndex
- drawOrder
- dxf0
- layer
- layerId
- linetype
- linetypeId
- linetypeScale
- lineweight
- normal
- objectName
- position
- rowHeight
- styleName
- textStyle
- textStyleId
- trueColor
- visible
- xlsxData
Methods
- IntersectWith
- addSelectedCell
- assertObjectModification
- calculateTableDimensions
- clearSelectedCell
- clone
- create
- createExtensionDictionary
- deleteColumn
- deleteRow
- deleteXData
- disableDisplay
- dwgInFields
- dwgOutFields
- erase
- explode
- getAllAppName
- getAllColumnWidths
- getAllRowHeights
- getArea
- getBoundingBox
- getCellAlignment
- getCellAtPoint
- getCellBackgroundColor
- getCellBorderLineType
- getCellBorderLineWeight
- getCellFromReference
- getCellGeometry
- getCellReference
- getCellStyles
- getCellTextAngle
- getCellTextColor
- getCellTextStyle
- getCellTextValue
- getCellValue
- getCellVerticalAlignment
- getColumnWidth
- getDatabase
- getDatabaseIndexId
- getExtensionDictionary
- getGripPoints
- getHandle
- getImp
- getJson
- getMergeCells
- getName
- getObjectID
- getOwnerID
- getRowHeight
- getSelectCellBackgroundColor
- getSelectCellTextColor
- getSelectedCell
- getSelectedCellCount
- getSelectedCells
- getSelectionRange
- getTypeName
- getxData
- getxDataDouble
- getxDataLong
- getxDataPoint
- getxDataString
- hasUnmergedCellsSelected
- highlight
- initTempObject
- insertColumn
- insertRow
- isCellSelected
- isErased
- isHaveExtensionDictionary
- isKindOf
- isMergedCellSelected
- isNull
- mergeCells
- mirror
- move
- moveGripPointsAt
- resetColumnWidth
- resetRowHeight
- rotate
- rxInit
- scaleEntity
- setAlignment
- setBatchCellAlignment
- setBatchCellBackgroundColor
- setBatchCellBorderLineType
- setBatchCellBorderLineWeight
- setBatchCellTextAngle
- setBatchCellTextColor
- setBatchCellTextStyle
- setBatchCellVerticalAlignment
- setCellAlignment
- setCellAlignmentByRef
- setCellBackgroundColor
- setCellBackgroundColorByRef
- setCellBorderLineType
- setCellBorderLineTypeByRef
- setCellBorderLineWeight
- setCellBorderLineWeightByRef
- setCellTextAngle
- setCellTextAngleByRef
- setCellTextColor
- setCellTextColorByRef
- setCellTextStyle
- setCellTextStyleByRef
- setCellValue
- setCellVerticalAlignment
- setCellVerticalAlignmentByRef
- setColumnWidth
- setFromArray
- setFromJson
- setFromWorkbook
- setJson
- setMergeCells
- setRowHeight
- setSelectCellBackgroundColor
- setSelectCellTextColor
- setSelectedCell
- setSelectedCells
- setVerticalAlignment
- setxData
- setxDataDouble
- setxDataLong
- setxDataPoint
- setxDataString
- syncData
- transformBy
- unErase
- unMergeCells
- updateDisplay
- worldDraw
Constructors
constructor
• new McDbXlsxTable(imp?
)
Parameters
Name | Type |
---|---|
imp? | any |
Overrides
Properties
imp
• imp: any
= 0
内部实现对象。
Inherited from
Accessors
colWidth
• get
colWidth(): number
表格整体列宽
Returns
number
• set
colWidth(val
): void
Parameters
Name | Type |
---|---|
val | number |
Returns
void
colorIndex
• get
colorIndex(): number
得到对象颜色索引
Example
import { McDbEntity, ColorIndexType } from 'mxcad'
const ent = new McDbEntity();
ent.colorIndex = ColorIndexType.kByblock;
console.log(ent.colorIndex)
Returns
number
Inherited from
McDbCustomEntity.colorIndex
• set
colorIndex(val
): void
设置对象颜色索引
Parameters
Name | Type | Description |
---|---|---|
val | number | 颜色索引(ColorIndexType) |
Returns
void
Inherited from
McDbCustomEntity.colorIndex
drawOrder
• get
drawOrder(): number
对象的显示顺序
Example
// 假设ent为有效实例对象
const order = ent.drawOrder();
Returns
number
Inherited from
McDbCustomEntity.drawOrder
• set
drawOrder(order
): void
对象的显示顺序
Example
import { MxCpp, MxCADSelectionSet } from "mxcad";
let ss = new MxCADSelectionSet();
if (!await ss.userSelect("\n选择对象")) return;
//得到当前图上对象的最大,小最显示顺序.
let minmaxOrder = MxCpp.getCurrentDatabase().currentSpace.getMinMaxDrawOrder();
// 把对象放到最上面。
let lOrder = minmaxOrder.maxDrawOrder + 1;
ss.forEach((id) => {
let ent = id.getMcDbEntity();
if (ent) {
ent.drawOrder = lOrder;
}
})
Parameters
Name | Type | Description |
---|---|---|
order | number | 顺序值 |
Returns
void
Inherited from
McDbCustomEntity.drawOrder
dxf0
• get
dxf0(): string
得到对象的DXF组码的类型名,这个和AutoCAD中的DXF组码是一样。 比如直线的类型名为:McDbLine,DXF0组码值: LINE,DXF0组码值可以用来构造集时的类型过滤。
Returns
string
Inherited from
McDbCustomEntity.dxf0
layer
• get
layer(): string
得到对象图层名
Returns
string
Inherited from
McDbCustomEntity.layer
• set
layer(val
): void
设置对象图层名
Example
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity();
ent.layer = "newLayerName";
console.log(ent.layer)
Parameters
Name | Type | Description |
---|---|---|
val | string | 图层名 |
Returns
void
Inherited from
McDbCustomEntity.layer
layerId
• get
layerId(): McObjectId
获取图层ID对象
Example
// 假设ent为有效实例对象
const layerId = ent.layerId;
Returns
Inherited from
McDbCustomEntity.layerId
• set
layerId(id
): void
设置图层Id对象
Example
// 假设ent为有效实例对象
const mxcad = MxCpp.getCurrentMxCAD();
const layerId = mxcad.addLayer("测试图层")
ent.layerId = layerId;
Parameters
Name | Type |
---|---|
id | McObjectId |
Returns
void
Inherited from
McDbCustomEntity.layerId
linetype
• get
linetype(): string
得到对象线型名
Returns
string
Inherited from
McDbCustomEntity.linetype
• set
linetype(val
): void
设置对象线型名
Example
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.linetype = "MyLineType";
console.log(ent.linetype)
Parameters
Name | Type | Description |
---|---|---|
val | string | 线型名 |
Returns
void
Inherited from
McDbCustomEntity.linetype
linetypeId
• get
linetypeId(): McObjectId
获取实体对象线型ID
Example
// 假设ent为有效实例对象
const linetypeId = ent.linetypeId;
Returns
Inherited from
McDbCustomEntity.linetypeId
• set
linetypeId(id
): void
设置实体对象线型ID
Example
// 假设ent为有效实例对象
const mxcad = MxCpp.getCurrentMxCAD();
const lineId = mxcad.addLinetypeEx("TestMyLine", '25,-5');
ent.linetypeId = lineId;
Parameters
Name | Type |
---|---|
id | McObjectId |
Returns
void
Inherited from
McDbCustomEntity.linetypeId
linetypeScale
• get
linetypeScale(): number
得到对象线型比例
Returns
number
Inherited from
McDbCustomEntity.linetypeScale
• set
linetypeScale(val
): void
设置对象线型比例
Example
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.linetypeScale = 0.8;
console.log(ent.linetypeScale)
Parameters
Name | Type | Description |
---|---|---|
val | number | 线型比例 |
Returns
void
Inherited from
McDbCustomEntity.linetypeScale
lineweight
• get
lineweight(): number
得到对象线重
Returns
number
Inherited from
McDbCustomEntity.lineweight
• set
lineweight(val
): void
设置对象线重
Example
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.lineweight = 20;
console.log(ent.lineweight)
Parameters
Name | Type | Description |
---|---|---|
val | number | 线重 |
Returns
void
Inherited from
McDbCustomEntity.lineweight
normal
• get
normal(): McGeVector3d
返回对象的normal
Example
Returns
Inherited from
McDbCustomEntity.normal
• set
normal(val
): void
设置对象的normal
Example
Parameters
Name | Type |
---|---|
val | McGeVector3d |
Returns
void
Inherited from
McDbCustomEntity.normal
objectName
• get
objectName(): string
获取对象名称。
Example
import { McRxObject } from 'mxcad';
let obj = new McRxObject();
console.log(obj.objectName);
Returns
string
返回对象名
Inherited from
McDbCustomEntity.objectName
position
• get
position(): McGePoint3d
表格位置和尺寸 - 渲染必需
Returns
• set
position(val
): void
Parameters
Name | Type |
---|---|
val | McGePoint3d |
Returns
void
rowHeight
• get
rowHeight(): number
表格整体行高
Returns
number
• set
rowHeight(val
): void
Parameters
Name | Type |
---|---|
val | number |
Returns
void
styleName
• get
styleName(): string
表格样式名称
Returns
string
• set
styleName(val
): void
Parameters
Name | Type |
---|---|
val | string |
Returns
void
textStyle
• get
textStyle(): string
得到对象文字样式
Returns
string
Inherited from
McDbCustomEntity.textStyle
• set
textStyle(val
): void
设置对象文字样式
Example
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.textStyle = "st_style";
Parameters
Name | Type | Description |
---|---|---|
val | string | 文字样式名 |
Returns
void
Inherited from
McDbCustomEntity.textStyle
textStyleId
• get
textStyleId(): McObjectId
获取实体文字样式
Example
// 假设ent为有效实例对象
const textStyleId = ent.textStyleId;
Returns
Inherited from
McDbCustomEntity.textStyleId
• set
textStyleId(id
): void
设置实体的文字样式
Example
// 假设ent为有效实例对象
const mxcad = MxCpp.getCurrentMxCAD();
const textStyleId = mxcad.addTextStyle("MyLineTypeTextStyle", "txt.shx", "hztxt.shx", 1);
ent.textStyleId = textStyleId;
Parameters
Name | Type |
---|---|
id | McObjectId |
Returns
void
Inherited from
McDbCustomEntity.textStyleId
trueColor
• get
trueColor(): McCmColor
得到对象颜色
Example
import { McDbEntity, McCmColor} from 'mxcad'
const ent = new McDbEntity();
ent.trueColor = new McCmColor(255, 0, 0);
console.log(ent.trueColor)
Returns
Inherited from
McDbCustomEntity.trueColor
• set
trueColor(val
): void
设置对象颜色
Parameters
Name | Type |
---|---|
val | McCmColor |
Returns
void
Inherited from
McDbCustomEntity.trueColor
visible
• get
visible(): boolean
对象是否可见
Returns
boolean
Inherited from
McDbCustomEntity.visible
• set
visible(val
): void
设置是否可见
Example
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.visible = true;
console.log(ent.visible)
Parameters
Name | Type | Description |
---|---|---|
val | boolean | 布尔值 |
Returns
void
Inherited from
McDbCustomEntity.visible
xlsxData
• get
xlsxData(): string
Returns
string
• set
xlsxData(data
): void
Parameters
Name | Type |
---|---|
data | string |
Returns
void
Methods
IntersectWith
▸ IntersectWith(intersectObject
, exOption
): McGePoint3dArray
与其他实体相交, 得到交点
Example
import { McDbLine, McDb } from 'mxcad'
const line1 = new McDbLine(new McGePoint3d(0,0,0), new McGePoint3d(20,1,0));
const line2 = new McDbLine(new McGePoint3d(10,10,0), new McGePoint3d(11,1,0));
const ptArr = line1.IntersectWith(line2, McDb.Intersect.kExtendBoth)
Parameters
Name | Type | Description |
---|---|---|
intersectObject | McDbEntity | 需要相交的是实体对象 |
exOption | Intersect | 相交的选项 |
Returns
得到所有交点
Inherited from
McDbCustomEntity.IntersectWith
addSelectedCell
▸ addSelectedCell(row
, col
): void
添加一个单元格到选中集合
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
void
assertObjectModification
▸ assertObjectModification(autoUndo?
): number
设置对象被改变的状态,可自动触发更新显示函数,更新显示。 比如块表记录更新了,需要通知块引用更新显示,可以调用该函数。
Example
//假设obj为一个数据库对象
obj.assertObjectModification()
Parameters
Name | Type | Default value |
---|---|---|
autoUndo | boolean | false |
Returns
number
Inherited from
McDbCustomEntity.assertObjectModification
calculateTableDimensions
▸ calculateTableDimensions(): Object
计算表格尺寸
Returns
Object
Name | Type |
---|---|
height | number |
width | number |
clearSelectedCell
▸ clearSelectedCell(): void
清除当前选中的单元格
Returns
void
clone
▸ clone(): null
| McDbObject
复制实体
Example
import { McDbCustomEntity } from "mxcad";
const customEnt = new McDbCustomEntity();// 构造新自定义实体对象
const cloneEnt = customEnt.clone();// 复制实体
Returns
null
| McDbObject
Inherited from
create
▸ create(imp
): McDbXlsxTable
新创建一个自定义对象 (默认调用该对象的构造函数来创建新的对象)
Parameters
Name | Type |
---|---|
imp | any |
Returns
Overrides
createExtensionDictionary
▸ createExtensionDictionary(): boolean
创建对象的扩展字典数据.
Example
//假设obj为一个数据库对象
const res = obj.createExtensionDictionary();
Returns
boolean
Inherited from
McDbCustomEntity.createExtensionDictionary
deleteColumn
▸ deleteColumn(onSelectionChange?
): void
删除选中的列
Parameters
Name | Type | Description |
---|---|---|
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
deleteRow
▸ deleteRow(onSelectionChange?
): void
删除选中的行
Parameters
Name | Type | Description |
---|---|---|
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
deleteXData
▸ deleteXData(appName
): boolean
删除实体指定应用程序名称相关的数据
Example
import { MxCADUiPrEntity, McDbEntity } from "mxcad";
let selEntity = new MxCADUiPrEntity();
selEntity.setMessage("选择对象");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.deleteXData("DataName");
if(res){
//删除成功
}else
//删除失败
}
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
Returns
boolean
Inherited from
disableDisplay
▸ disableDisplay(isDisable
): void
禁用对象的自动更新显示.
Example
import { McDbLine } from 'mxcad'
const line1 = new McDbLine(new McGePoint3d(0,0,0), new McGePoint3d(20,1,0));
line1.disableDisplay(true)
Parameters
Name | Type | Description |
---|---|---|
isDisable | boolean | 是否禁用对象自动更新显示 |
Returns
void
Inherited from
McDbCustomEntity.disableDisplay
dwgInFields
▸ dwgInFields(filter
): boolean
从 DWG 文件中读取自定义实体的数据字段
Example
import { McDbCustomEntity, IMcDbDwgFiler } from 'mxcad'
// 新创建 McDbTestLineCustomEntity 类继承 McDbCustomEntity
class McDbTestLineCustomEntity extends McDbCustomEntity {
// 定义McDbTestLineCustomEntity内部的点对象 pt1、pt2
private pt1: McGePoint3d = new McGePoint3d();
private pt2: McGePoint3d = new McGePoint3d();
// 读取自定义实体的数据字段pt1、pt2
public dwgInFields(filter: IMcDbDwgFiler): boolean {
this.pt1 = filter.readPoint("pt1").val;
this.pt2 = filter.readPoint("pt2").val;
return true;
}
}
Parameters
Name | Type |
---|---|
filter | IMcDbDwgFiler |
Returns
boolean
Overrides
dwgOutFields
▸ dwgOutFields(filter
): boolean
将自定义实体的数据字段写入到 DWG 文件中
Example
// 新创建 McDbTestLineCustomEntity 类继承 McDbCustomEntity
import { McDbCustomEntity, IMcDbDwgFiler } from 'mxcad'
class McDbTestLineCustomEntity extends McDbCustomEntity {
// 定义McDbTestLineCustomEntity内部的点对象 pt1、pt2
private pt1: McGePoint3d = new McGePoint3d();
private pt2: McGePoint3d = new McGePoint3d();
// 写入自定义实体的数据字段pt1、pt2
public dwgOutFields(filter: IMcDbDwgFiler): boolean {
filter.writePoint("pt1", this.pt1);
filter.writePoint("pt2", this.pt2);
return true;
}
}
Parameters
Name | Type |
---|---|
filter | IMcDbDwgFiler |
Returns
boolean
Overrides
erase
▸ erase(): boolean
删除对象。
Example
//假设obj为一个数据库对象
const res = obj.erase();
console.log(res);
Returns
boolean
是否删除成功。
Inherited from
explode
▸ explode(): MxCADResbuf
打碎对象,返回打后对象数据链表
Example
import { McDbEntity, MxCADResbuf } from "mxcad";
// 获取目标对象
let getEnt = new MxCADUiPrEntity();
getEnt.setMessage("选择打碎对象:");
let id = await getEnt.go();
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
// 打碎对象
let retExplode: MxCADResbuf = ent.explode();
if (retExplode.GetCount() == 0) return;
let iExplodeConut = retExplode.GetCount();
for (let j = 0; j < iExplodeConut; j++) {
let tmpobj = retExplode.AtObject(j).val;
if(tmpobj instanceof McDbEntity ){
mxcad.drawEntity(tmpobj);
}
}
Returns
resbuf 数据
Inherited from
getAllAppName
▸ getAllAppName(): McGeStringArray
获取实体中包含的所有 XData 记录的应用程序名(AppName)
Example
// 假设ent为有效实例对象
const appNames = ent.getAllAppName();
console.log(appNames);
Returns
Inherited from
McDbCustomEntity.getAllAppName
getAllColumnWidths
▸ getAllColumnWidths(): IColumnWidth
[]
获取所有列宽设置
Returns
IColumnWidth
[]
getAllRowHeights
▸ getAllRowHeights(): IRowHeight
[]
获取所有行高设置
Returns
IRowHeight
[]
getArea
▸ getArea(): Object
计算面积
Example
import { McGePoint3d, McDbCircle } from "mxcad"
const center = new McGePoint3d(0,0,0);
const circle = new McDbCircle(center, 20);
const area = circle.getArea();
console.log("圆面积:", area)
Returns
Object
val 面积值 | ret 是否获取成功
Name | Type |
---|---|
ret | boolean |
val | number |
Inherited from
getBoundingBox
▸ getBoundingBox(): Object
得到对象的最小外包
Returns
Object
Name | Type |
---|---|
maxPt | McGePoint3d |
minPt | McGePoint3d |
ret | boolean |
Inherited from
McDbCustomEntity.getBoundingBox
getCellAlignment
▸ getCellAlignment(row
, col
): undefined
| "center"
| "left"
| "right"
获取单元格水平对齐方式
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| "center"
| "left"
| "right"
水平对齐方式,如果未设置则返回'left'
getCellAtPoint
▸ getCellAtPoint(point
): null
| { col
: number
; row
: number
}
将CAD坐标点转换为表格中的单元格位置
Parameters
Name | Type | Description |
---|---|---|
point | McGePoint3d | CAD空间中的三维点 |
Returns
null
| { col
: number
; row
: number
}
单元格位置 {row, col} 或 null (当点不在表格内时)
getCellBackgroundColor
▸ getCellBackgroundColor(row
, col
): undefined
| null
| number
获取单元格背景颜色
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| null
| number
单元格背景颜色,如果未设置则返回null
getCellBorderLineType
▸ getCellBorderLineType(row
, col
): undefined
| string
获取单元格边框线型
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| string
单元格边框线型,如果未设置则返回undefined
getCellBorderLineWeight
▸ getCellBorderLineWeight(row
, col
): undefined
| number
获取单元格边框线宽
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| number
单元格边框线宽,如果未设置则返回undefined
getCellFromReference
▸ getCellFromReference(cellRef
): null
| { col
: number
; row
: number
}
从A1格式引用获取单元格索引
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
Returns
null
| { col
: number
; row
: number
}
单元格索引 {row, col} 或 null (当引用无效时)
getCellGeometry
▸ getCellGeometry(row
, col
): null
| { max
: McGePoint3d
; min
: McGePoint3d
}
获取指定单元格的几何范围
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
null
| { max
: McGePoint3d
; min
: McGePoint3d
}
单元格的几何范围 { min: McGePoint3d, max: McGePoint3d } 或 null (当单元格不存在时)
getCellReference
▸ getCellReference(row
, col
): string
获取指定单元格的A1格式引用
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
string
A1格式的单元格引用 (例如 "A1", "B2")
getCellStyles
▸ getCellStyles(): CellStyleInfo
获取单元格的样式
Returns
CellStyleInfo
getCellTextAngle
▸ getCellTextAngle(row
, col
): undefined
| number
获取单元格文本角度
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| number
单元格文本角度,如果未设置则返回undefined
getCellTextColor
▸ getCellTextColor(row
, col
): undefined
| null
| number
获取单元格文本颜色
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| null
| number
单元格文本颜色,如果未设置则返回null
getCellTextStyle
▸ getCellTextStyle(row
, col
): undefined
| string
获取单元格文本样式
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| string
单元格文本样式,如果未设置则返回undefined
getCellTextValue
▸ getCellTextValue(row
, col
): string
获取单元格的纯文本值(如果是Slate格式则提取文本)
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
string
单元格的纯文本值
getCellValue
▸ getCellValue(row
, col
): any
获取指定单元格的值
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
any
单元格值
getCellVerticalAlignment
▸ getCellVerticalAlignment(row
, col
): undefined
| "top"
| "bottom"
| "middle"
获取单元格垂直对齐方式
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
undefined
| "top"
| "bottom"
| "middle"
垂直对齐方式,如果未设置则返回'top'
getColumnWidth
▸ getColumnWidth(col
): number
获取指定列的宽度
Parameters
Name | Type | Description |
---|---|---|
col | number | 列索引 (0-based) |
Returns
number
列宽度,如果未设置则返回默认列宽
getDatabase
▸ getDatabase(): McDbDatabase
得到对象所在的数据库
Example
//假设obj为一个数据库对象
const data = obj.getDatabase();
Returns
返回数据库
Inherited from
getDatabaseIndexId
▸ getDatabaseIndexId(): number
获取对象的索引ID
Example
//假设obj为一个数据库对象
const id = obj.getDatabaseIndexId();
Returns
number
Inherited from
McDbCustomEntity.getDatabaseIndexId
getExtensionDictionary
▸ getExtensionDictionary(): McDbDictionary
得到对象的扩展字典数据.
Example
//假设obj为一个数据库对象
const id = obj.getOwnerID();
Returns
扩展字典数据
Inherited from
McDbCustomEntity.getExtensionDictionary
getGripPoints
▸ getGripPoints(): McGePoint3dArray
获取自定义对象的夹点。
Returns
夹点对象数组
Overrides
McDbCustomEntity.getGripPoints
getHandle
▸ getHandle(): string
得到对象句柄
Example
//假设obj为一个数据库对象
const handle = obj.getHandle();
Returns
string
返回对象句柄
Inherited from
getImp
▸ getImp(): any
获取内部实现对象。
Example
import { McRxObject } from 'mxcad';
let obj = new McRxObject();
let imp = obj.getImp();
Returns
any
内部实现对象。
Inherited from
getJson
▸ getJson(): string
获取 JSON 格式的字符串。
Example
import { McRxObject } from 'mxcad';
let obj = new McRxObject();
const json = obj.getJson()
Returns
string
JSON 格式的字符串。
Inherited from
getMergeCells
▸ getMergeCells(): IMergeCellInfo
[]
获取合并单元格信息
Returns
IMergeCellInfo
[]
getName
▸ getName(): string
获取自定义对象名称
Returns
string
Inherited from
getObjectID
▸ getObjectID(): McObjectId
获取对象 ID。
Example
import { McDbObject } from "mxcad";
const id = obj.getObjectID();
Returns
对象 ID。
Inherited from
getOwnerID
▸ getOwnerID(): number
得到对象拥用者的id
Example
//假设obj为一个数据库对象
const id = obj.getOwnerID();
Returns
number
Inherited from
getRowHeight
▸ getRowHeight(row
): number
获取指定行的高度
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
Returns
number
行高度,如果未设置则返回默认行高
getSelectCellBackgroundColor
▸ getSelectCellBackgroundColor(): undefined
| null
| number
获取选中单元格的背景颜色
Returns
undefined
| null
| number
getSelectCellTextColor
▸ getSelectCellTextColor(): undefined
| null
| number
获取选中单元格的文本颜色
Returns
undefined
| null
| number
getSelectedCell
▸ getSelectedCell(): null
| { col
: number
; row
: number
}
获取当前选中的单元格
Returns
null
| { col
: number
; row
: number
}
第一个选中的单元格,如果没有选中则返回null
getSelectedCellCount
▸ getSelectedCellCount(): number
获取选中单元格的数量
Returns
number
选中的单元格数量
getSelectedCells
▸ getSelectedCells(): { col
: number
; row
: number
}[]
获取所有选中的单元格
Returns
{ col
: number
; row
: number
}[]
所有选中的单元格数组
getSelectionRange
▸ getSelectionRange(): null
| { maxCol
: number
; maxRow
: number
; minCol
: number
; minRow
: number
}
获取选中单元格的范围
Returns
null
| { maxCol
: number
; maxRow
: number
; minCol
: number
; minRow
: number
}
包含选中范围的最小和最大行列索引
getTypeName
▸ getTypeName(): string
获取自定义实体的类型名称。
Returns
string
自定义实体的类型名称
Overrides
getxData
▸ getxData(appName?
): MxCADResbuf
得到对象的扩展数据
Example
// 假设ent为有效实例对象
const xData = ent.getXData();
Parameters
Name | Type | Default value | Description |
---|---|---|---|
appName | string | "" | 扩展数据名 |
Returns
Inherited from
getxDataDouble
▸ getxDataDouble(appName
): Object
获取实体的指定 XData 类型中的 double 值
Example
// 假设ent为有效实例对象
let data = ent.getxDataDouble("DataName");
if(data.ret){
console.log(data.val)
}
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
Returns
Object
double 值
Name | Type |
---|---|
ret | boolean |
val | number |
Inherited from
McDbCustomEntity.getxDataDouble
getxDataLong
▸ getxDataLong(appName
): Object
获取实体的指定 XData 类型中的 long(整数)值
Example
// 假设ent为有效实例对象
let data = ent.getxDataLong("DataName");
if(data.ret){
console.log(data.val)
}
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
Returns
Object
long 值
Name | Type |
---|---|
ret | boolean |
val | number |
Inherited from
getxDataPoint
▸ getxDataPoint(appName
): Object
获取实体的指定 XData 类型中的点对象
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
Returns
Object
获取结果及三维点对象
Name | Type |
---|---|
ret | boolean |
val | McGePoint3d |
Inherited from
McDbCustomEntity.getxDataPoint
getxDataString
▸ getxDataString(appName
): Object
获取与特定实体关联的 XData 信息,并以字符串形式返回
Example
// 假设ent为有效实例对象
let data = ent.getxDataString("DataName");
if(data.ret){
console.log(data.val)
}
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
Returns
Object
val XData信息 | ret 是否返回成功
Name | Type |
---|---|
ret | boolean |
val | string |
Inherited from
McDbCustomEntity.getxDataString
hasUnmergedCellsSelected
▸ hasUnmergedCellsSelected(): boolean
检查是否选中了未合并的单元格
Returns
boolean
highlight
▸ highlight(isHighlight
): void
设置对象是否高亮
Example
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.highlight(true);
Parameters
Name | Type | Description |
---|---|---|
isHighlight | boolean | 是否高亮 |
Returns
void
Inherited from
initTempObject
▸ initTempObject(imp
): void
初始化临时对象。
Example
import { McRxObject } from 'mxcad';
let obj = new McRxObject();
obj.initTempObject()
Parameters
Name | Type | Description |
---|---|---|
imp | any | 内部实现对象。 |
Returns
void
Inherited from
McDbCustomEntity.initTempObject
insertColumn
▸ insertColumn(position
, onSelectionChange?
): void
在指定位置插入列
Parameters
Name | Type | Description |
---|---|---|
position | "left" | "right" | 插入位置,'left' 为左侧插入,'right' 为右侧插入 |
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
insertRow
▸ insertRow(position
, onSelectionChange?
): void
在指定位置插入行
Parameters
Name | Type | Description |
---|---|---|
position | "above" | "below" | 插入位置,'above' 为上方插入,'below' 为下方插入 |
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
isCellSelected
▸ isCellSelected(row
, col
): boolean
检查指定单元格是否被选中
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 |
col | number | 列索引 |
Returns
boolean
是否被选中
isErased
▸ isErased(): boolean
对象是否已经删除
Example
//假设obj为一个数据库对象
const res = obj.isErased();
console.log(res);
Returns
boolean
Inherited from
isHaveExtensionDictionary
▸ isHaveExtensionDictionary(): boolean
是否有扩展字典数据.
Example
//假设obj为一个数据库对象
const res = obj.isHaveExtensionDictionary();
Returns
boolean
Inherited from
McDbCustomEntity.isHaveExtensionDictionary
isKindOf
▸ isKindOf(sObjectName
): boolean
判断对象类型
Example
import { McRxObject } from 'mxcad';
let obj = new McRxObject();
let isKind = obj.isKindOf('SomeObjectType');
console.log(isKind); // 输出: true 或 false
Parameters
Name | Type | Description |
---|---|---|
sObjectName | string | 类型名 |
Returns
boolean
返回对象是否是目标类型
Inherited from
isMergedCellSelected
▸ isMergedCellSelected(): boolean
检查是否选中了合并的单元格
Returns
boolean
isNull
▸ isNull(): any
判断是否为空对象
Example
import { McRxObject } from 'mxcad';
let obj = new McRxObject();
console.log(obj.isNull()); // 输出: true 或 false
Returns
any
Inherited from
mergeCells
▸ mergeCells(onSelectionChange?
): void
合并选中的单元格
Parameters
Name | Type | Description |
---|---|---|
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
mirror
▸ mirror(point1
, point2
): boolean
镜向对象
Example
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.mirror(new McGePoint3d(0,0,0), new McGePoint3d(20,10,0))
Parameters
Name | Type | Description |
---|---|---|
point1 | McGePoint3d | 镜像基点 |
point2 | McGePoint3d | - |
Returns
boolean
Inherited from
move
▸ move(fromPoint
, toPoint
): boolean
移动对象
Example
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.move(new McGePoint3d(0,0,0), new McGePoint3d(20,0,0))
Parameters
Name | Type | Description |
---|---|---|
fromPoint | McGePoint3d | 移动开始点 |
toPoint | McGePoint3d | 移动结束点 |
Returns
boolean
Inherited from
moveGripPointsAt
▸ moveGripPointsAt(iIndex
, dXOffset
, dYOffset
, dZOffset
): void
移动自定义对象的夹点。
Example
import { McDbCustomEntity, MxCADWorldDraw, McDbLine } from 'mxcad';
// 新创建 McDbTestLineCustomEntity 类继承 McDbCustomEntity
class McDbTestLineCustomEntity extends McDbCustomEntity {
// 定义McDbTestLineCustomEntity内部的点对象 pt1、pt2
private pt1: McGePoint3d = new McGePoint3d();
private pt2: McGePoint3d = new McGePoint3d();
// 移动自定义对象的夹点。
public moveGripPointsAt(iIndex: number, dXOffset: number, dYOffset: number, dZOffset: number) {
this.assertWrite();
if (iIndex == 0) {
this.pt1.x += dXOffset;
this.pt1.y += dYOffset;
this.pt1.z += dZOffset;
}
else if (iIndex == 1) {
this.pt2.x += dXOffset;
this.pt2.y += dYOffset;
this.pt2.z += dZOffset;
}
};
}
Parameters
Name | Type | Description |
---|---|---|
iIndex | number | 夹点索引 |
dXOffset | number | X轴偏移量 |
dYOffset | number | Y轴偏移量 |
dZOffset | number | Z轴偏移量 |
Returns
void
Overrides
McDbCustomEntity.moveGripPointsAt
resetColumnWidth
▸ resetColumnWidth(col
): void
重置指定列的宽度为默认值
Parameters
Name | Type | Description |
---|---|---|
col | number | 列索引 (0-based) |
Returns
void
resetRowHeight
▸ resetRowHeight(row
): void
重置指定行的高度为默认值
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
Returns
void
rotate
▸ rotate(basePoint
, dRotationAngle
): boolean
旋转对象
Example
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.rotate(new McGePoint3d(0,0,0), Math.PI)
Parameters
Name | Type | Description |
---|---|---|
basePoint | McGePoint3d | 旋转基点 |
dRotationAngle | number | 旋转角度 |
Returns
boolean
Inherited from
rxInit
▸ rxInit(): void
自定义实体注册
Example
import { MxFun } from 'mxdraw
// MxCAD创建成功
MxFun.on("mxcadApplicationCreatedMxCADObject", (param) => {
// McDbTestLineCustomEntity 自定义实体
new McDbTestLineCustomEntity().rxInit();// 自定义实体注册
MxFun.addCommand("MxTest_DrawCustomEntity");// 注册绘制实体命令
})
Returns
void
Inherited from
scaleEntity
▸ scaleEntity(basePoint
, dScaleFactor
): boolean
缩放对象
Example
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.scaleEntity(new McGePoint3d(0,0,0), 0.5)
Parameters
Name | Type | Description |
---|---|---|
basePoint | McGePoint3d | 缩放基点 |
dScaleFactor | number | 缩放因子(<1 缩小; >1 放大) |
Returns
boolean
Inherited from
setAlignment
▸ setAlignment(alignment
, onSelectionChange?
): void
设置选中单元格的水平对齐方式
Parameters
Name | Type | Description |
---|---|---|
alignment | "center" | "left" | "right" | 对齐方式 |
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
setBatchCellAlignment
▸ setBatchCellAlignment(cells
, alignment
): void
批量设置单元格水平对齐方式
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
alignment | "center" | "left" | "right" | 水平对齐方式 |
Returns
void
setBatchCellBackgroundColor
▸ setBatchCellBackgroundColor(cells
, color
): void
批量设置单元格背景颜色
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
color | undefined | null | number | 背景颜色值,null表示删除背景色 |
Returns
void
setBatchCellBorderLineType
▸ setBatchCellBorderLineType(cells
, lineType
): void
批量设置单元格边框线型
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
lineType | string | 边框线型(如 "Continuous", "Dashed", "Dotted"等) |
Returns
void
setBatchCellBorderLineWeight
▸ setBatchCellBorderLineWeight(cells
, lineWeight
): void
批量设置单元格边框线宽
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
lineWeight | number | 边框线宽(毫米) |
Returns
void
setBatchCellTextAngle
▸ setBatchCellTextAngle(cells
, textAngle
): void
批量设置单元格文本角度
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
textAngle | number | 文本角度(0-360度) |
Returns
void
setBatchCellTextColor
▸ setBatchCellTextColor(cells
, color
): void
批量设置单元格文本颜色
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
color | undefined | null | number | 文本颜色值,null表示删除文本颜色 |
Returns
void
setBatchCellTextStyle
▸ setBatchCellTextStyle(cells
, textStyle
): void
批量设置单元格文本样式
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
textStyle | string | 文本样式名称 |
Returns
void
setBatchCellVerticalAlignment
▸ setBatchCellVerticalAlignment(cells
, verticalAlignment
): void
批量设置单元格垂直对齐方式
Parameters
Name | Type | Description |
---|---|---|
cells | (string | { col : number ; row : number })[] | 单元格位置数组 { row, col } 或 A1引用字符串数组 |
verticalAlignment | "top" | "bottom" | "middle" | 垂直对齐方式 |
Returns
void
setCellAlignment
▸ setCellAlignment(row
, col
, alignment
): void
设置单元格水平对齐方式
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
alignment | "center" | "left" | "right" | 水平对齐方式 |
Returns
void
setCellAlignmentByRef
▸ setCellAlignmentByRef(cellRef
, alignment
): boolean
通过A1引用格式设置单元格水平对齐方式
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
alignment | "center" | "left" | "right" | 水平对齐方式 |
Returns
boolean
是否设置成功
setCellBackgroundColor
▸ setCellBackgroundColor(row
, col
, color
): void
设置单元格背景颜色
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
color | undefined | null | number | 背景颜色值 - 支持真彩色:0xRRGGBB,如 0x000000 黑色(RR是红色值,GG是绿色值,BB是蓝色值) - 支持颜色索引:0-255 - 支持ColorMethod.kByLayer(1)表示随层 - 支持ColorMethod.kByBlock(2)表示随块 - 传入null可移除背景颜色 |
Returns
void
setCellBackgroundColorByRef
▸ setCellBackgroundColorByRef(cellRef
, color
): boolean
通过A1引用格式设置单元格背景颜色
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
color | undefined | null | number | 背景颜色值,null表示删除背景色 |
Returns
boolean
是否设置成功
setCellBorderLineType
▸ setCellBorderLineType(row
, col
, lineType
): void
设置单元格边框线型
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
lineType | string | 边框线型(如 "Continuous", "Dashed", "Dotted"等) |
Returns
void
setCellBorderLineTypeByRef
▸ setCellBorderLineTypeByRef(cellRef
, lineType
): boolean
通过A1引用格式设置单元格边框线型
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
lineType | string | 边框线型(如 "Continuous", "Dashed", "Dotted"等) |
Returns
boolean
是否设置成功
setCellBorderLineWeight
▸ setCellBorderLineWeight(row
, col
, lineWeight
): void
设置单元格边框线宽
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
lineWeight | number | 边框线宽(毫米) |
Returns
void
setCellBorderLineWeightByRef
▸ setCellBorderLineWeightByRef(cellRef
, lineWeight
): boolean
通过A1引用格式设置单元格边框线宽
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
lineWeight | number | 边框线宽(毫米) |
Returns
boolean
是否设置成功
setCellTextAngle
▸ setCellTextAngle(row
, col
, textAngle
): void
设置单元格文本角度
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
textAngle | number | 文本角度(0-360度) |
Returns
void
setCellTextAngleByRef
▸ setCellTextAngleByRef(cellRef
, textAngle
): boolean
通过A1引用格式设置单元格文本角度
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
textAngle | number | 文本角度(0-360度) |
Returns
boolean
是否设置成功
setCellTextColor
▸ setCellTextColor(row
, col
, color
): void
设置单元格文本颜色
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
color | undefined | null | number | 文本颜色值 - 支持真彩色:0xRRGGBB,如 0x000000 黑色(RR是红色值,GG是绿色值,BB是蓝色值) - 支持颜色索引:0-255 - 支持ColorMethod.kByLayer(1)表示随层 - 支持ColorMethod.kByBlock(2)表示随块 - 传入null可移除文本颜色 |
Returns
void
setCellTextColorByRef
▸ setCellTextColorByRef(cellRef
, color
): boolean
通过A1引用格式设置单元格文本颜色
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
color | undefined | null | number | 文本颜色值,null表示删除文本颜色 |
Returns
boolean
是否设置成功
setCellTextStyle
▸ setCellTextStyle(row
, col
, textStyle
): void
设置单元格文本样式
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
textStyle | string | 文本样式名称 |
Returns
void
setCellTextStyleByRef
▸ setCellTextStyleByRef(cellRef
, textStyle
): boolean
通过A1引用格式设置单元格文本样式
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
textStyle | string | 文本样式名称 |
Returns
boolean
是否设置成功
setCellValue
▸ setCellValue(row
, col
, value
): void
设置指定单元格的值
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
value | any | 单元格值(Slate格式或普通文本) |
Returns
void
setCellVerticalAlignment
▸ setCellVerticalAlignment(row
, col
, verticalAlignment
): void
设置单元格垂直对齐方式
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
verticalAlignment | "top" | "bottom" | "middle" | 垂直对齐方式 |
Returns
void
setCellVerticalAlignmentByRef
▸ setCellVerticalAlignmentByRef(cellRef
, verticalAlignment
): boolean
通过A1引用格式设置单元格垂直对齐方式
Parameters
Name | Type | Description |
---|---|---|
cellRef | string | A1格式的单元格引用 (例如 "A1", "B2") |
verticalAlignment | "top" | "bottom" | "middle" | 垂直对齐方式 |
Returns
boolean
是否设置成功
setColumnWidth
▸ setColumnWidth(col
, width
): void
设置指定列的宽度
Parameters
Name | Type | Description |
---|---|---|
col | number | 列索引 (0-based) |
width | number | 列宽度(单位与style.colWidth一致) |
Returns
void
setFromArray
▸ setFromArray(data
): void
Parameters
Name | Type |
---|---|
data | any [][] |
Returns
void
setFromJson
▸ setFromJson(jsonArray
): void
Parameters
Name | Type |
---|---|
jsonArray | any [] |
Returns
void
setFromWorkbook
▸ setFromWorkbook(processedData
): void
Parameters
Name | Type |
---|---|
processedData | ICellStyleInfo |
Returns
void
setJson
▸ setJson(str
): boolean
设置 JSON 格式的字符串。
Example
import { McRxObject } from 'mxcad';
let obj = new McRxObject();
const res = obj.setJson('{"key": "value"}');
console.log(res)
Parameters
Name | Type | Description |
---|---|---|
str | string | JSON 格式的字符串。 |
Returns
boolean
是否设置成功。
Inherited from
setMergeCells
▸ setMergeCells(mergeCells
): void
设置合并单元格信息
Parameters
Name | Type |
---|---|
mergeCells | IMergeCellInfo [] |
Returns
void
setRowHeight
▸ setRowHeight(row
, height
): void
设置指定行的高度
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
height | number | 行高度(单位与style.rowHeight一致) |
Returns
void
setSelectCellBackgroundColor
▸ setSelectCellBackgroundColor(color
, onSelectionChange?
): void
设置选中单元格的背景颜色
Parameters
Name | Type | Description |
---|---|---|
color | undefined | null | number | 颜色值 |
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
setSelectCellTextColor
▸ setSelectCellTextColor(color
, onSelectionChange?
): void
设置选中单元格的文本颜色
Parameters
Name | Type | Description |
---|---|---|
color | undefined | null | number | 颜色值 |
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
setSelectedCell
▸ setSelectedCell(row
, col
): void
设置当前选中的单元格
Parameters
Name | Type | Description |
---|---|---|
row | number | 行索引 (0-based) |
col | number | 列索引 (0-based) |
Returns
void
setSelectedCells
▸ setSelectedCells(cells
): void
设置多个选中的单元格
Parameters
Name | Type | Description |
---|---|---|
cells | { col : number ; row : number }[] | 单元格位置数组 [{row, col}, ...] |
Returns
void
setVerticalAlignment
▸ setVerticalAlignment(alignment
, onSelectionChange?
): void
设置选中单元格的垂直对齐方式
Parameters
Name | Type | Description |
---|---|---|
alignment | "top" | "bottom" | "middle" | 垂直对齐方式 |
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
setxData
▸ setxData(xdata
): boolean
设置对象的扩展数据
Example
import { MxCADUiPrEntity, McDbEntity } from "mxcad";
//设置扩展数据
let selEntity = new MxCADUiPrEntity();
selEntity.setMessage("选择对象");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
ent.setxData(new MxCADResbuf([{type:DxfCode.kExDataName,val:"DataName"},{type:DxfCode.kString,val:"yyyyy"}]));
Parameters
Name | Type | Description |
---|---|---|
xdata | MxCADResbuf | 扩展数据链表 |
Returns
boolean
Inherited from
setxDataDouble
▸ setxDataDouble(appName
, val
): boolean
设置实体的指定 XData 类型中的 double 值
Example
import { MxCADUiPrEntity, McDbEntity } from "mxcad";
let selEntity = new MxCADUiPrEntity();
selEntity.setMessage("选择对象");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.setxDataDouble("DataName", 0);
if(res){
//设置成功
}else{
//设置失败
}
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
val | number | double 值 |
Returns
boolean
布尔值
Inherited from
McDbCustomEntity.setxDataDouble
setxDataLong
▸ setxDataLong(appName
, val
): boolean
设置实体的指定 XData 类型中的 long(整数)值
Example
import { MxCADUiPrEntity, McDbEntity } from "mxcad";
let selEntity = new MxCADUiPrEntity();
selEntity.setMessage("选择对象");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.setxDataLong("DataName", 123456);
if(res){
//设置成功
}else{
//设置失败
}
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
val | number | long 值 |
Returns
boolean
long 值
Inherited from
setxDataPoint
▸ setxDataPoint(appName
, val
): boolean
设置实体的指定 XData 类型中的点对象
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
val | McGePoint3d | 点对象 |
Returns
boolean
获取结果及三维点对象
Inherited from
McDbCustomEntity.setxDataPoint
setxDataString
▸ setxDataString(appName
, val
): boolean
设置与特定实体关联的 XData 信息,并以字符串形式设置
Example
import { MxCADUiPrEntity, McDbEntity } from "mxcad";
let selEntity = new MxCADUiPrEntity();
selEntity.setMessage("选择对象");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.setxDataString("DataName", "xxxxx");
if(res){
//设置成功
}else{
//设置失败
}
Parameters
Name | Type | Description |
---|---|---|
appName | string | 扩展数据名称 |
val | string | 字符串值 |
Returns
boolean
是否设置成功
Inherited from
McDbCustomEntity.setxDataString
syncData
▸ syncData(toCpp?
): boolean
js 对像的数据与McDbCustomEntity::m_mapData的同步。
Parameters
Name | Type | Default value |
---|---|---|
toCpp | boolean | true |
Returns
boolean
Inherited from
transformBy
▸ transformBy(_mat
): boolean
获取自定义对象矩阵坐标变换
Parameters
Name | Type |
---|---|
_mat | McGeMatrix3d |
Returns
boolean
Overrides
unErase
▸ unErase(): boolean
反删除对象。
Example
//假设obj为一个数据库对象
const res = obj.unErase();
console.log(res);
Returns
boolean
Inherited from
unMergeCells
▸ unMergeCells(onSelectionChange?
): void
取消合并选中的单元格
Parameters
Name | Type | Description |
---|---|---|
onSelectionChange? | (cells : { col : number ; row : number }[]) => void | 可选的选择变更回调 |
Returns
void
updateDisplay
▸ updateDisplay(): void
显示调用对象更新显示.
Example
// 假设ent为有效实例对象
ent.updateDisplay()
Returns
void
Inherited from
McDbCustomEntity.updateDisplay
worldDraw
▸ worldDraw(draw
): void
绘制自定义实体
Example
import { McDbCustomEntity, MxCADWorldDraw, McDbLine } from 'mxcad'
// 新创建 McDbTestLineCustomEntity 类继承 McDbCustomEntity
class McDbTestLineCustomEntity extends McDbCustomEntity {
// 定义McDbTestLineCustomEntity内部的点对象 pt1、pt2
private pt1: McGePoint3d = new McGePoint3d();
private pt2: McGePoint3d = new McGePoint3d();
//绘制实体
public worldDraw(draw: MxCADWorldDraw): void {
let tmpline = new McDbLine(this.pt1, this.pt2);
draw.drawEntity(tmpline);
}
}
Parameters
Name | Type |
---|---|
draw | MxCADWorldDraw |
Returns
void