bridge
lib C++ 包装类型与 models Pydantic 模型之间的桥接层
所有转换函数均使用函数内 lazy import,避免 lib 与 models
之间产生导入期循环依赖。
dmdbline_to_model(line)
将 DmDbLine 转换为 models.Line
Source code in dimine_python_sdk\lib\bridge.py
55 56 57 58 59 60 61 62 63 | |
dmdbpolyline_to_model(polyline)
将 DmDbPolyline 转换为 models.Line
Source code in dimine_python_sdk\lib\bridge.py
66 67 68 69 70 71 72 73 74 | |
dmdpoint_to_model(pt)
将 DmDPoint 转换为 models.Point
Source code in dimine_python_sdk\lib\bridge.py
32 33 34 35 36 37 38 39 40 | |
dmpolydata_to_tingeometry(polydata)
将 DmPolyData 转换为 models.TINGeometry
通过 DmDbLayer.insert_shell 生成 DmDbShell,再调用 parse_to_json
提取顶点坐标与三角面片索引。
Source code in dimine_python_sdk\lib\bridge.py
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 | |
model_to_dmdpoint(pt)
将 models.Point 转换为 DmDPoint
Source code in dimine_python_sdk\lib\bridge.py
43 44 45 46 47 48 | |