-
-
Notifications
You must be signed in to change notification settings - Fork 255
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot get rid of AutoCAD recovery mode #322
Comments
Set the RECOVERAUTO variable |
Fix the wrong type in APPID (2004+ only), leading to the NOD being ignored. |
not just on unknown size/bitsize (DXF), also on JSON import and on rewrite across versions we need to recalc both sizes. e.g. on rewrite from r2004+ we miss the is_xdic_missing bit in all objects leading to an off-by-one bitsize. See GH #322
yes. this was it. 14527d3 should fix those problems. |
That being said, getting rid of the recovery dialog on acad import is not a goal for this library. We try to keep as much information as possible, and don't simply skip half-known information. acad recovery is doing its thing fine. there are so many unstable objects still, so there will always be a recovery prompt if you don't set to automatic. only with r2000 -> r2000 conversion without any unstable object there will be none |
I understand your point but nobody will trust a DWG file with this error in AutoCAD, how can you tell that the recovered entities are 100% of the DWG content? Will anybody in the industry use a DWG file with this problem? If you have any idea of where to start investigating this issue, I will try to help with this cause. Would skipping half-known information help? Where do I start? Thanks. |
Sorry, but a 100% perfect DWG is a none-goal. Data-loss is a worse problem then a message that the dwg needs to be recovered. There are also other CAD programs which read and write DWG's and will need the 99% information in these DWG's. |
There will never be 100% certainty. Even AutoCAD itself crashes on invalid input. AutoCAD allows arbitrary 3rd party classes serialized to the Dwg. Teigha supports about 60% of them. We support about 40%, with some more common bugs. But no constraints and no parametric blocks yet. Not even proper acid solids or surfaces. |
I did a test by myself, removing from JSON file all the problematic objects (most of them not related to geometry at all) and I was very close to get rid of the recovery mode error. Unfortunately, an issue with the one and only text style prevents me to succeed. Can you help me to understand what's wrong with this text style? Is there any text style data I can reset to avoid the problem? All the documents attached. |
Still working on it. See GH #326 |
Can I expect a valid text style with your latest commit? Thanks. |
Can this issue be related to x64 bitness, as your recent discovery on this one? Thanks. |
Yes, I suspect a mingw64 problem with sizes |
Hello, Here is a detailed list of the steps that I'm doing in order to help you reproduce this issue on Linux. I'm testing on a linux VM with Debian 11. Some information on the OS, you can find the outputs of these commands inside info/: regarding apt-list, I installed specifically: From now on it's very straightforward, I just did the README.md steps one by one: See INSTALL for generic instructions. Basically, you do: And again you can find all the respective outputs in the attached files (inside build/). Finally, I tried to read a DWG file (Polyline3D.dwg, version AC1015 - ~2000) into a .json and then write it back to a DWG. programs/dwgread -v9 -o ~/Desktop/dwgtest/Polyline3D.json ~/Desktop/dwgtest/Polyline3D.dwg 2>&1 | tee ~/Desktop/dwgtest/read_output.txt But when I open "Polyline3DTEST.dwg" with AutoCAD 2007 Windows I get the following message: C:\Documents and Settings\Administrator\Desktop\Polyline3DTEST.dwg However, if I do recover the file everything seems fine. What am I doing wrong? Thank you. |
You are doing it right. AutoCAD just doesn't fully accept it yet, |
Ah, so we are back to this issue again? Thanks. |
Seems to be the same error. I've detected some slack/undocumented 12 bits ("010000010010") after the bigfont_file, which should be written back into the style, probably. |
for now used for the STYLE slack after bigfont_file. See GH #322
for now used for the STYLE slack after bigfont_file. a "A" 4 after the empty bigfont. "num_unknown_bits": 12, "unknown_bits": "4104" See GH #322
Thanks. Is "win64" still appropriate in the title of issue #346? |
No idea. But I would appreciate if this fixed your issue. |
Do you mean I can try the latest changes already? Or do you still need to work on this? I can repeat the test on Linux and let you know. |
Should work with the smoke/style-gh322 branch, yes. |
for now used for the STYLE slack after bigfont_file. a "A" 4 after the empty bigfont. "num_unknown_bits": 12, "unknown_bits": "4104" See GH #322
for now used for the STYLE slack after bigfont_file. a "A" 4 after the empty bigfont. "num_unknown_bits": 12, "unknown_bits": "4104" See GH #322
for now used for the STYLE slack after bigfont_file. a "A" 4 after the empty bigfont. "num_unknown_bits": 12, "unknown_bits": "4104" See GH #322
for now used for the STYLE slack after bigfont_file. a "A" 4 after the empty bigfont. "num_unknown_bits": 12, "unknown_bits": "4104" See GH #322
Ok, will try tomorrow. |
for now used for the STYLE slack after bigfont_file. a "A" 4 after the empty bigfont. "num_unknown_bits": 12, "unknown_bits": "4104" See GH #322
I've done various tests with the same .DWG file of the previous comment, Polyline3D.dwg, but this time I tried with multiple versions. Here are the results:
I've done the exact same operations of the previous comment. Again, if I recover the file, everything seems correct. If you have the possibility, could you also try to write one of these? |
Can you repro? Do you need any other tests from my side? Thanks. |
Hello Reini,
So here we are stuck again, like two years ago...
Please let me know if I can do something else to help you with this issue: #322
Or even if a further donation would help.
Thank you again,
Dave
…________________________________
From: Reini Urban ***@***.***>
Sent: Thursday, March 30, 2023 6:03 AM
To: LibreDWG/libredwg ***@***.***>
Cc: David J. Harris ***@***.***>; Author ***@***.***>
Subject: Re: [LibreDWG/libredwg] Cannot get rid of AutoCAD recovery mode (#322)
Should work with the smoke/style-gh322 branch, yes.
—
Reply to this email directly, view it on GitHub<#322 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ATBSPWOJZ6DT4DIWHPXAR5LW6VK7PANCNFSM4YOKEZRQ>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
Working on this in smoke/oda for a while. problems still with downconverting TABLESTYLE, AcDbRasterImageDefReactor, AcDbMLeader See also #764 . I've integrated roundtrip checks via ODA. if the encoded DWG is valid, can be read back with ODA/Teigha |
write now the xdicobjhandle if not missing. Fixes oda errors Invalid input AcDbBlockTableRecord(1F), and Object of class AcDbRegAppTableRecord cant be cast to AcDbEntity See GH #322
how
how to set the RECOVERAUTO variable? |
I've made the simplest DWG containing only one circle and I still get the Recovery Mode when opening it in AutoCAD 2007. From what I can see, LibreDWG is unable to write accurate DWG files, in all cases.
I'm attaching the files, just in case I am missing something. I don't believe that these warnings are meaningful in this respect.
files.zip
The text was updated successfully, but these errors were encountered: