ZWCloud2DJson转换实体接口实体Json配置参数说明
基本说明: 提供接口实现输入 json 生成 dwg 图纸,以及解析 dwg 图纸生成对应的 json 文件; 已支持的实体如下:
实体类型 | 名称 | |
---|---|---|
ZcDbPoint | 点 | |
ZcDbLine | 线 | ZcDbcurve |
ZcDbCircle | 圆 | |
ZcDbArc | 弧线 | |
ZcDbEllipse | 椭圆/椭圆弧 | |
ZcDbdPolyline | 二维多段线 | |
ZcDb3dPolyline | 三维多段线 | |
ZcDbAlignedDimension | 对齐标注 | ZcDbDimension |
ZcDbRotatedDimension | 转角标注 | |
ZcDbRadialDimension | 半径标注 | |
ZcDbDiametricDimension | 直径标注 | |
ZcDb2LineAngularDimension | 角度标注 | |
ZcDb3PointAngularDimension | 角度标注 | |
ZcDbOrdinateDimension | 坐标标注 | |
ZcDbCircularHole | 圆孔标注 | 通过块实现,只支持由 json 生成 dwg |
ZcDbText | 文字 | |
ZcDbMtext | 多行文字 | |
ZcDbCustomTable | 表格 | |
ZcDbBlockReference | 块参照 | |
ZcDbSpline | 样条曲线 | |
ZcDbHatch | 填充 | |
ZcDbLeader | 引线 |
# 一、基础实体 json 转换
# 1.1 实体通用属性
实体基本属性对应 zwcad 属性面板中的基本特性

参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
color | int 或 list | 否 | 0 | 颜色,支持输入颜色索引和 RGB 值; |
layer | string | 否 | 默认图层"0" | 图层 |
lineType | string | 否 | "ByLayer" | 线型 |
lineTypeScale | double | 否 | 1.0 | 线型比例 |
lineweight | int | 否 | 随层 | 线宽 |
transparency | int | 否 | -1 | 透明度(0-90 内的整数) ,-1 表示随层,-2 表示随块 |
thickness | double | 否 | 0 | 厚度 |
normal | list | 否 | [0,0,1] | 法向 |
plotType | 打印样式 | 不支持自定义生成,仅 dwg 导出 json 使用 |
# 补充说明
color
颜色,选填项,支持输入颜色索引和 RGB 值;
"ByLayer" 随层对应索引值为: 256, "ByBlock" 随块索引值为:0
layer
图层名 ,选填项,默认图层"0";lineType
线型,string 类型,暂不支持自定义线型
类型 | 值 |
---|---|
随层 | "ByLayer" |
随块 | "ByBlock" |
连续 | "Continuous" |
plotType
打印样式,仅导出使用,不支持修改lineweight
线宽,选填项;
线宽枚举值对应线宽如下:
枚举值 | 对应线宽 | 枚举值 | 对应线宽 | 枚举值 | 对应线宽 |
---|---|---|---|---|---|
0 | 0.00mm | 35 | 0.35mm | 106 | 1.06mm |
5 | 0.05mm | 40 | 0.40mm | 120 | 1.20mm |
9 | 0.09mm | 50 | 0.50mm | 140 | 1.40mm |
13 | 0.13mm | 53 | 0.53mm | 158 | 1.58mm |
15 | 0.15mm | 60 | 0.60mm | 200 | 2.00mm |
18 | 0.18mm | 70 | 0.70mm | 211 | 2.11mm |
20 | 0.20mm | 80 | 0.80mm | -1 | 随层 |
25 | 0.25mm | 90 | 0.90mm | -2 | 随块 |
30 | 0.30mm | 100 | 1.00mm | -3 | 默认 |
输入 Json 模板(支持批量输入):
{
"entityList" :
[
{
"type" : "ZcDb...", //实体类型
..., //实体的特有参数
"normal" : //法向,可选,默认[0,0,1]
[
0.0,
0.0,
1.0
],
"color" : 256, //可选
"layer" : "基本实体", //可选,默认图层“0”
"lineType" : "ByLayer", //可选
"lineTypeScale" : 1.0, //可选
"lineweight" : -1, //可选
"transparency" : 0, //可选
"thickness" : 0.0 //可选
}
],
[
... //实体2
],
[
.... //实体3
]
}
# 1.2 XData 扩展信息
xdata 是 CAD 图元的拓展信息,在 ZWCAD 输入 XDATA、选择实体、输入名称即可为实体创建同名的 XDATA 数据

输入 XDLIST、选择实体、输入名称即可查看实体的同名 XDATA 数据

输入参数示例:
{
"entityList" :
[
{
"type" : "ZcDb...", //实体类型
..., //实体的一般参数
"xDataList": [
{
"xDataName": "1",
"xDataValue": {
"xDataDirection": [
[
0.0,
0.0,
1.0
]
],
"xDataDistance": [
11.109999999999999
],
"xDataInteger": [
123
],
"xDataLayerName": [
"0"
],
"xDataLocation": [
[
0.0,
0.0,
0.0
]
],
"xDataLongInteger": [
111
],
"xDataRealNum": [
11.119999999999999
],
"xDataScale": [
2.0
],
"xDataString": [
"字符串"
],
"xDataThreeRealNum": [
[
1.1000000000000001,
2.2000000000000002,
3.2999999999999998
]
],
"xDataTranslocation": [
[
384.82081324937923,
543.89205008544661,
0.0
]
]
}
}
]
}
]
}
参数名 | 类型 | 说明 |
---|---|---|
xDataDirection | 包含三个 double 数据的数组的数组 | 方向属性 |
xDataDistance | double 数组 | 距离属性 |
xDataInteger | int 数组(-32768 和 32767 之间) | 整数属性 |
xDataLayerName | string 数组(图层名) | 图层属性 |
xDataLocation | 包含三个 double 数据的数组的数组 | 位置属性 |
xDataLongInteger | long 数组(-32768 和 32767 之间) | 长整数属性 |
xDataHandle | int 数组 | 数据库句柄属性 |
xDataRealNum | double 数组 | 实数属性 |
xDataScale | double 数组 | 比例属性 |
xDataString | string 数组 | 字符串属性 |
xDataThreeRealNum | 包含三个 double 数据的数组的数组 | 三个实数属性 |
xDataTranslocation | 包含三个 double 数据的数组的数组 | 位移属性 |
注:所有的 xData 属性都为数组,可以不为一个如:
{
"entityList" :
[
{
"type" : "ZcDb...", //实体类型
..., //实体的一般参数
"xDataList": [
{
"xDataName": "1", //XDATA拓展信息名
"xDataValue": { //XDATA拓展信息数据
"xDataString": [
"字符串1",
"字符串2"
]
}
}
]
}
]
}
# 1.3 已支持实体
# 1.3.1 点的转换
功能要求:根据输入的 Json 数据,将其转换成 ZcDbPoint。
输入参数示例:
{
"entityList" :
[
{
"type" : "ZcDbPoint",
"point" :
[
94.0,
100.0,
0.0
],
"normal" :
[
0.0,
0.0,
1.0
],
"color" : 256,
"layer" : "基本实体",
"lineType" : "ByLayer",
"lineTypeScale" : 1.0,
"lineweight" : -1,
"transparency" : 0,
"thickness" : 0.0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
point | list | 是 | 无 | 点坐标 |
# 1.3.2 线的转换
功能要求:根据输入的 Json 数据,将其转换成 ZcDbLine。
输入参数示例:
{
"entityList": [
{
"type": "ZcDbLine",
"startPoint": [90.0, 90.0, 0.0],
"endPoint": [110.0, 90.0, 0.0],
// 支持输入RGB值
"color": [42, 178, 212],
"layer": "基本实体",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"thickness": 0.0,
"transparency": 0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
startPoint | list | 是 | 无 | 起点坐标 |
endPoint | list | 是 | 无 | 终点坐标 |
# 1.3.3 圆的转换
功能要求:根据输入的 Json 数据,将其转换成 ZcDbCircle。
输入参数示例:
{
"entityList": [
{
"type": "ZcDbCircle",
"center": [105.0, 100.0, 0.0],
"radius": 5.0,
"color": 256,
"layer": "基本实体",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"normal": [0.0, 0.0, 1.0],
"thickness": 0.0,
"transparency": 0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
center | list | 是 | 无 | 圆心坐标 |
radius | double | 是 | 无 | 半径 |
# 1.3.4 弧的转换
功能要求:根据输入的 Json 数据,将其转换成 ZcDbArc。
输入参数示例:
{
"entityList": [
{
"type": "ZcDbArc",
"center": [125.0, 100.0, 0.0],
"radius": 5.0,
"startAngle": 220.0,
"endAngle": 110.0,
"color": 256,
"layer": "基本实体",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"normal": [0.0, 0.0, 1.0],
"thickness": 0.0,
"transparency": 0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
center | list | 是 | 无 | 圆心坐标 |
radius | double | 是 | 无 | 半径 |
startAngle | double | 是 | 无 | 起点角度 |
endAngle | double | 是 | 无 | 终点角度 |
# 1.3.5 椭圆的转换
功能要求:根据输入的 Json 数据,将其转换成 ZcDbEllipse。
输入参数示例:
{
"entityList": [
{
"type": "ZcDbEllipse",
"point": [100.0, 70.0, 0.0],
"majorAxis": [-6.0, 0.0, 0.0],
"minorAxis": [0.0, -3.0, 0.0],
"majorRadius": 6.0,
"minorRadius": 3.0,
"color": 256,
"layer": "基本实体",
"lineType": "ByLayer",
"lineTypeScale": 2.0,
"lineweight": 53,
"normal": [0.0, 0.0, 1.0],
"thickness": 0.0,
"transparency": 0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
point | list | 是 | 无 | 圆心坐标 |
majorAxis | list | 是 | 无 | 长轴向量 |
minorAxis | list | 是 | 无 | 短轴向量 |
majorRadius | double | 是 | 无 | 长轴半径 |
minorRadius | double | 是 | 无 | 短轴半径 |
startAngle | double | 否 | 0 | 起点角度 |
endAngle | double | 否 | 360 | 终点角度 |
# 1.3.6 椭圆弧的转换
功能要求:根据输入的 Json 数据,将其转换成 ZcDbEllipse。
输入参数示例:
{
"entityList": [
{
"type": "ZcDbEllipse",
"point": [100.0, 70.0, 0.0],
"majorAxis": [-6.0, 0.0, 0.0],
"minorAxis": [0.0, -3.0, 0.0],
"majorRadius": 6.0,
"minorRadius": 3.0,
"startAngle": 120.0,
"endAngle": 270.0,
"color": 256,
"layer": "基本实体",
"lineType": "ByLayer",
"lineTypeScale": 2.0,
"lineweight": 53,
"normal": [0.0, 0.0, 1.0],
"thickness": 0.0,
"transparency": 0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
point | list | 是 | 无 | 圆心坐标 |
majorAxis | list | 是 | 无 | 长轴向量 |
minorAxis | list | 是 | 无 | 短轴向量 |
majorRadius | double | 是 | 无 | 长轴半径 |
minorRadius | double | 是 | 无 | 短轴半径 |
startAngle | double | 否 | 0 | 起点角度 |
endAngle | double | 否 | 360 | 终点角度 |
说明:椭圆弧是在椭圆的基础上设置起点角度和终点角度得到了,椭圆采用默认起点、终点角度。
# 1.3.7 多段线的转换
功能要求:根据输入的 Json 数据,将其转换成 ZcDbPolyline 以及 ZcDb3dPolyline。
输入参数示例 1:
{
"entityList": [
{
"type": "ZcDbPolyline",
"points": [
[136.0, 87.0],
[156.0, 87.0],
[156.0, 74.0],
[136.0, 74.0],
[136.0, 87.0]
],
"isClosed": false,
"color": 2,
"layer": "基本实体",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"thickness": 0.0,
"transparency": 0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
point | list | 是 | 无 | 多段线点的集合,点的数量不少于 2 个 |
isClosed | bool | 否 | false | 当其为 true 时,自动闭合多段线 |
输入参数示例 2:
{
"entityList": [
{
"type": "ZcDb3dPolyline",
"points": [
[120.0, 60.0, 100.0],
[146.0, 60.0, 20.0],
[142.0, 50.0, 30.0],
[117.0, 52.0, 50.0]
],
"isClosed": true,
"color": 4,
"layer": "0",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"transparency": 0
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
point | list | 是 | 无 | 多段线点的集合,点的数量不少于 2 个 |
isClosed | bool | 否 | false | 当其为 true 时,自动闭合多段线 |
# 1.3.8 标注通用属性
标注是实体的一种,实体的基本属性适用于标注(thickness ,厚度除外) 输入参数示例:
{
"entityList": [
{
"type": "ZcDb...Dimension", //对应类型的标注
"bFlipArrow1": false, //可选
"bFlipArrow2": false, //可选
"elevation": 0.0, //可选
"dimstyleName": "ISO-25", //可选
"lineSpacingFactor": 1.0, //可选
"lineSpacingStyle": 1, //可选
"strDimText": "", //可选
//可选
"textLocation": [94.059799394477878, 38.997367244625046],
"textRotation": 0.0, //可选
"color": 256, //可选
"layer": "0", //可选
"lineType": "ByLayer", //可选
"lineTypeScale": 1.0, //可选
"lineweight": -1, //可选
//可选
"normal": [0.0, 0.0, 1.0],
"transparency": 0 //可选
}
]
}
输出示例:
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 标注类型名,ZcDbDimension 表示标注 |
bFlipArrow1 | bool | 否 | false | 箭头是否反转 |
bFlipArrow2 | bool | 否 | false | 箭头是否反转 |
elevation | double | 否 | 0 | 标注高程值,即从 wcs 原点到标注所在平面的距离 |
dimstyleName | string | 否 | "ISO-25" | 标注样式名 |
lineSpacingFactor | double | 否 | 1.0 | 行间距因子(介于 0.25-4.00 之间) |
lineSpacingStyle | double | 否 | 1 | 标注的行间距样式(1 或者 2) |
strDimText | string | 否 | 用户提供的标注注释文本字符串 | |
textLocation | list | 否 | 文本位置 | |
textRotation | double | 否 | 1 | 标注文字与其默认方向所成的旋转角度(尺寸线方向) |
# 1.3.9 对齐标注
功能要求:根据输入的 Json 数据,将其转换成 ZcDbAlignedDimension。 输入参数示例::
{
"entityList": [
{
"type": "ZcDbAlignedDimension",
"dOblique": 0.0, //可选
"defPoint1": [80.536984444512001, 30.205553822738061, 0.0],
"defPoint2": [107.58261434444375, 30.205553822738054, 0.0],
"definitionPosition": [107.58261434444375, 36.912870037921138, 0.0]
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbAlignedDimension 表示对齐标注 |
defPoint1 | list | 是 | 无 | 定义点 1 |
defPoint2 | list | 是 | 无 | 定义点 2 |
definitionPosition | list | 是 | 无 | 尺寸线位置坐标 |
dOblique | double | 否 | 0 | 尺寸的延伸线倾斜角度 |
说明:

# 1.3.10 转角标注
功能要求:根据输入的 Json 数据,将其转换成 ZcDbRotatedDimesion,转角标注又称为线性标注。 输入参数示例:
{
"entityList": [
{
"type": "ZcDbLine",
"startPoint": [52.0, 84.0, 0.0],
"endPoint": [100.0, 84.0, 0.0]
},
{
"type": "ZcDbRotatedDimension",
"dOblique": 0.0, //可选
"defPoint1": [52.0, 84.0, 0.0],
"defPoint2": [100.0, 84.0, 0.0],
"definitionPosition": [107.24239282688634, 71.455807655460461, 0.0],
"rotAngle": 30.0 //可选
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbRotatedDimension 表示对齐标注 |
defPoint1 | list | 是 | 无 | 定义点 1 |
defPoint2 | list | 是 | 无 | 定义点 2 |
definitionPosition | list | 是 | 无 | 尺寸线位置坐标 |
rotAngle | double | 否 | 0 | 旋转角度 |
dOblique | double | 否 | 0 | 尺寸的延伸线倾斜角度 |
补充:

# 1.3.11 半径/直径标注
功能要求:根据输入的 Json 数据,将其转换成 ZcDbRadialDimension。
注:ZcDbRadialDimension(表示半径类型),ZcDbDiametricDimension(表示直径类型)
# 半径标注 ZcDbRadialDimension
输入参数示例 1:
{
"entityList": [
{
"type": "ZcDbCircle",
"center": [100.0, 100.0, 0.0],
"radius": 5.0
},
{
"type": "ZcDbRadialDimension",
"chordPoint": [104.5363922393187, 102.10265200426726, 0.0],
"definitionPosition": [100.0, 100.0, 0.0],
"leaderLength": 0.0 //可选
}
]
}
输出示例:

# 直径标注 ZcDbDiametricDimension
{
"entityList": [
{
"type": "ZcDbCircle",
"center": [100.0, 100.0, 0.0],
"radius": 5.0
},
{
"type": "ZcDbDiametricDimension",
"chordPoint": [104.26181005309965, 97.385239003025575, 0.0],
"definitionPosition": [95.738189946900349, 102.61476099697443, 0.0],
"leaderLength": 0.0 //可选
}
]
}
参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbRadialDimension 表示‘半径标注’类型 |
definitionPosition | list | 是 | 无 | 半径时是圆弧的中点,直径时是与 chrodPoint 相对的点 |
chrodPoint | list | 是 | 无 | 圆/弧上尺寸线的第一点 |
leaderLength | double | 否 | 0 | 引线长度 |
输出示例:

补充说明:

# 1.3.12 角度标注
功能要求:根据输入的 Json 数据,将其转换成 ZcDb2LineAngularDimension 和 ZcDb3PointAngularDimension。
ZcDb2LineAngularDimension 和 ZcDb3PointAngularDimension 均表示角度标注。
# 角度标注 1:ZcDb2LineAngularDimension
输入参数示例:
{
"entityList": [
{
"type": "ZcDb2LineAngularDimension",
"arcDefPoint": [151.38315389252051, 77.43123026973015],
"defPoint1": [156.0, 74.0, 0.0],
"defPoint2": [136.0, 74.0, 0.0],
"defPoint3": [156.0, 87.0, 0.0],
"definitionPosition": [156.0, 74.0, 0.0]
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDb2LineAngularDimension 表示‘角度标注’类型 |
definitionPosition | list | 是 | 无 | 直线 1 的端点 1 |
defPoint1 | list | 是 | 无 | 直线 1 的端点 2 |
defPoint2 | list | 是 | 无 | 直线 2 的端点 1 |
defPoint3 | list | 是 | 无 | 直线 2 的端点 2 |
arcDefPoint | list | 是 | 无 | 标注定义点 |
补充说明:

# 角度标注 2:ZcDb3PointAngularDimension(三点角度标注)
输入参数示例 2:
{
"entityList": [
{
"type": "ZcDb3PointAngularDimension",
"defPoint1": [121.17880325104721, 96.775336388738708, 0.0],
"defPoint2": [123.28989928337165, 104.69846310392954, 0.0],
"defPoint3": [125.0, 100.0, 0.0],
"definitionPosition": [119.95796944832804, 105.14973720864226, 0.0]
}
]
}
输出示例:

补充说明:

# 1.3.13 坐标标注
功能要求:根据输入的 Json 数据,将其转换成 ZcDbOrdinateDimension。
输入参数示例:
{
"entityList": [
{
"type": "ZcDbOrdinateDimension",
"defPoint1": [136.0, 87.0, 0.0],
"defPoint2": [136.0, 87.343552468730621, 0.0],
"definitionPosition": [0.0, 0.0, 0.0],
"isXord": 1
}
]
}
输出示例:

参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbOrdinateDimension 表示‘坐标标注’类型 |
defPoint1 | list | 是 | 无 | 指定的特征位置 |
defPoint2 | list | 是 | 无 | 引线端点 |
definitionPosition | list | 否 | 0, 0, 0 | UCS 的原点处 |
isXord | uint8 | 否 | 0 | 0 为 Y 坐标,1 为 X 坐标 |
补充说明:

# 1.3.14 圆孔标注
功能要求:根据输入的 Json 数据,将其转换成名称为“hole”的块实体。 输入参数示例:
{
"entityList": [
{
"type": "ZcDbCircularHole",
"holeCenter": [127.3238, 495.6117, 0.0],
"holeRadius": 10.0
}
]
}
参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbCircularHole 表示‘圆孔’类型 |
holeCenter | list | 是 | 无 | 圆心坐标 xyz |
holeRadius | double | 是 | 无 | 半径 |
输出示例:

# 1.3.15 文字 ZcDbText、ZcDbMText
功能要求:根据输入的 Json 数据,将其转换成文字实体(text)/多行文字实体(Mtext)。
# ZcDbText
输入参数示例:
{
"entityList": [
{
"color": 10,
"dOblique": 30.0,
"height": 20.0,
"horizontalMode": 0,
"layer": "图层1",
"ocsPoint1": [375.0, 440.0, 0.0],
"ocsPoint2": [0.0, 0.0, 0.0],
"rotation": 0.0,
"strText": "文字测试",
"textStyleName": "Standard",
"type": "ZcDbText",
"verticalMode": 0,
"widthFactor": 1.0
}
]
}
参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbText 表示文字实体类型 |
strText | string | 是 | 无 | 文字内容 |
height | double | 否 | 2.5 | 文字高度 |
ocsPoint1 | list | 是 | 无 | 文字插入点 |
ocsPoint2 | list | 与对齐方式有关 | 无 | 当对齐方式为左对齐时即 horizontalMode=0 时,为非必填项,默认值为(0,0,0);其它对齐方式时为必填项 |
dOblique | int | 否 | 0 | 文字倾斜度 |
rotation | int | 否 | 0 | 旋转角度 |
horizontalMode | int | 否 | 0 | 水平对齐方式 |
verticalMode | int | 否 | 0 | 垂直对齐方式 |
widthFactor | double | 否 | 1.0 | 宽度比例 |
textStyleName | string | 否 | Standard | 文字样式 |
generationFlags | int | 否 | 0 | 内部使用,非必填项 |
补充说明:
水平对齐方式枚举如下:
枚举值 | 水平对齐方式 | 枚举值 | 水平对齐方式 |
---|---|---|---|
0 | 左对齐 | 3 | 对齐 |
1 | 中心对齐 | 4 | 中间 |
2 | 右对齐 | 5 | 布满 |

垂直对齐方式枚举如下:
枚举值 | 垂直对齐方式 |
---|---|
0 | 左下 |
1 | 底部对齐 |
2 | 中间对齐 |
3 | 顶部对齐 |

“ocspoint2”为文字的插入点 2,可理解为对齐点,与文字的对齐方式相关。作用是为了确定文字的位置;例如当文字的对齐方式为左对齐时,一个点即可确认文字的位置;当文字的对齐方式为右上时,对应有两个点。如下图所示:

输出示例:

# ZcDbMText
{
"entityList": [
{
"attachPt": 1,
"color": 256,
"columnsAutoHeight": false,
"columnsFlowReversed": false,
"columnsGutter": 100.0,
"columnsHeight": [-59.143389199255125],
"columnsNums": 1,
"columnsType": 2,
"columnsWidth": 149.70921995229071,
"direction": [1.0, 0.0, 0.0],
"drawDir": 5,
"height": 20.0,
"layer": "0",
"lineSpacingFactor": 1.0,
"lineType": "ByLayer",
"location": [630.34006513021882, 475.18123444592061, 0.0],
"refRectSize": [149.70921995229071, 84.16085878399042],
"textContent": "Mtext\\P测试",
"textStyleName": "Standard",
"type": "ZcDbMText",
"vNormal": [0.0, 0.0, 1.0]
}
]
}
参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbText 表示文字实体类型 |
location | list | 是 | 无 | 文字位置 |
textContent | list | 是 | 无 | 文字内容 |
attachPt | int | 否 | 0 | 附着点类型,默认左上 |
height | double | 否 | 2.5 | 文字高度 |
columnsAutoHeight | bool | 否 | false | 自动分栏 |
columnsFlowReversed | bool | false | 翻转 | |
columnsWidth | double | 否 | 自动计算 | 栏宽 |
columnsGutter | double | 否 | 自动计算 | 栏间距 |
columnsNums | int | 否 | 自动计算 | 栏数 |
columnsType | int | 否 | 2 | 分栏类型,默认动态分栏 |
drawDir | int | 否 | 1 | 绘制方式 |
direction | list | 否 | (1,0,0) | 文字方向 |
lineSpacingFactor | double | 否 | 1.0 | 行间距因子(介于 0.25-4.00 之间) |
lineSpacingStyle | double | 否 | 1 | 标注的行间距样式(1 或者 2) |
textStyleName | string | 否 | Standard | 文字样式 |
rotation | int | 否 | 0 | 旋转角度 |
refRectSize | list | 否 | 自动计算 | 默认文字框尺寸 |
vNormal | list | 否 | (0,0,1) | 文字法向 |
refRectSize 为文字框尺寸,为一个二维数组。第一项为定义宽度,其和分栏宽度”columnsWidth“作用相同;第二项为定义高度。

drawDir 为绘制方向,枚举值对应的值为:
枚举值 | 绘制方向类型 |
---|---|
1 | 自左向右 |
2 | 自右向左 |
3 | 自上向下 |
4 | 自下向上 |
5 | 自定义 |


attachPt 为附着点 左上,中上,右上,中左,正中,中右,左下,中下,中右....
枚举值 | 附着点类型 | 枚举值 | 附着点类型 | 枚举值 | 附着点类型 |
---|---|---|---|---|---|
1 | 左上 | 9 | 右下 | 17 | 底部自适应 |
2 | 中上 | 10 | 左下 | 18 | 底部自适应 |
3 | 右上 | 11 | 中下 | 19 | 中间自适应 |
4 | 中左 | 12 | 右下 | 20 | 顶部自适应 |
5 | 正中 | 13 | 底部对齐 | 21 | 中下 |
6 | 中右 | 14 | 底部对齐 | 22 | 中下 |
7 | 左下 | 15 | 中间对齐 | 23 | 中心 |
8 | 中下 | 16 | 顶部对齐 | 24 | 中上 |

columnType 分栏类型:不分栏、静态分栏、动态分栏
枚举值 | 分栏类型 |
---|---|
0 | 不分栏 |
1 | 静态分栏 |
2 | 自动分栏 |

输出示例:

# 1.3.16 表格ZcDbCustomTable
功能要求:根据输入的 Json 数据,将其转换成 ZcDbTable 实体 输入参数示例:
{
"entityList": [
{
"type": "ZcDbCustomTable",
"insertPosition": [100.0, 100.0, 0.0],
"tableSize": [5, 3],
"defaultHeight": 10.0,
"defaultWidth": 20.0,
"defaultTextH": 5.0,
"rawsHeight": [
[2, 20],
[5, 30]
],
"colsWidth": [
[2, 30],
[1, 44.5]
],
"textContent": [
[3, 3, "Text1\n文字", [255, 0, 0]],
[4, 2, "Text2\n默认颜色"]
]
}
]
}
参数描述:
参数名 | 参数类型 | 参数效果 | 是否必要 | 备注 |
---|---|---|---|---|
type | string | 插入表格时以此字段标志其为表格 | 是 | 必须为"ZcDbCustomTable" |
insertPosition | 长度为 3 的 double 数组 | 设定表格插入点 | 否(不指定时默认在原点插入) | 插入点为表格左上角的点 |
tableSize | 长度为 2 的 int 数组 | 指定表格大小(行数、列数) | 是 | |
defaultHeight | double | 指定默认行高,除后续指定高度的行之外,其他行的高度都将设定为该高度 | 否(不指定时默认为 10) | |
defaultWidth | double | 指定默认列宽,除后续指定宽度的列之外,其他列的宽度都将设定为该宽度 | 否(不指定时默认为 20) | |
defaultTextH | double | 指定表格中的文字高度 | 否(不指定时默认为 5) | |
rawsHeight | 数组 | 指定某一行的高度,为一组数组,数组的第一个数据标识要设置行高的行为第几行,第二个数据标识其要设置的高度 | 否 | 例子中的写法将第 2 行高度设置为 20、第 5 行高度设置为 30 |
colsWidth | 数组 | 指定某一列的宽度,为一组数组,数组的第一个数据标识要设置宽度的列为第几列,第二个数据标识其要设置的宽度 | 否 | |
textContent | 数组 | 标识单元格中的文字内容,为一组数组,数组的第一个数据代表单元格在第几行,第二个数据代表单元格在第几列,第三个数据代表要输入的内容,第四个数据代表内容的颜色 | 否 | \n 代表换行数组的第四的数据可不输入,此时将采用默认颜色 |
输出示例:

指定标题: 可通过增加"title"字段设置表格标题栏,自动将表格第一行合并,其中参数的第一个数据为标题名,第二个数据为标题颜色(可不输入采用默认颜色)
{
"entityList": [
{
"type": "ZcDbCustomTable",
"title": ["title", [255, 255, 255]],
"insertPosition": [100.0, 100.0, 0.0],
"tableSize": [5, 3],
"defaultHeight": 10.0,
"defaultWidth": 20.0,
"defaultTextH": 5.0,
"rawsHeight": [
[2, 20],
[5, 30]
],
"colsWidth": [
[2, 30],
[1, 44.5]
],
"textContent": [
[3, 3, "Text1\n文字", [255, 0, 0]],
[4, 2, "Text2\n默认颜色"]
]
}
]
}
输出示例:

生成示例图纸中的表格的 Json 示例:
{
"entityList": [
{
"type": "ZcDbCustomTable",
"tableSize": [9, 8],
"defaultHeight": 330.0,
"defaultWidth": 1200.0,
"defaultTextH": 150.0,
"colsWidth": [
[1, 535],
[2, 1800],
[3, 800],
[8, 2170]
],
"textContent": [
[1, 1, "序号"],
[1, 2, "名称"],
[1, 3, "单位"],
[1, 4, "新增数量(NR)", [255, 0, 0]],
[1, 5, "拆除数量(LTE)", [255, 255, 0]],
[1, 6, "利旧数量", [255, 255, 0]],
[1, 7, "规格型号"],
[1, 8, "备注"],
[2, 1, "1"],
[2, 2, "野战光缆"],
[2, 3, "米×条"],
[2, 4, "cell2:10×1\ncell3:10×1", [255, 0, 0]],
[2, 6, "cell1:65×1", [255, 255, 0]],
[2, 7, "2芯野战光缆"],
[2, 8, "厂家提供(射频RRU至ODF/BBU)\n2小区和3小区级联"],
[3, 1, "2"],
[3, 2, "室外电源线"],
[3, 3, "米×条"],
[3, 6, "cell1:40×1\ncell2:40×1\ncell3:40×1", [255, 255, 0]],
[3, 7, "2*6mm²室外铠装电源线"],
[3, 8, "厂家提供(射频RRU至电源设备)"],
[4, 1, "3"],
[4, 2, "RRU接地线"],
[4, 3, "米×条"],
[4, 6, "cell1:3×1\ncell2:3×1\ncell3:3×1", [255, 255, 0]],
[4, 7, "16平方毫米"],
[4, 8, "厂家提供,颜色为黄绿相间"],
[5, 1, "4"],
[5, 2, "GPS馈线"],
[5, 3, "米×条"],
[5, 6, "20m×1", [255, 255, 0]],
[5, 7, "1/2\"馈线"],
[5, 8, "厂家提供"],
[6, 1, "5"],
[6, 2, "GPS避雷器接地线"],
[6, 3, "米×条"],
[6, 6, "2m×1", [255, 255, 0]],
[6, 7, "16平方毫米"],
[6, 8, "厂家提供,颜色为黄绿相间"],
[7, 1, "6"],
[7, 2, "面板天线射频跳线"],
[7, 3, "米×条"],
[7, 6, "10m×24", [255, 255, 0]],
[7, 7, "1/2\"跳线"],
[7, 8, "厂家提供,需制作设备侧接头"],
[8, 1, "7"],
[8, 2, "铠装电缆接地线"],
[8, 3, "米×条"],
[8, 4, "1m×3", [255, 0, 0]],
[8, 7, "16平方毫米"],
[8, 8, "厂家提供,颜色为黄绿或黑色"],
[9, 1, "8"],
[9, 2, "面板天线RCU电调线"],
[9, 3, "米×条"],
[9, 4, "10m×3", [255, 0, 0]],
[9, 7, "AISG"],
[9, 8, "厂家提供,新增"]
]
}
]
}
效果图:

注:由于 json 格式问题,文字内容中的“号需要输入为",\号需要输入为\,即一些字符需要加上转义符;
{
"entityList": [
{
"type": "ZcDbCustomTable",
"tableSize": [10, 6],
"defaultHeight": 250.0,
"defaultWidth": 540,
"defaultTextH": 120.0,
"colsWidth": [
[2, 1500],
[5, 1800],
[6, 3200]
],
"textContent": [
[1, 1, "序号"],
[1, 2, "名称"],
[1, 3, "单位"],
[1, 4, "数量", [255, 0, 0]],
[1, 5, "规格型号"],
[1, 6, "备注"],
[2, 1, "1"],
[2, 2, "拆除基站面板天线"],
[2, 3, "副"],
[2, 4, "3", [255, 0, 0]],
[2, 5, "65°17dBi电调", [255, 0, 0]],
[2, 6, "800MHz单频天线(4端口)"],
[3, 1, "2"],
[3, 2, "拆除基站面板天线"],
[3, 3, "副"],
[3, 4, "0", [255, 0, 0]],
[3, 5, "65°18dBi电调", [255, 0, 0]],
[3, 6, "2GHz宽频双极化定向(4端口)", [255, 0, 0]],
[4, 1, "3"],
[4, 2, "新增基站面板天线"],
[4, 3, "副"],
[4, 4, "0", [255, 0, 0]],
[4, 5, "65°17dBi/18dBi电调", [255, 0, 0]],
[4, 6, "800MHz/2GHz宽频双极化定向(4+4端口)", [255, 0, 0]],
[5, 1, "4"],
[5, 2, "拆除RRU设备"],
[5, 3, "套"],
[5, 4, "1", [255, 0, 0]],
[5, 5, "LTE(800M):2T4R 2*60W", [255, 0, 0]],
[5, 6, "拆除,现网设备", [255, 0, 0]],
[6, 1, "5"],
[6, 2, "新增RRU设备"],
[6, 3, "套"],
[6, 4, "3", [255, 0, 0]],
[6, 5, "NR(800M):4T4R 4*60W"],
[6, 6, "新增,厂家提供"],
[7, 1, "6"],
[7, 2, "交转直模块"],
[7, 3, "套"],
[7, 4, "0", [255, 0, 0]],
[7, 5, "OPM40M(1*40A/2000W)", [255, 0, 0]],
[7, 6, "新增,厂家提供"],
[8, 1, "7"],
[8, 2, "光模块"],
[8, 3, "个"],
[8, 4, "6", [255, 0, 0]],
[8, 5, "10GE-单纤双向-10Km", [255, 0, 0]],
[8, 6, "新增,厂家提供"]
]
}
]
}
效果图:

{
"entityList": [
{
"type": "ZcDbCustomTable",
"tableSize": [2, 3],
"defaultHeight": 317.73,
"defaultTextH": 120.0,
"colsWidth": [
[1, 3541.28],
[2, 3768.72],
[3, 1560.39]
],
"title": ["站址:衡阳市蒸湘区黄白路81-1号市八中生活服务大楼4层食堂顶"],
"textContent": [
[2, 1, "经纬度: E :112.63189° N :26.85944°"],
[2, 2, "站点名称:衡阳市八中食堂", [255, 0, 0]],
[2, 3, "站点ID:143080", [255, 0, 0]]
]
}
]
}
输出示例

补充说明:
- 目前标题栏默认为第一行,如需要可添加字段设置为最后一行
- 目前文字默认居中,如需要设置为其他对齐方式
{
"entityList": [
{
"type": "ZcDbCustomTable",
"tableSize": [7, 4],
"defaultHeight": 251,
"defaultWidth": 555,
"defaultTextH": 120.0,
"colsWidth": [[1, 1052]],
"textContent": [
[1, 1, "扇区号"],
[1, 2, "扇区1"],
[1, 3, "扇区2"],
[1, 4, "扇区3"],
[2, 1, "机械下倾角"],
[2, 2, "6°", [255, 0, 0]],
[2, 3, "6°", [255, 0, 0]],
[2, 4, "6°", [255, 0, 0]],
[3, 1, "电子下倾角"],
[3, 2, "0°", [255, 0, 0]],
[3, 3, "0°", [255, 0, 0]],
[3, 4, "0°", [255, 0, 0]],
[4, 1, "下倾角合计"],
[4, 2, "6°", [255, 0, 0]],
[4, 3, "6°", [255, 0, 0]],
[4, 4, "6°", [255, 0, 0]],
[5, 1, "天线高度"],
[5, 2, "47m", [255, 0, 0]],
[5, 3, "47m", [255, 0, 0]],
[5, 4, "47m", [255, 0, 0]],
[6, 1, "小区方向角"],
[6, 2, "30°", [255, 0, 0]],
[6, 3, "120°", [255, 0, 0]],
[6, 4, "120°", [255, 0, 0]],
[7, 1, "备注"],
[7, 2, "新增扇区", [255, 0, 0]],
[7, 3, "方位角调整", [255, 0, 0]]
]
}
]
}
效果图:

注:目前对某个单元格字体大小调整尚未实现,如需后续可添加字段
# 垂直、水平单元间距设置
默认垂直、水平单元间距为 0.5 倍的文字高度,如需自定义可以添加相应字段设置
参数名 | 参数效果 | 是否必要 | 备注 |
---|---|---|---|
vertSpacing | 设置垂直单元间距为几倍的文字高度 | 否 | 未设置时为 0.5 倍的文字高度 |
horzSpacing | 设置水平单元间距为几倍的文字高度 | 否 | 未设置时为 0.5 倍的文字高度 |
输入示例:
{
"entityList" :
[
{
"type" : "ZcDbCustomTable",
"tableSize" : [10 , 6],
"defaultHeight" : 250.0,
"defaultWidth" : 540,
"defaultTextH" : 120.0,
"colsWidth" :
[
[2, 1500],
[5, 1800],
[6, 3200]
],
"textContent" :
[
[1, 1, "序号"], [1, 2, "名称"], [1, 3, "单位"], [1, 4, "数量",[255,0,0]],
[1, 5, "规格型号"], [1, 6, "备注"],
[2, 1, "1"], [2, 2, "拆除基站面板天线"], [2, 3, "副"], [2, 4, "3",[255,0,0]],
[2, 5, "65°17dBi电调",[255,0,0]], [2, 6, "800MHz单频天线(4端口)"],
[3, 1, "2"], [3, 2, "拆除基站面板天线"], [3, 3, "副"], [3, 4, "0",[255,0,0]],
[3, 5, "65°18dBi电调",[255,0,0]], [3, 6, "2GHz宽频双极化定向(4端口)",[255,0,0]],
[4, 1, "3"], [4, 2, "新增基站面板天线"], [4, 3, "副"], [4, 4, "0",[255,0,0]],
[4, 5, "65°17dBi/18dBi电调",[255,0,0]], [4, 6, "800MHz/2GHz宽频双极化定向(4+4端口)",[255,0,0]],
[5, 1, "4"], [5, 2, "拆除RRU设备"], [5, 3, "套"], [5, 4, "1",[255,0,0]],
[5, 5, "LTE(800M):2T4R 2*60W",[255,0,0]], [5, 6, "拆除,现网设备",[255,0,0]],
[6, 1, "5"], [6, 2, "新增RRU设备"], [6, 3, "套"], [6, 4, "3",[255,0,0]],
[6, 5, "NR(800M):4T4R 4*60W"], [6, 6, "新增,厂家提供"],
[7, 1, "6"], [7, 2, "交转直模块"], [7, 3, "套"], [7, 4, "0",[255,0,0]],
[7, 5, "OPM40M(1*40A/2000W)",[255,0,0]], [7, 6, "新增,厂家提供"],
[8, 1, "7"], [8, 2, "光模块"], [8, 3, "个"], [8, 4, "6",[255,0,0]],
[8, 5, "10GE-单纤双向-10Km",[255,0,0]], [8, 6, "新增,厂家提供"]
]
"vertSpacing" : 2.0,
"horzSpacing" : 1.0
}
]
}

# 对齐方式设置
默认对齐方式为正中,如需修改可以添加相应的字段设置
参数名 | 参数效果 | 是否必要 | 备注 |
---|---|---|---|
alignDefault | 设置默认对齐方式,输入一个 1-9 的整数 | 否 | 1 代表左上对齐 2 代表中上对齐 3 代表右上对齐 4 代表左中对齐 5 代表正中对齐 6 代表右中对齐 7 代表左下对齐 8 代表中下对齐 9 代表右下对齐 |
alignRaws | 设置某些行的对齐方式,输入一组数组,每组数组的第一个参数为整数,代表设置对齐方式的行为第几行,第二个参数为整数,代表对齐方式 | 否 | 对齐方式规则同上 |
alignCols | 设置某些列的对齐方式,输入一组数组,每组数组的第一个参数为整数,代表设置对齐方式的列为第几列,第二个参数为整数,代表对齐方式 | 否 | 对齐方式规则同上 |
alignCells | 设置某些单元格的对齐方式,输入一组数组,每组数组的第一个参数为整数,代表单元格所在行,第二个参数为整数,代表单元格所在列,第三个参数为整数代表对齐方式 | 否 | 对齐方式规则同上 |
输出示例:
{
"entityList": [
{
"type": "ZcDbCustomTable",
"tableSize": [10, 6],
"defaultHeight": 250.0,
"defaultWidth": 540,
"defaultTextH": 120.0,
"colsWidth": [
[2, 1500],
[5, 1800],
[6, 3200]
],
"textContent": [
[1, 1, "序号"],
[1, 2, "名称"],
[1, 3, "单位"],
[1, 4, "数量", [255, 0, 0]],
[1, 5, "规格型号"],
[1, 6, "备注"],
[2, 1, "1"],
[2, 2, "拆除基站面板天线"],
[2, 3, "副"],
[2, 4, "3", [255, 0, 0]],
[2, 5, "65°17dBi电调", [255, 0, 0]],
[2, 6, "800MHz单频天线(4端口)"],
[3, 1, "2"],
[3, 2, "拆除基站面板天线"],
[3, 3, "副"],
[3, 4, "0", [255, 0, 0]],
[3, 5, "65°18dBi电调", [255, 0, 0]],
[3, 6, "2GHz宽频双极化定向(4端口)", [255, 0, 0]],
[4, 1, "3"],
[4, 2, "新增基站面板天线"],
[4, 3, "副"],
[4, 4, "0", [255, 0, 0]],
[4, 5, "65°17dBi/18dBi电调", [255, 0, 0]],
[4, 6, "800MHz/2GHz宽频双极化定向(4+4端口)", [255, 0, 0]],
[5, 1, "4"],
[5, 2, "拆除RRU设备"],
[5, 3, "套"],
[5, 4, "1", [255, 0, 0]],
[5, 5, "LTE(800M):2T4R 2*60W", [255, 0, 0]],
[5, 6, "拆除,现网设备", [255, 0, 0]],
[6, 1, "5"],
[6, 2, "新增RRU设备"],
[6, 3, "套"],
[6, 4, "3", [255, 0, 0]],
[6, 5, "NR(800M):4T4R 4*60W"],
[6, 6, "新增,厂家提供"],
[7, 1, "6"],
[7, 2, "交转直模块"],
[7, 3, "套"],
[7, 4, "0", [255, 0, 0]],
[7, 5, "OPM40M(1*40A/2000W)", [255, 0, 0]],
[7, 6, "新增,厂家提供"],
[8, 1, "7"],
[8, 2, "光模块"],
[8, 3, "个"],
[8, 4, "6", [255, 0, 0]],
[8, 5, "10GE-单纤双向-10Km", [255, 0, 0]],
[8, 6, "新增,厂家提供"]
],
"alignDefault": 1,
"alignRaws": [
[1, 2],
[2, 3]
],
"alignCols": [[2, 5]],
"alignCells": [[8, 3, 9]]
}
]
}

注:处理对齐方式的顺序为”设置行“、”设置列“、”设置单元格“,因此,若同时设置第二行为右上对齐,第二列为正中对齐则第二行第二列为正中对齐
# 合并单元格
参数名 | 参数效果 | 是否必要 | 备注 |
---|---|---|---|
mergeCells | 设置合并单元格,为一组数组,每个数组第一个参数为整数代表合并的单元格最上面的行,第二个参数为整数代表合并的单元格最左侧的列,第三个参数为整数代表合并的单元格最下面的行,第四个参数为整数代表合并的单元格最右侧的列 | 否 | 合并时仅保留左上角单元格的内容 |
示例:
{
"entityList": [
{
"type": "ZcDbCustomTable",
"tableSize": [10, 6],
"defaultHeight": 250.0,
"defaultWidth": 540,
"defaultTextH": 120.0,
"colsWidth": [
[2, 1500],
[5, 1800],
[6, 3200]
],
"textContent": [
[1, 1, "序号"],
[1, 2, "名称"],
[1, 3, "单位"],
[1, 4, "数量", [255, 0, 0]],
[1, 5, "规格型号"],
[1, 6, "备注"],
[2, 1, "1"],
[2, 2, "拆除基站面板天线"],
[2, 3, "副"],
[2, 4, "3", [255, 0, 0]],
[2, 5, "65°17dBi电调", [255, 0, 0]],
[2, 6, "800MHz单频天线(4端口)"],
[3, 1, "2"],
[3, 2, "拆除基站面板天线"],
[3, 3, "副"],
[3, 4, "0", [255, 0, 0]],
[3, 5, "65°18dBi电调", [255, 0, 0]],
[3, 6, "2GHz宽频双极化定向(4端口)", [255, 0, 0]],
[4, 1, "3"],
[4, 2, "新增基站面板天线"],
[4, 3, "副"],
[4, 4, "0", [255, 0, 0]],
[4, 5, "65°17dBi/18dBi电调", [255, 0, 0]],
[4, 6, "800MHz/2GHz宽频双极化定向(4+4端口)", [255, 0, 0]],
[5, 1, "4"],
[5, 2, "拆除RRU设备"],
[5, 3, "套"],
[5, 4, "1", [255, 0, 0]],
[5, 5, "LTE(800M):2T4R 2*60W", [255, 0, 0]],
[5, 6, "拆除,现网设备", [255, 0, 0]],
[6, 1, "5"],
[6, 2, "新增RRU设备"],
[6, 3, "套"],
[6, 4, "3", [255, 0, 0]],
[6, 5, "NR(800M):4T4R 4*60W"],
[6, 6, "新增,厂家提供"],
[7, 1, "6"],
[7, 2, "交转直模块"],
[7, 3, "套"],
[7, 4, "0", [255, 0, 0]],
[7, 5, "OPM40M(1*40A/2000W)", [255, 0, 0]],
[7, 6, "新增,厂家提供"],
[8, 1, "7"],
[8, 2, "光模块"],
[8, 3, "个"],
[8, 4, "6", [255, 0, 0]],
[8, 5, "10GE-单纤双向-10Km", [255, 0, 0]],
[8, 6, "新增,厂家提供"],
[9, 1, "合并单元格"]
],
"mergeCells": [[9, 1, 10, 5]]
}
]
}

# 1.3.17 块参照 ZcDbBlockReference
**功能要求:**根据输入的 Json 数据,将其转换成块参照(ZcDbBlockReference)。(若参照未定义的块时需要通过 json 导入块定义-见 1.4) ZcDbBlockReference
{
"entityList": [
{
"blockExtents": {
"maxPoint": [599.21027831224114, 537.13985141902788, 0.0],
"minPoint": [98.202705724750103, 225.73664840725394, 0.0]
},
"blockName": "块定义",
"layer": "0",
"ocsPosition": [0.0, 0.0, 0.0],
"rotation": 0.0,
"scaleFactors": [1.0, 1.0, 1.0],
"type": "ZcDbBlockReference"
}
]
}
参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbBlockReference 表示实体类型 |
ocsPosition | list | 是 | 无 | 块插入点 |
rotation | double | 否 | 0 | 旋转 |
scaleFactors | list | 否 | [1.0,1.0,1.0] | XYZ 比例 |
blockExtents | jsonValue | 否 | / | 块的包围盒信息,dwg 导出为 json 时其包含的字段 |
maxPoint | list | 否 | / | 块的包围盒信息,3d 空间中块边界框的最大点 |
minPoint | list | 否 | / | 块的包围盒信息,3d 空间中块边界框的最小点 |
输出示例:
# 1.3.18 样条曲线
**功能要求:**根据输入的 Json 数据,将其转换成 ZcDbSpline。 输入参数示例:
{
"entityList": [
{
"color": 256,
"controlPtTol": 0,
"degree": 3,
"endTangent": [0.0, 0.0, 0.0],
"fitPoints": [
[388.46899777940757, 423.71207182737368, 0.0],
[525.75428082760891, 525.8389287290845, 0.0],
[709.91746540446456, 329.11916338562514, 0.0],
[846.36564306822561, 496.54024027367564, 0.0],
[898.26617690352123, 256.29099493932318, 0.0],
[647.97166695588578, 237.87467648163761, 0.0]
],
"fitTol": 0.0,
"isClosed": false,
"isPeriodic": false,
"isPlanar": true,
"isRational": false,
"layer": "0",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"nKnots": 12,
"numControlPoints": 8,
"numFitPoints": 6,
"pKnots": [
0.0, 0.0, 0.0, 0.0, 171.1056511113741, 440.5768826561806,
656.55818317572971, 902.34948752987998, 1153.3206063771727,
1153.3206063771727, 1153.3206063771727, 1153.3206063771727
],
"splineShape": 2,
"startTangent": [0.0, 0.0, 0.0],
"transparency": -1,
"type": "ZcDbSpline"
},
{
"color": 256,
"controlPoints": [
[361.91601498496289, -18.413508018589937, 0.0],
[518.56332017009163, 69.016158760379639, 0.0],
[805.08476688910173, 228.93256831537462, 0.0],
[653.22209464483035, -435.21023005043014, 0.0],
[966.97416661478542, -165.05451470217207, 0.0],
[1157.5009723569788, -1.0017160222326993, 0.0]
],
"controlPtTol": 0,
"degree": 3,
"endTangent": [0.0, 0.0, 0.0],
"fitPoints": [[0.0, 0.0, 0.0]],
"fitTol": 0,
"isClosed": false,
"isPeriodic": false,
"isPlanar": true,
"isRational": false,
"layer": "0",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"nKnots": 10,
"numControlPoints": 6,
"numFitPoints": 0,
"pKnots": [
0.0, 0.0, 0.0, 0.0, 370.7366520093106, 678.10934736433751,
1153.3587796529891, 1153.3587796529891, 1153.3587796529891,
1153.3587796529891
],
"splineShape": 1,
"startTangent": [0.0, 0.0, 0.0],
"transparency": -1,
"type": "ZcDbSpline",
"weights": [-1.0, -1.0, -1.0, -1.0, -1.0, -1.0]
}
]
}
参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
point | list | 是 | 无 | 点坐标 |
splineShape | int | 是 | 2 | 2 代表拟合样条曲线,1 代表插值样曲线,对应属性面板中的方式:拟合点--2,控制点--1 |
isPlanar | bool | 否 | true | 平面 |
isPeriodic | bool | 否 | false | 周期 |
startTangent | list | 是 | 起点切点矢量 | |
endTangent | list | 是 | 终点切点矢量 | |
area | double | 否 | 自动计算 | 面积 |
fitTol | double | 否 | 0 | 拟合公差 |
isClosedSpline | bool | 否 | false | 闭合 |
numControlPoints | int | 否 | 无 | 控制点数 |
numFitPoints | int | 否 | 无 | 拟合点 |
weights | list | 否 | [-1,-1,-1,....] | 控制点权值 |
controlPoints | list | 是,按需填写 | 控制点 | |
fitPoints | list | 是,按需填写 | 拟合点 | |
pkonts | list | 是 | 结点 | |
nKonts | int | 否 | 自动计算 | 结点数 |
knotParam | int | 否 | 0 | 结点参数化 |
knotTol | double | 否 | 自动计算 | 结点公差 |
输出示例:
# 1.3.19 填充
**功能要求:**根据输入的 Json 数据,将其转换成 ZcDbHatch。 输入示例:
{
"entityList": [
{
"angle": 0,
"color": 256,
"colorTint": 0.0,
"elevation": 0.0,
"entityHandle": "618",
"gradName": "",
"gradientPatternType": 0,
"isAssociative": false,
"isDoubleHatch": false,
"isGradientFill": false,
"isSingleColorGrad": true,
"isSolidFill": false,
"layer": "剖面线层",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"loopList": [
{
"loopFlags": 0,
"segments": [
{
"center": [550.82496013272055, -30.240599205614423],
"endAngle": 3.1052625161737542,
"isClockWise": false,
"radius": 120.76340491500443,
"segType": "cirArc",
"startAngle": 2.7269728403766043
},
{
"center": [550.82496013194532, -30.240599205644038],
"endAngle": 3.4380520095332621,
"isClockWise": false,
"radius": 120.76340491422864,
"segType": "cirArc",
"startAngle": 3.1052625161737661
},
{
"endPoint": [592.56171976340147, 5.0387213325101925],
"segType": "line",
"startPoint": [435.32963767755143, 5.0387213325058013]
},
{
"endPoint": [616.88147060614529, -1.6752786674876319],
"segType": "line",
"startPoint": [592.56171976340147, 5.0387213325101925]
},
{
"endPoint": [622.23577681409324, -62.875278669276632],
"segType": "line",
"startPoint": [616.88147060614529, -1.6752786674876319]
},
{
"endPoint": [616.23577681409324, -68.87527866927654],
"segType": "line",
"startPoint": [622.23577681409324, -62.875278669276632]
},
{
"endPoint": [478.2357768140987, -68.875278669276511],
"segType": "line",
"startPoint": [616.23577681409324, -68.87527866927654]
},
{
"endPoint": [474.23894902364236, -77.446503525982351],
"segType": "line",
"startPoint": [478.2357768140987, -68.875278669276511]
},
{
"endPoint": [440.29389384528395, -78.889169092395193],
"segType": "line",
"startPoint": [474.23894902364236, -77.446503525982351]
}
]
},
{
"loopFlags": 0,
"segments": [
{
"center": [550.82496013142588, -30.24059920621977],
"endAngle": 2.6743853858690523,
"isClockWise": false,
"radius": 120.76340491357234,
"segType": "cirArc",
"startAngle": 2.5377161709372076
},
{
"center": [550.82496012593799, -30.24059920862738],
"endAngle": 2.7269728403767672,
"isClockWise": false,
"radius": 120.76340490758822,
"segType": "cirArc",
"startAngle": 2.6743853858663846
},
{
"endPoint": [474.23894906562373, -77.446503524197993],
"segType": "line",
"startPoint": [440.29389384528287, -78.889169092391953]
},
{
"endPoint": [464.53458341166106, -98.257582740031964],
"segType": "line",
"startPoint": [474.23894906562373, -77.446503524197993]
},
{
"endPoint": [451.41969946595009, -98.814603889841109],
"segType": "line",
"startPoint": [464.53458341166106, -98.257582740031964]
}
]
}
],
"normal": [0.0, 0.0, 1.0],
"numsPaths": 2,
"patternInfo": [
{
"basePoint": [0.0, 0.0],
"lineAngle": 0.78539816339744828,
"patternOffset": [-8.9802561210691518, 8.9802561210691536]
}
],
"patternName": "ANSI31",
"patternType": 0,
"plotType": 0,
"ptOrigin": [0.0, 0.0],
"scaleOrSpacing": 1.0,
"seedPoints": [
[475.37912041097434, -34.62698523602289],
[458.71085349579653, -84.631785981556718]
],
"shift": 0.0,
"style": 0,
"transparency": -1,
"type": "ZcDbHatch"
}
]
}
参数描述:
参数名 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | 实体类型 |
point | list | 是 | 无 | 点坐标 |
angle | double | 否 | 0 | 角度 |
colorTint | list | 是 | 否 | (渐变填充单色模式用)颜色色彩(0-1 值越大颜色越深) |
gradName | string | 是(渐变填充时) | 否 | 渐变填充名 |
gradientPatternType | 0 or 1 | 是 | 0 | 渐变填充类型(0:预定义 1:用户定义) |
isAssociative | bool | 是 | false | 是否为注释性 |
isDoubleHatch | bool | 是(图案填充、类型为用户定义时) | false | 是否为双向填充 |
isGradientFill | bool | 是 | 无 | 是否为渐变填充 |
isSingleColorGrad | bool | 是(渐变填充时) | 无 | 是否为单色模式 |
isSolidFill | bool | 是 | 无 | 是否为纯色填充 |
loopList | jsonvalue | 是 | 无 | 填充边界信息 |
loopFlags | 0 or 2 | 是 | 无 | 边界为多段线时为 2 否则为 0 |
segType | string | 是 | 无 | 构成填充边界的线段的类型("line"、"cirArc"、"elliparc"、"nurbCrve"、"polyline") |
segments | jsonvalue | 是 | 无 | 构成填充边界的线段的信息 |
center | list | 是 | 否 | 构成填充边界的线段中圆弧段的中心点 |
startAngle | double | 是 | 否 | 构成填充边界的线段中圆弧段的起始角度 |
endAngle | double | 是 | 否 | 构成填充边界的线段中圆弧段的终止角度 |
isClockWise | bool | 是 | 否 | 是否为顺时针 |
radius | double | 是 | 否 | 构成填充边界的线段中圆弧段的半径 |
startPoint | list | 是 | 否 | 构成填充边界的线段中直线段的起始点 |
endPoint | list | 是 | 否 | 构成填充边界的线段中直线段的终止点 |
numsPaths | int | 是 | 否 | 边界个数 |
patternInfo | jsonvalue | 否 | 否 | 填充样式为图案填充时,组成填充图案的基本单元的信息 |
basePoint | list | 是(包含 patternInfo 时) | 否 | 填充样式为图案填充时,组成填充图案的基本单元的基点 |
lineAngle | double | 是(包含 patternInfo 时) | 否 | 填充样式为图案填充时,组成填充图案的基本单元的角度 |
patternOffset | list | 是(包含 patternInfo 时) | 否 | 填充样式为图案填充时,组成填充图案的基本单元的偏移量 |
patternName | string | 是(图案填充时) | 否 | 填充名 |
patternType | int | 是(图案填充时) | 否 | 填充图案类型(0:用户定义、1:预定义、2:自定义) |
ptOrigin | list | 是 | [0,0,0] | 填充原点 |
scaleOrSpacing | double | 是 | 否 | 填充比例 |
seedPoints | list | 否 | 否 | 种子点 |
shift | double | 是 | 0 | 渐变填充时的角度 |
style | int | 是 | 0 | 孤岛显示样式(0:普通 1:外部 2:忽略) |
输出示例:
# 1.3.20 引线 ZcDbLeader
**功能要求:**根据输入的 Json 数据,将其转换成 ZcDbLeader。
# 输入示例:
{
"entityList": [
{
"annoHeight": 0.0,
"annoId": 565,
"annoType": 0,
"annoWidth": 0.0,
"arrowSize": 20.0,
"color": 256,
"dimColord": 0,
"dimGap": 0.625,
"dimLineWeight": -2,
"dimScale": 1.0,
"dimstyleName": "ISO-25",
"dimtad": 1,
"hasArrowhead": true,
"hasHookLine": false,
"hasSplinePath": false,
"layer": "0",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"normal": [0.0, 0.0, 1.0],
"offsetToBlkInsPt": [0.0, 0.0, 0.0],
"plotType": 0,
"points": [
[464.28554167905662, 299.82172934796944, 0.0],
[549.42132420434859, 423.1594655705079, 0.0],
[606.17851255454343, 423.1594655705079, 0.0]
],
"ptOrigin": [464.28554167905662, 299.82172934796944, 0.0],
"textOffset": [0.0, 0.0, 0.0],
"transparency": -1,
"type": "ZcDbLeader",
"vXDir": [1.0, 0.0, 0.0]
},
{
"attachPt": 7,
"backgroundFactor": 0,
"color": 256,
"columnsType": 0,
"direction": [1.0, 0.0, 0.0],
"drawDir": 1,
"height": 20.0,
"layer": "0",
"lineSpacingFactor": 1.0,
"lineSpacingStyle": 1,
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"location": [606.80351255454343, 423.7844655705079, 0.0],
"plotType": 0,
"refRectSize": [0.0, 0.0],
"textContent": "leader test",
"textStyleName": "Standard",
"transparency": -1,
"type": "ZcDbMText",
"vNormal": [0.0, 0.0, 1.0]
}
]
}
#参数描述:
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
type | string | 是 | 无 | ZcDbLeader 表示引线实体类型 |
annoHeight | double | 否 | 0.0 | 注释高度 |
annoId | double | 否 | 无 | 绑定的实体 ID(仅用于导出 json,生成时无需输入) |
annoType | int | 否 | 0 | 引线注释类型默认为 Mtext(如果不填,json 生成 leader 时引线与注释文本为两个独立的实体) |
arrowSize | double | 否 | 2.5 | 箭头大小,箭头顶点到对边的距离 |
dimColord | int 或 list | 否 | 0 | 尺寸线颜色 |
dimGap | double | 否 | 0.625 | 标注文字到尺寸线的偏移量 |
dimLineWeight | double | 否 | -2(随块) | 尺寸线线宽 |
dimScale | double | 否 | 1 | 标注全局比例 |
dimstyleName | string | 是 | 无 | 标注样式 |
dimtad | double | 否 | 1(上方) | 文字相对于尺寸线的垂直位置 |
hasArrowhead | bool | 否 | true | 箭头 |
hasHookLine | bool | 否 | false | 是否有勾线 |
hasSplinePath | bool | 否 | false | 是否为样条曲线拟合 |
offsetToBlkInsPt | list | 否 | [0,0,0] | 注释偏移 |
points | list | 是 | 无 | 引线端点 |
ptOrigin | list | 是 | 无 | 引线起点 |
textOffset | list | 否 | [0.0, 0.0, 0.0] | 文字偏移 |
vXDir | list | 否 | [1,0,0] | 引线方向 |
补充:
annoType | 类型说明 |
---|---|
0 | 文本(Mtext) |
1 | 几何尺寸与公差 |
2 | 块参照 |
3 | 无 |
dimtad | 类型说明 |
---|---|
0 | 标注文字在尺寸界线之间居中放置 |
1 | 将标注文字放置在尺寸线上方 |
2 | 将标注文字放在尺寸线远离定义点的一边。 |
3 | 将标注文字按照日本工业标准 (JIS) 放置。 |
4 | 将标注文字放在尺寸线下方 |
# 输出示例:

# 1.4 块定义
我们在使用插入一个块参照时,若原图纸中没有该块的块定义可以通过 json 导入块定义

如上图定义了一个由圆和直线组成的命名为“块定义示例”的块,块定义导入的 json 格式如下:
{
"blockList": [
[
{
"basePoint": [0.0, 0.0, 0.0],
"blockName": "块定义示例"
},
{
"center": [0.0, 0.0, 0.0],
"color": 256,
"entityHandle": "573",
"layer": "0",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"normal": [0.0, 0.0, 1.0],
"plotType": 0,
"radius": 50.0,
"thickness": 0.0,
"transparency": -1,
"type": "ZcDbCircle"
},
{
"color": 256,
"endPoint": [0.0, 50.0, 0.0],
"entityHandle": "574",
"layer": "0",
"lineType": "ByLayer",
"lineTypeScale": 1.0,
"lineweight": -1,
"plotType": 0,
"startPoint": [0.0, 0.0, 0.0],
"thickness": 0.0,
"transparency": -1,
"type": "ZcDbLine"
}
]
]
}
其中 basePoint:块定义的原点相对世界坐标系的位置坐标 blockName:块定义名 块定义的组成图元的 json 格式与定义实体图元时相同
# 1.5 图层导入
可以通过添加"layerList"Json 字段往图纸中添加图层或修改已有图层
{
"layerList": [
{
"layerColor": 7,
"layerIsCurrentLayer": false,
"layerIsFrozen": false,
"layerIsHidden": false,
"layerIsLocked": false,
"layerIsOff": false,
"layerIsPlottable": true,
"layerIsReconciled": false,
"layerLineWeight": -3,
"layerName": "0",
"layerPlotStyle": "Normal",
"layerTransparency": 0
},
{
"layerColor": 7,
"layerIsCurrentLayer": true,
"layerIsFrozen": false,
"layerIsHidden": false,
"layerIsLocked": false,
"layerIsOff": false,
"layerIsPlottable": true,
"layerIsReconciled": false,
"layerLineWeight": -3,
"layerName": "图层1",
"layerPlotStyle": "Normal",
"layerTransparency": 0
}
]
}
参数名 | 参数效果 | 是否必要 | 备注 |
---|---|---|---|
layerColor | 图层颜色 | 是 | 颜色设置方法见实体通用属性 |
layerIsFrozen | 图层冻结 | 否 | |
layerIsCurrentLayer | 是否为当前图层 | 否 | 当多个图层都为 true 时,将最后一个属性为 true 的图层设为当前图层 |
layerIsHidden | 图层隐藏 | 否 | |
layerIsLocked | 图层锁定 | 否 | |
layerIsOff | 图层关闭 | 否 | |
layerIsPlottable | 图层可绘制 | 否 | |
layerIsReconciled | 图层被调节 | 否 | |
layerLineWeight | 图层线宽 | 否 | |
layerName | 图层名 | 是 | |
layerPlotStyle | 打印样式 | 否 | |
layerTransparency | 透明度 | 否 |
# 1.6 文字样式
可以通过添加"textStyleList"字段往图纸中添加已有的文字样式或修改文字样式;
{
"textStyleList": [
{
"bigFontFileName": "",
"filename": "",
"flagBits": 0,
"isShape": false,
"isVertical": false,
"obliquingAngle": 0.0,
"priorSize": 2.5,
"textSize": 0.0,
"textStyleName": "Standard",
"ttfFlags": 34306,
"typeFace": "SimSun",
"xScale": 1.0
},
{
"bigFontFileName": "",
"filename": "",
"flagBits": 0,
"isShape": false,
"isVertical": false,
"obliquingAngle": 0.0,
"priorSize": 2.5,
"textSize": 0.0,
"textStyleName": "Annotative",
"ttfFlags": 34306,
"typeFace": "SimSun",
"xScale": 1.0
}
]
}
#参数说明:
参数名 | 参数效果 | 是否必要 | 备注 |
---|---|---|---|
bigFontFileName | 大字体文件名 | 否 | 和文字样式使用的字体相关,非必填项 |
filename | 文字文件名 | 否 | 非必填项,默认使用宋体 |
flagBits | 反向+颠倒控制 | 否,默认值 0 | 控制文字是否反向及颠倒 |
isShape | 是否为形文字 | 否 | 非必填项,dwg 转 json 使用 |
isVertical | 垂直印刷 | 否 | |
obliquingAngle | 倾斜角 | 否 | |
priorSize | 默认文字高度 | 否 | 使用该样式绘制的文字高度 |
textSize | 文字高度 | 否 | 文本度量选项中的高度 |
textStyleName | 文字样式名 | 是 | 文字样式名 |
ttfFlags | ttf 标志位 | 否 | 内部使用,非必填项 |
typeFace | 字体抽象名 | 否 | 字体抽象名,例如宋体对应 SimSun; |
xScale | 宽度因子 | 否 | 字体宽度与高度的比 |
参数和 Zwcad 中文字样式管理器中选项对应;

flagBits 可以控制文本印刷是否颠倒或反向,枚举对应的文本印刷类型如下:
枚举值 | 文本印刷效果 |
---|---|
0 | 正向不颠倒 |
2 | 反向印刷 |
4 | 颠倒印刷 |
6 | 反向+颠倒 |
新增一个文字样式,指定样式名跟文本字体文件即可。最少需要指定样式名,会使用默认参数创建新样式,默认使用宋体作为新样式的文本字体;


# 1.7 属性块
# 属性块制作
对于结构相同仅文字不同的块,可以通过制作属性块来进行制作: 例如:

上图中三个图形仅文本内容不同,就可以通过制作属性块的方式来实现对文本内容的修改; 首先制作一个右侧图形的块,如下:

在命令行中使用“ATTDEF”命令插入属性定义;

设置名称和提示文本(选填),缺省文本为最后的显示内容; 在合适的位置插入属性定义,插入后的显示效果如下:(插入后初始显示内容为属性定义的名称)

随后选中先前创建好的块和刚插入的属性定义,利用“BLOCK”命令创建属性块,例如这里我将块名设为“平台”。

设置合适的点为基点后会提示编译图块属性,如下:

输出图形:

# 1.8 设置当前使用的颜色、线宽、透明度
可以通过"CurInfo"字段设置后续绘制使用的颜色、线宽、透明度信息
{
"CurInfo": {
"color": [111, 111, 222],
"lineweight": 120,
"transparency": 60
}
}
颜色、线宽、透明度设置规则与实体颜色、线宽、透明度设置规则相同
# 二、实体筛选
# 2.1 图元筛选方法
解析 dwg 图纸生成对应的 json 文件后,若要从 json 文件中识别到特定的实体结构可通过以下三种方式对 dwg 图纸中的实体做预处理
# 2.1.1 通过创建块的块名来识别
通过建立块,利用块的名称来识别图纸中所有该结构的图元,如:

将该天线部分定义为块名为“新增天线 2”的块之后,通过搜索块名,可以定位到该天线的信息


# 2.1.2 建立属性块
对于某些几何结构相同,但包含的文本不同的机构,可以通过属性块的方式来定义并识别和区分,如图中的标高
首先建立属性(输入 attdef),建立属性名为 H:的属性

而后在属性下方绘制要绘制的结构体的内容

将上图建立为一个块

此时双击该块可以添加 H:属性,输入值即可得到不同高度的标高,通过块名和属性名可以定位到图中的属性块


# 2.1.3 赋予实体 XDATA 拓展信息
输入 xdata

选择要添加拓展属性的图元

输入拓展属性名

可添加一些拓展属性来赋予该图元

如选择字符串,输入天线 1

此时为多端线赋予了拓展属性,转化出来的 Json 中会带有拓展属性,从而能够定位到该多段线
