Einfügen von anderen 3D Elementen in dxf2lib (nicht getestet)

This commit is contained in:
2025-12-15 13:31:08 +01:00
parent 61a04726fe
commit 7092d13280
2 changed files with 111 additions and 84 deletions
+84 -84
View File
@@ -493,7 +493,7 @@ $SKPOLY
9
$TDCREATE
40
2461025.545625
2461025.562314815
9
$TDUCREATE
40
@@ -501,7 +501,7 @@ $TDUCREATE
9
$TDUPDATE
40
2461025.545740741
2461025.5624421295
9
$TDUUPDATE
40
@@ -933,11 +933,11 @@ $PSTYLEMODE
9
$FINGERPRINTGUID
2
{A5BF2429-D13D-445D-ACCA-55971E035CB3}
{FD8C48B3-88E2-4791-9E42-842F713A8FCA}
9
$VERSIONGUID
2
{B7EFEE6E-5BCF-4C8C-89D4-7AB21D988E37}
{A2BCADBA-4C0F-4FAD-8417-A22B9DAD4BAC}
9
$EXTNAMES
290
@@ -1359,9 +1359,9 @@ ObjectDBX Classes
0
CLASS
1
LAYOUT
ACDBPLACEHOLDER
2
AcDbLayout
AcDbPlaceHolder
3
ObjectDBX Classes
90
@@ -1375,9 +1375,9 @@ ObjectDBX Classes
0
CLASS
1
ACDBPLACEHOLDER
LAYOUT
2
AcDbPlaceHolder
AcDbLayout
3
ObjectDBX Classes
90
@@ -89243,7 +89243,7 @@ AcDbModelerGeometry
290
1
2
{BB00C0C3-7AEE-499F-8230-509E0E70F75C}
{F4B0A253-23C5-4BEB-8F28-E6C91AF44C4F}
100
AcDbSurface
71
@@ -89475,7 +89475,7 @@ AcDbModelerGeometry
290
1
2
{794DF873-F5A6-4B74-9010-71F3F53E86F8}
{D60B38F5-628C-436C-8437-DE011EAC8601}
100
AcDbSurface
71
@@ -89707,7 +89707,7 @@ AcDbModelerGeometry
290
1
2
{E15CB372-7685-42B3-B8CC-2BE4F76D7463}
{0819467A-12C1-439E-B79A-D4DE2768A6AE}
100
AcDbSurface
71
@@ -89939,7 +89939,7 @@ AcDbModelerGeometry
290
1
2
{452FFC69-B40D-41F9-B72C-91136B90785A}
{2E516A8B-6193-4A07-B7C2-A478A032A067}
100
AcDbSurface
71
@@ -90171,7 +90171,7 @@ AcDbModelerGeometry
290
1
2
{CCA84263-E7DF-48DB-AEF5-1B7F11A4F8A3}
{D71D0DD1-2140-4EBC-B8EE-637327DD00F0}
100
AcDbSurface
71
@@ -90403,7 +90403,7 @@ AcDbModelerGeometry
290
1
2
{981251A0-0A42-4D9C-9A87-00C9A15BF067}
{DEBD75D6-CA6E-4857-B265-ACC080052299}
100
AcDbSurface
71
@@ -90635,7 +90635,7 @@ AcDbModelerGeometry
290
1
2
{46659431-89A3-44A6-8728-2C0355577062}
{9C8D9B77-4456-4306-A8F4-7321E019D9CC}
100
AcDbSurface
71
@@ -90867,7 +90867,7 @@ AcDbModelerGeometry
290
1
2
{10EF9893-6A60-41CD-987A-AF1E34A8FDC8}
{F6FB2A24-1C63-466D-92C4-F71DF2A953E7}
100
AcDbSurface
71
@@ -91099,7 +91099,7 @@ AcDbModelerGeometry
290
1
2
{72196F94-CEA0-4AF8-A742-4D36C8D92FDF}
{B4468C8E-C1A3-41D1-B130-AE2F0D9E1267}
100
AcDbSurface
71
@@ -91331,7 +91331,7 @@ AcDbModelerGeometry
290
1
2
{39A751E6-9051-4758-AD7A-E5C4A4324821}
{34E67387-2787-40CA-A669-F64BEA611B72}
100
AcDbSurface
71
@@ -91563,7 +91563,7 @@ AcDbModelerGeometry
290
1
2
{9A6D0969-3A96-4719-9B73-280DC603D942}
{72C3307B-AC1A-4452-B0B6-3FDE3896EA5B}
100
AcDbSurface
71
@@ -91795,7 +91795,7 @@ AcDbModelerGeometry
290
1
2
{CD33FD9C-4EBB-42C3-ABFF-8C5AA7AAF9AB}
{12C9285F-4BAE-443F-AB2A-83BE73BC8EB8}
100
AcDbSurface
71
@@ -92027,7 +92027,7 @@ AcDbModelerGeometry
290
1
2
{39384474-5DD0-47EB-81B2-347A66CE20AD}
{12FCDD80-BBFC-4118-A13C-485810D91925}
100
AcDbSurface
71
@@ -92259,7 +92259,7 @@ AcDbModelerGeometry
290
1
2
{DFBF41BF-E7D0-4314-95F8-29438A0D2B68}
{8F234596-B933-4667-A968-4EFC61EB5B7B}
100
AcDbSurface
71
@@ -92491,7 +92491,7 @@ AcDbModelerGeometry
290
1
2
{D051A17D-1B6F-4BEC-9EBA-5487FDA65220}
{9B74A8FA-3175-44F7-9346-E88005909D3B}
100
AcDbSurface
71
@@ -92723,7 +92723,7 @@ AcDbModelerGeometry
290
1
2
{1ADA6F0B-3527-4BFA-8148-C655092ED3E0}
{37DBD3EB-02A5-4B7C-92B2-976EB92A6A30}
100
AcDbSurface
71
@@ -92955,7 +92955,7 @@ AcDbModelerGeometry
290
1
2
{3FC6BB2F-6B07-49EB-A09D-773F3FB04698}
{1B4FF93F-A1AD-42E9-9DC9-0B04D24A3D6F}
100
AcDbSurface
71
@@ -93187,7 +93187,7 @@ AcDbModelerGeometry
290
1
2
{6364E587-4DDE-41F3-B884-FCE2E783D749}
{CB64E5CF-C316-420F-9F1B-5883C926981F}
100
AcDbSurface
71
@@ -93419,7 +93419,7 @@ AcDbModelerGeometry
290
1
2
{5805003B-E8F3-4509-9C7E-944241590C4D}
{B485B361-C9BD-41EB-8AE3-391E8D395EB5}
100
AcDbSurface
71
@@ -93651,7 +93651,7 @@ AcDbModelerGeometry
290
1
2
{A38AE99C-FBC4-4473-99AB-86FF0BBE57D6}
{208EC8B0-E93F-44C8-BEFD-C40F62FDE58B}
100
AcDbSurface
71
@@ -93883,7 +93883,7 @@ AcDbModelerGeometry
290
1
2
{7084B784-8857-492D-992D-A5920D66DBE4}
{72285AE4-62D8-4511-A7B4-E12DD6B91E25}
100
AcDbSurface
71
@@ -94115,7 +94115,7 @@ AcDbModelerGeometry
290
1
2
{AB9DC86D-D93F-47E5-B8D7-334A6698775F}
{76E1D9BE-23F8-4224-8D12-E2C80C03F89B}
100
AcDbSurface
71
@@ -94347,7 +94347,7 @@ AcDbModelerGeometry
290
1
2
{32EB7307-4535-4586-94E8-EF7BAF411A8C}
{2F20B215-95BA-41A4-8F13-B58D2A9F4FCB}
100
AcDbSurface
71
@@ -94579,7 +94579,7 @@ AcDbModelerGeometry
290
1
2
{A92D516C-DE8A-4467-8E6B-12A7E1A67542}
{9678D9FD-0118-49C5-9357-FEECE7F7F760}
100
AcDbSurface
71
@@ -94811,7 +94811,7 @@ AcDbModelerGeometry
290
1
2
{52BDC869-9439-4970-85C7-923A1F9B4B47}
{E50DFEA5-866C-425D-8986-328B2AA21911}
100
AcDbSurface
71
@@ -95043,7 +95043,7 @@ AcDbModelerGeometry
290
1
2
{4B9D9EB0-BF4C-4731-BE35-4DC9C7F233E8}
{FCA990A5-09C5-43BF-A78E-7B0780A313AD}
100
AcDbSurface
71
@@ -95275,7 +95275,7 @@ AcDbModelerGeometry
290
1
2
{EEE45687-7782-4437-88F9-87AF594D9E7F}
{2E717AB8-5BAF-47C1-8840-9DAE1DA8224D}
100
AcDbSurface
71
@@ -95507,7 +95507,7 @@ AcDbModelerGeometry
290
1
2
{30C30EAE-90C0-4044-A5FB-BD0269C2E9D8}
{2A3323F1-CCFB-485A-81D0-43F8AE941C80}
100
AcDbSurface
71
@@ -95739,7 +95739,7 @@ AcDbModelerGeometry
290
1
2
{C87DF96D-CFF6-4AC7-93B8-E891DF81703C}
{2963548E-CB7D-4589-9A94-3C50455F8888}
100
AcDbSurface
71
@@ -95971,7 +95971,7 @@ AcDbModelerGeometry
290
1
2
{DCA628D6-49D4-4B8D-87D2-7509553C6D1B}
{67E2D659-7C62-4002-A1CA-289669B7D8BD}
100
AcDbSurface
71
@@ -96203,7 +96203,7 @@ AcDbModelerGeometry
290
1
2
{72BFA2D9-D10A-47BD-B451-1F2C86C66281}
{ACFAC0C6-84A6-47E4-9D0C-38FD2E2CB9E3}
100
AcDbSurface
71
@@ -96435,7 +96435,7 @@ AcDbModelerGeometry
290
1
2
{F4412C12-E059-4BE3-8D75-DCC9B9490C53}
{BB6D565D-3914-47CE-81C7-1F0D743730BA}
100
AcDbSurface
71
@@ -96667,7 +96667,7 @@ AcDbModelerGeometry
290
1
2
{C630E697-EB6F-4FD3-9284-948DA27EEC8E}
{7F435511-60E8-46D4-B629-40AEF050E8B1}
100
AcDbSurface
71
@@ -96899,7 +96899,7 @@ AcDbModelerGeometry
290
1
2
{7DCDFC15-1314-412A-BBCE-EE5743F909DA}
{ED4F9D36-8748-4450-8077-6ACB086F68B8}
100
AcDbSurface
71
@@ -97131,7 +97131,7 @@ AcDbModelerGeometry
290
1
2
{274052F7-D8F6-4CA2-B295-DC73A7391A3F}
{16872144-BF0A-443B-BFEF-B5E1E1A0DB07}
100
AcDbSurface
71
@@ -97363,7 +97363,7 @@ AcDbModelerGeometry
290
1
2
{DCA49B31-B435-4BB6-9D74-8664EDC2CEA4}
{CAF381BA-BB70-4D9E-9239-EC6F7F684216}
100
AcDbSurface
71
@@ -97595,7 +97595,7 @@ AcDbModelerGeometry
290
1
2
{5E3F3741-F77E-4667-8B30-E63E38C72709}
{433C827F-565E-4826-9C5B-7A9E8ED8AB8E}
100
AcDbSurface
71
@@ -97827,7 +97827,7 @@ AcDbModelerGeometry
290
1
2
{FCCC6132-6E02-45D5-8BDA-B31C5E0F9AE5}
{EEFFED3E-EABF-4A72-B78A-CEF68A7FD5D3}
100
AcDbSurface
71
@@ -98059,7 +98059,7 @@ AcDbModelerGeometry
290
1
2
{7CBAD519-6B2E-46C2-8797-A8F1AC0D4E51}
{E89971A4-593D-4AC5-917A-6105C272E6F2}
100
AcDbSurface
71
@@ -98291,7 +98291,7 @@ AcDbModelerGeometry
290
1
2
{1BA6AE2C-50BD-4184-9BE1-B21A603717D5}
{BDED0BFA-653E-4FB0-B443-CAD85C59FC01}
100
AcDbSurface
71
@@ -98523,7 +98523,7 @@ AcDbModelerGeometry
290
1
2
{B156CB86-CF22-4D6D-BD1D-B13346BE3C8A}
{E0EF2B32-451F-4A07-A72D-BC4FBF52B163}
100
AcDbSurface
71
@@ -98755,7 +98755,7 @@ AcDbModelerGeometry
290
1
2
{D5457500-6F10-4D65-8FF1-91ACDED5E5B3}
{54361E51-28D2-419C-B321-E09C39C79F53}
100
AcDbSurface
71
@@ -98987,7 +98987,7 @@ AcDbModelerGeometry
290
1
2
{96A87A3B-E5FF-4389-A75E-505C16B18200}
{B3B9F234-AEE6-47F3-B7EC-C70CA070AE77}
100
AcDbSurface
71
@@ -99219,7 +99219,7 @@ AcDbModelerGeometry
290
1
2
{2D12E475-ECC4-4FAB-B6F9-658D37366C1F}
{6D113AE6-3E88-4792-B464-B370D683D400}
100
AcDbSurface
71
@@ -99451,7 +99451,7 @@ AcDbModelerGeometry
290
1
2
{48F9E8B6-876D-4D1B-925F-01F0C6128C99}
{FE01131C-58BC-4685-AEEC-A35CE9144810}
100
AcDbSurface
71
@@ -99683,7 +99683,7 @@ AcDbModelerGeometry
290
1
2
{03B67C3E-16C5-49D9-ADCC-5E399A971932}
{2A5149C9-5B89-4EC3-AEF8-4CD55D3BD16F}
100
AcDbSurface
71
@@ -99915,7 +99915,7 @@ AcDbModelerGeometry
290
1
2
{ACF35792-D054-4AC6-8849-EDA02450F1EC}
{890EFCC7-1B77-434C-99BC-F6A1BB711068}
100
AcDbSurface
71
@@ -100147,7 +100147,7 @@ AcDbModelerGeometry
290
1
2
{A1578818-69C8-47EA-B078-076862B14644}
{58EA78DA-BB81-400F-B6A9-8D62E7024897}
100
AcDbSurface
71
@@ -100379,7 +100379,7 @@ AcDbModelerGeometry
290
1
2
{F15BE00F-8E8D-4724-900A-D15CEA3F8464}
{65FEC44F-23E5-489D-AE64-08BD11C50CC2}
100
AcDbSurface
71
@@ -100611,7 +100611,7 @@ AcDbModelerGeometry
290
1
2
{E7D69CE5-3F11-4FD0-A979-3D0861E4CF0A}
{DD1B350B-9D3D-4595-9F97-EABB70C564F8}
100
AcDbSurface
71
@@ -100843,7 +100843,7 @@ AcDbModelerGeometry
290
1
2
{18C949F1-F1AE-406F-9EE0-ADF8ADEE75A8}
{B82CF587-E17F-4659-BE61-4F585600C8D8}
100
AcDbSurface
71
@@ -101075,7 +101075,7 @@ AcDbModelerGeometry
290
1
2
{CA941385-B822-4F51-A289-C72A550F06BA}
{D1154D4C-DB32-4597-9CB9-EEB50B2C236C}
100
AcDbSurface
71
@@ -101307,7 +101307,7 @@ AcDbModelerGeometry
290
1
2
{7C2FC413-BFF8-43B8-B0DE-95DDE5CF3C65}
{E1159657-CF2F-4F24-9258-479BB9CB214F}
100
AcDbSurface
71
@@ -101539,7 +101539,7 @@ AcDbModelerGeometry
290
1
2
{9B2A2C1E-8567-4364-A84E-3FB27BA6D3ED}
{B71FE0B1-81EC-4751-ABE8-08520A88F1D0}
100
AcDbSurface
71
@@ -101771,7 +101771,7 @@ AcDbModelerGeometry
290
1
2
{78096423-8223-403E-80E0-BDF8E5BEADA0}
{BF05F145-DC48-4E7B-8EF7-99DAB6571CA3}
100
AcDbSurface
71
@@ -102003,7 +102003,7 @@ AcDbModelerGeometry
290
1
2
{CAB779A8-CA32-4639-9953-81FF69987D7D}
{E1EB569C-90AC-457E-A24D-EA49BBFF42F0}
100
AcDbSurface
71
@@ -102235,7 +102235,7 @@ AcDbModelerGeometry
290
1
2
{EFC03BC6-087B-4882-8D16-AFD7669C4BC2}
{EBF6A771-5804-4A0F-9B3A-4609A98C5191}
100
AcDbSurface
71
@@ -102467,7 +102467,7 @@ AcDbModelerGeometry
290
1
2
{DF52E87E-CA22-4EDD-A0AF-5DD8B4ACB5A7}
{E4D5E7B0-0D1A-4E52-97FA-2C0E39B6CBEE}
100
AcDbSurface
71
@@ -102699,7 +102699,7 @@ AcDbModelerGeometry
290
1
2
{AD26FA0C-EC25-41D4-A0D3-0CBEADCACBF3}
{B3145B94-95CA-4B98-9131-58EC732B374E}
100
AcDbSurface
71
@@ -102931,7 +102931,7 @@ AcDbModelerGeometry
290
1
2
{89FF3696-2080-47D1-86DA-5EAB01AD654B}
{52DE83E3-6B2F-4FA1-9B07-6A322EAFFE00}
100
AcDbSurface
71
@@ -103163,7 +103163,7 @@ AcDbModelerGeometry
290
1
2
{C4760BB7-2849-46B3-8A23-3F747FA58C2B}
{233A6F64-4365-4FFD-BE05-2F776765E947}
100
AcDbSurface
71
@@ -103395,7 +103395,7 @@ AcDbModelerGeometry
290
1
2
{867B7263-D472-4A2B-88C0-9C0C9957C6D5}
{9EF12D67-A318-46FD-B059-E9255C9D5D6E}
100
AcDbSurface
71
@@ -103627,7 +103627,7 @@ AcDbModelerGeometry
290
1
2
{496A88F4-3491-4538-9E53-A9E6B2B20874}
{BA4A0B5E-BBDD-4E32-8104-20ADA4E2187E}
100
AcDbSurface
71
@@ -103859,7 +103859,7 @@ AcDbModelerGeometry
290
1
2
{19BF887A-BE99-4250-9481-699D2179AF45}
{A58435BE-3E38-49E6-AE9E-B4B71532BC55}
100
AcDbSurface
71
@@ -104091,7 +104091,7 @@ AcDbModelerGeometry
290
1
2
{876B5751-48DA-4AF6-824F-95DC840E8AED}
{601426BC-586F-4E5F-B305-4DB6185194D7}
100
AcDbSurface
71
@@ -104323,7 +104323,7 @@ AcDbModelerGeometry
290
1
2
{C279AD2C-ED1E-4CB7-A3DA-220BF7DD6716}
{890929ED-5C17-48D9-A3B5-81C5D93D2277}
100
AcDbSurface
71
@@ -104555,7 +104555,7 @@ AcDbModelerGeometry
290
1
2
{4C4FAC50-9134-4F08-BE78-604DAD572FA5}
{44141BFF-686E-46F0-9789-67B7BC2CA7EF}
100
AcDbSurface
71
@@ -104787,7 +104787,7 @@ AcDbModelerGeometry
290
1
2
{CD3C3717-5BDB-4ADE-89C1-1B350BEC4EF6}
{2785AB83-B49C-40B2-AEF4-81190A1D37AD}
100
AcDbSurface
71
@@ -105019,7 +105019,7 @@ AcDbModelerGeometry
290
1
2
{40ECC079-07F4-475A-B02A-2ADC5CC3A749}
{754EF1B4-D287-44A8-8507-EE028AFD14D6}
100
AcDbSurface
71
@@ -105251,7 +105251,7 @@ AcDbModelerGeometry
290
1
2
{E8A5FF67-91C2-41E6-8BE7-99F111ABDEB0}
{7479288F-8A24-4975-9774-8E690AF75B50}
100
AcDbSurface
71
@@ -105483,7 +105483,7 @@ AcDbModelerGeometry
290
1
2
{8A187822-E5B0-496B-B70F-2F07D02D04C8}
{4C643274-967A-4E16-8D9A-72EFD8BDB118}
100
AcDbSurface
71
@@ -105715,7 +105715,7 @@ AcDbModelerGeometry
290
1
2
{8F40117A-206E-40E0-811B-3B73F8830C4D}
{1A13EBE1-4A2D-4587-83AA-39B8301BCB37}
100
AcDbSurface
71
@@ -105947,7 +105947,7 @@ AcDbModelerGeometry
290
1
2
{FE370746-3681-4921-9781-01E7586906BA}
{5E976A13-B452-4A81-B58D-AD3E68E0DB4C}
100
AcDbSurface
71
@@ -106179,7 +106179,7 @@ AcDbModelerGeometry
290
1
2
{E07EC1E4-E56E-413B-AED7-86B90F55DD26}
{023BDA40-7B0C-4432-95BF-120A7B057BEE}
100
AcDbSurface
71
@@ -112589,7 +112589,7 @@ DictionaryVariables
280
0
1
1.4.1 @ 2025-12-15T12:05:42.012548+00:00
1.4.1 @ 2025-12-15T12:29:44.069952+00:00
0
DICTIONARYVAR
5
@@ -112601,7 +112601,7 @@ DictionaryVariables
280
0
1
1.4.1 @ 2025-12-15T12:05:52.588800+00:00
1.4.1 @ 2025-12-15T12:29:55.150467+00:00
0
ENDSEC
0
+27
View File
@@ -64,6 +64,10 @@ def create_block_library(input_dir, output_file, config, logger=None):
"ARC",
"INSERT",
"ATTDEF",
"3DFACE",
"MESH",
"POLYFACE",
"POLYFACEMESH",
"SURFACE",
"3DSURFACE",
"EXTRUDEDSURFACE",
@@ -490,6 +494,29 @@ def get_entity_bounding_box(e, doc,src_doc,filename,config, transform_matrix=Non
)
if ve_bbox.has_data:
bbox.extend(ve_bbox)
elif e.dxftype() == '3DFACE':
# 3DFace: direkte Eckpunkte verwenden
pts = []
try:
pts = [Vec3(p) for p in e.get_points()] # ezdxf API
except Exception:
try:
pts = [Vec3(v.dxf.location) for v in e.vertices]
except Exception:
pts = []
if transform_matrix:
pts = [transform_matrix.transform(p) for p in pts]
if pts:
bbox.extend(pts)
elif e.dxftype() in {'MESH', 'POLYFACE', 'POLYFACEMESH'}:
# Mesh/Polyface über virtuelle Geometrie auswerten
ve_bbox = _bbox_from_virtual_entities(
e, doc, src_doc, filename, config, transform_matrix
)
if ve_bbox.has_data:
bbox.extend(ve_bbox)
elif e.dxftype() == 'SPLINE':
# Approximation der Spline-Kurve