Я очень новичок в системе CAD и пытаюсь извлечь информацию из файла dxf для своего проекта. У меня есть файлы dxf для плана этажа. Моя цель — извлечь геометрию комнаты и метку, связанную с ней.
Хотя я смог извлечь геометрию комнаты и метки комнаты по отдельности, мне трудно сопоставить обе. Есть ли тег, который я пропустил, который имеет связь между геометрией и метками?
Ярлык комнаты:
0
INSERT
5
53CF
330
2
100
AcDbEntity
8
__X_Polyline_Data
100
AcDbBlockReference
66
1
2
ROOM_DATA
10
11.15367175915704
20
10.40315868785525
30
0.0
1001
AEC_XDATA_BOUND_SPACE
1070
100
1070
1
0
ATTRIB
5
53D1
330
53CF
100
AcDbEntity
8
__X_Polyline_Data
6
Continuous
100
AcDbText
10
11.12027175915704
20
10.44215868785524
30
0.0
40
0.25
1
AE.22
100
AcDbAttribute
280
0
2
PART_AOID
70
0
280
1
Текст помещения:
0
TEXT
5
62C
330
2
100
AcDbEntity
8
X_Raumnummer
370
0
100
AcDbText
10
11.15367175915704
20
10.40315868785525
30
0.0
40
0.8
1
AE.22
Координаты комнаты:
0
LWPOLYLINE
5
239B
330
2
100
AcDbEntity
8
A_DEC_Durchbrüche
370
0
100
AcDbPolyline
90
4
70
1
43
0.0
10
10.95
20
12.215
10
14.6
20
12.215
10
14.6
20
12.48499999999999
10
10.95
20
12.48499999999999
Код, который я написал для извлечения данных:
lines = [entity for entity in dwg.entities if entity.dxftype == 'LWPOLYLINE']
room_lines = [entity for entity in lines if entity.layer == '__X_Polyline']
lines_data = [entity for entity in dwg.entities if entity.dxftype == 'TEXT']
room_text = [entity for entity in lines_data if entity.layer == 'X_Raumnummer']
Я использовал библиотеку dxfgrabber для извлечения информации.
Извините, если мой вопрос глупый, я не могу найти ссылку, и я довольно новичок в этой области. Мне удалось извлечь AE.22 и его 4 координаты, но теперь я могу сопоставить их вместе.