Skip to content

结构子图框构件结果获取

接口概述

根据结构构件识别任务 ID 和子图框 ID,获取指定子图框内的结构构件识别结果。可通过 dataTypeList 筛选需要返回的构件类型;不传或传空数组时,服务端默认返回全部构件类型。

请先等待结构构件识别任务状态变为 SUCCESS,再通过子图框基本信息结果获取接口取得 subFrameId

请求地址

http
POST /result/struct_cv/subFrameResult

请求头

参数必填说明
apiKeyAPI 访问凭证,值为 YOUR_API_KEY
Content-Typeapplication/json

请求体

参数类型必填说明
taskIdString结构构件识别任务创建接口返回的任务唯一标识
subFrameIdString子图框基本信息结果获取接口返回的子图框唯一标识
dataTypeListArray<String>需要返回的构件类型列表;不传或传空数组时默认使用 all

请求示例

以下示例只查询轴号、住宅梁和住宅板三类构件:

bash
curl -X POST "https://openapi.bangtu-ai.com/openApi/result/struct_cv/subFrameResult" \
  -H "apiKey: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "taskId": "1900123456789012346",
    "subFrameId": "struct-subframe-axis-001",
    "dataTypeList": ["axisNumber", "upBeam", "slab"]
  }'

需要返回全部构件时,省略 dataTypeList 或传入空数组即可。

返回结果

data 为指定子图框的基本信息和构件识别结果。object 中的属性名为构件类型,属性值为该类型的构件数组。

json
{
  "code": 200,
  "message": "success",
  "data": {
    "subFrameId": "struct-subframe-axis-001",
    "subFrameName": "三层梁板配筋平面图",
    "wcsLoc": { "left": 100.0, "top": 1800.0, "right": 2400.0, "bottom": 100.0 },
    "subFrameType": "AXIS",
    "frameId": "frame-001",
    "object": {
      "axisNumber": [
        {
          "axisNames": ["1", "2"],
          "axisLineAnchor": { "x": 320.0, "y": 720.0 },
          "axisCircleAnchor": { "x": 320.0, "y": 768.0 },
          "axisCircleRadius": 24.0
        }
      ],
      "upBeam": [
        {
          "beamPos": {
            "p1": { "x": 320.0, "y": 720.0 },
            "p2": { "x": 980.0, "y": 720.0 },
            "p3": { "x": 980.0, "y": 660.0 },
            "p4": { "x": 320.0, "y": 660.0 }
          },
          "typeNumber": 1,
          "index": 1,
          "totalSpans": 3,
          "presentSpan": 1,
          "longSpan": 0,
          "width": 300.0,
          "height1": 700.0,
          "upperLongRibs": [
            { "row": 1, "num": 2, "rebarType": "HRB400", "size": 25.0 }
          ],
          "erectorMuscles": [],
          "leftSupportBar": [],
          "rightSupportBar": [],
          "lowerRadiusMuscle": [],
          "downLongRibs": [
            { "row": 1, "num": 3, "rebarType": "HRB400", "size": 22.0 }
          ],
          "stirrupEncryptionArea": { "rebarType": "HPB300", "size": 8.0, "distance": 100.0, "limb": 2 },
          "stirrupNonEncryptionArea": { "rebarType": "HPB300", "size": 8.0, "distance": 200.0, "limb": 2 },
          "sideLongiRein": { "rebarClass": "HRB400", "num": 2, "rebarType": "HRB400", "size": 12.0 }
        }
      ],
      "slab": [
        {
          "slabThickness": 120.0,
          "slabHatchName": "钢筋混凝土",
          "slabCode": { "slabtype": "LB", "slabNum": "1" },
          "slabOutline": [
            { "x": 320.0, "y": 720.0 },
            { "x": 980.0, "y": 720.0 },
            { "x": 980.0, "y": 660.0 }
          ],
          "slabType": "SLAB",
          "slabBtmRebarlist": [],
          "slabTopRebarlist": [],
          "slabHole": []
        }
      ]
    }
  },
  "timestamp": 1784538400000
}

返回字段

字段类型说明
codeNumber通用响应码,200 表示成功,500 表示失败
messageString响应信息
dataObject | null子图框及其构件识别结果;结果不存在时可能为 null
timestampNumber服务端响应时间戳,单位为毫秒

data 字段

字段类型说明
subFrameIdString子图框唯一标识
subFrameNameString子图框名称
wcsLocObject子图框 WCS 范围,包含 lefttoprightbottom
subFrameTypeString子图框类型,取值见子图框基本信息结果获取接口
frameIdString所属图框唯一标识
objectObject按构件类型分组的识别结果

object 字段

object 只保留 dataTypeList 指定的构件类型;省略 dataTypeList 或传入空数组时返回全部类型。未识别到对应构件时,类型对应的值通常为空数组。

结构构件因所属子图框类型不同而字段不同。轴网子图框(AXIS)中可能包含以下构件。

轴号 axisNumber

字段类型说明
axisNamesArray<String>轴号名称列表
axisLineAnchorObject轴线锚点,包含 xy
axisCircleAnchorObject轴号圆圈锚点,包含 xy
axisCircleRadiusNumber轴号圆圈半径

标注线 dimInfo

字段类型说明
valueNumber标注数值
textString标注文字
rotationNumber标注旋转角度
point1Object标注第一点,包含 xy
point2Object标注第二点,包含 xy
point3Object标注第三点,包含 xy

住宅梁 upBeam

字段类型说明
beamPosObject梁四角点,包含 p1p2p3p4,每个点包含 xy
typeNumberNumber梁类型编号
indexNumber梁序号
totalSpansNumber总跨数
presentSpanNumber当前跨序号
longSpanNumber长跨标识
widthNumber梁宽
height1Number梁高1
upperLongRibsArray上部通长筋列表,元素包含 rownumrebarTypesize
erectorMusclesArray架立筋列表,字段同上
leftSupportBarArray左支座筋列表,字段同上
rightSupportBarArray右支座筋列表,字段同上
lowerRadiusMuscleArray下部弯折筋列表,字段同上
downLongRibsArray下部通长筋列表,字段同上
stirrupEncryptionAreaObject加密区箍筋,包含 rebarTypesizedistancelimb
stirrupNonEncryptionAreaObject非加密区箍筋,字段同上
sideLongiReinObject侧面纵筋,包含 rebarClassnumrebarTypesize

住宅梁不返回 height2(梁高2)与 seismicGrade(抗震等级)。

住宅板 slab

字段类型说明
slabThicknessNumber板厚
slabHatchNameString板填充图案名称
slabCodeObject板编号,包含 slabtypeslabNum
slabOutlineArray板轮廓点数组,元素包含 xy
slabTypeString板类型
slabBtmRebarlistArray板底筋列表,元素包含 slabRebarTypeplantarRebar(底部原位钢筋)、planFaceRebar(底部附加钢筋);其中 plantarRebar 不返回 RebarExtenLenRebarCode
slabTopRebarlistArray板顶筋列表,元素包含轮廓 edgeplantarRebarplanFaceRebar
slabHoleArray板孔洞列表,元素包含轮廓 edge 点数组

住宅板不返回 slabElevation(板顶标高)、slabOffset(板位置偏移)与 slabCtlCut(悬挑板剖切索引列表)。

墙平面 wallAxis

字段类型说明
QZcontourArray墙柱轮廓点数组,元素包含 xy
qz_listArray墙柱平面列表,元素包含 numberTypenumberIndexQZcontour
qs_listArray墙身平面列表,元素包含 numberwcsloc

表格子图框(TABLE)中可能包含以下构件。

墙身表 qsTable

字段类型说明
numberString墙身编号
qsThicknessNumber墙身厚度
startHeightNumber起始标高
endHeightNumber结束标高
horizontalRebarListArray水平分布筋,元素包含 rebarGradediameterspacerow
verticalRebarListArray竖直分布筋,字段同上
StretchingRebarListArray拉筋,元素包含 rebarGradediameterhorizontalSpacingverticalSpacing

墙柱表 qzTable

字段类型说明
numberTypeNumber编号类型
numberIndexNumber编号序号
startHeightNumber起始标高
endHeightNumber结束标高
wcsLocObject表格 WCS 范围,包含 lefttoprightbottom
maskObject掩膜索引信息,包含 shapedtypemask_wcs_loczoombin_indexbin_size;真实像素数据位于项目全局二进制缓存文件,此处只输出索引
rebarListArray纵筋列表,元素包含 rebarGradenumdiameter
rebarWcsLocListArray带坐标纵筋列表,元素包含 pointrebarGradediameter
pier_listArray墙肢分段列表,元素包含 wcslocrebarListstirup_info_listlajin_info_listall_limb_num

不同构件类型可能只返回其中一部分字段;当前未开放的构件类型不会出现在 object 中。

全部构件类型

dataTypeList 中填写“请求参数值”即可查询对应的构件。构件名称与参数值的完整对应关系如下:

构件名称请求参数值所属子图框
所有构件all
轴号axisNumber轴网子图框
标注线dimInfo轴网子图框
住宅梁upBeam轴网子图框
住宅板slab轴网子图框
住宅板-板型号+编号slab.slabCode轴网子图框
住宅板-板孔洞列表slab.slabHole轴网子图框
墙平面wallAxis轴网子图框
墙平面-墙柱列表wallAxis.qz_list轴网子图框
墙平面-墙身列表wallAxis.qs_list轴网子图框
墙身表qsTable表格子图框
墙柱表qzTable表格子图框

说明:

  • 构件名中不含 - 的为顶层构件(如 slab),返回该构件的全部字段(不含下文列出的不暴露字段)。

  • 构件名中带 - 的为子构件,请求参数值使用点分路径(如 slab.slabCode)。子构件只返回被请求的那部分字段,但返回结构仍挂在其所属顶层构件下,例如只请求 slab.slabCode 时返回:

    json
    "slab": [ { "slabCode": { "slabtype": "LB", "slabNum": "1" } } ]
  • 同时请求某个顶层构件及其子构件时会自动合并,返回该顶层构件的完整结构。

  • all 表示返回整份子图框数据,等同于省略 dataTypeList

  • 上表之外的构件(住宅梁、住宅板、墙身表、墙柱表下的其他子构件,以及地库梁/板/柱、桩、筏板、承台、独立基础、楼梯、详图等)不支持单独查询,传入会返回参数错误;这些子构件的数据仍会随所属顶层构件一并返回。

  • 以下字段不对外暴露,不会出现在返回结果中:住宅梁的 height2(梁高2)、seismicGrade(抗震等级);住宅板的 slabElevation(板顶标高)、slabOffset(板位置偏移)、slabCtlCut(悬挑板剖切索引列表);板底部原位钢筋的 RebarExtenLen(钢筋伸出长度)、RebarCode

响应码

code说明
200请求成功
500请求失败,包括任务或子图框不存在、任务执行失败、请求参数错误等情况

调用流程

  1. 创建结构构件识别任务并保存 taskId
  2. 查询任务状态,等待状态变为 SUCCESS
  3. 调用子图框基本信息结果获取接口,取得目标子图框的 subFrameId
  4. 调用本接口,按需传入 dataTypeList 获取构件结果。

注意事项

  • taskIdsubFrameId 均不能为空。
  • subFrameId 必须属于指定的结构构件识别任务。
  • dataTypeList 中的值建议使用上表中的请求参数值;解析时大小写不敏感,并兼容枚举名(如 slab_slabCode)与 proto 原始字段名(如 upBeamlist)。
  • 构件与其所属子图框类型相关,例如轴网类构件需使用 AXIS 子图框的 subFrameId 查询。
  • 需要全部构件时,省略 dataTypeList 或传入空数组即可。
  • taskIdsubFrameId 应按字符串保存,避免长整型标识发生精度丢失。