Fix IMPORT naming, messages and 3D Studio limits

STEP assemblies: a link that closes a loop in the assembly is dropped,
so no block inserts itself; the walk is iterative. Each imported block
gets a name the drawing does not use yet instead of silently reusing an
existing definition, inserts are pointed at the names the blocks got,
and an insert of a block that could not be defined is left out with
the error reported.

Names that come from files (STEP products, 3D Studio objects, materials
and cameras, WMF font faces) go through a new shared
scene::sanitized_table_name, which applies the block-name rules
(reserved and control characters, 255 characters).

3D Studio: meshes with more vertices than a polyface mesh can index are
split over several meshes. Single-layer mode uses the current layer.
Materials are only created when the drawing has a material dictionary.
Camera views get the current view's proportions and the perspective
flag.

Messages show paths as given, the file-not-found and read-failure
messages are plain text of our own, and the "Press Esc" line is gone
since the import cannot be cancelled. The true-colour packing is
shared. "Select ACIS File" and "Import WMF" get catalog entries and
keys in all 22 locales.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Opus 5.5 committed 2026-10-16 23:20:03 +03:00
1 parent dbc428b237
commit a0ed20df28
28 files changed
+205 -88

No files matched your search

+2
View File
@@ -1241,6 +1241,7 @@ common =
.dgn-files = DGN Files
.select-dwf-file = Select DWF File
.select-dgn-file = Select DGN File
.select-acis-file = Выбор файла ACIS
.pdfattach = PDFATTACH: __ocs_fmt_0__
.select-external-reference-file = { draw.select } · { properties.external-reference } · { common.files }
.cad-files = { common.files } (CAD)
@@ -6672,6 +6673,7 @@ dgn-import =
.import-file = Import File
.dgn-import = DGN Import
.import-dgn-file = Import DGN File
.import-wmf = Импорт WMF
.help-dgn = Imports a DGN model as drawing objects: levels as layers, cells as blocks.
.help-import = Imports a file of the chosen format with the format's importer.
.blank = Filename cannot be blank