What I have seen from TrueView, the file contains multiple viewports and xrefs which are not supported. So it's not surprising to me, that this is not implemented yet.īeside that, I'm not sure if you can use this file with LibreCAD at all. The special format of code 310 binary data within binary DXF is not documented in DXF references I have. It stops reading at the first zero byte and this brings the further code/value reading of your file out of sync and following data is interpreted wrong. libdxfrw lacks a special treatment for this kind of data and assumes a string after code 310. These data can contain zero bytes, which are usually the end marker of strings. In ASCII DXF this is not a problem because the content is a hex string.īut in binary DXF the data following code 310 is a variable length field with binary data. preview image) which are ignored by LibreCAD anyway. This is indeed an issue with libdxfrw, caused by code 310.Ĭode 310 is for binary data (e.g. The job is now to find the location in the file and use the DXF 2000 reference to evaluate the expected behavior and see what's going wrong in libdxfrw. The file version (AutoCAD 2010/2011/2012) should basically be supported by libdxfrw, but as already said, binary DXF is so rarely that it could be an undetected issue. The log output looks good until the content becomes binary garbage at the end. The issue is triggered in dxfRW::processEntities, in BLOCKS section of the file.Īs it is just the 3rd call I would set a break point there and see what is going on in the 3rd call with the value of code 310. If this already fails, it doesn't make much sense to debug in LibreCAD code.īut probably it would load fine in TrueView, then we must find the cause in libdxfrw. My first step, before fiddling in libdxfrw code, would be to open the file with TrueView to see if it generally opens and to have a reference about the content. Many thanks for the debug log, but without the DXF file there is not much I can do. QG_LayerWidget::update: nullptr layerList RS_FilterDXF::numberToColor: Invalid color number given. RS_FilterDXF::addLayer: layer DETAIL have extended data RS_FilterDXF::addLayer: layer MacOS have extended data RS_FilterDXF::addLayer: layer None have extended data RS_FilterDXF::addLayer: layer _pr OS (2D) have extended data RS_FilterDXF::addLayer: layer _pr eles (3D) have extended data RS_FilterDXF::addLayer: layer _pr ground (2D) have extended data RS_FilterDXF::addLayer: layer _pr roof (2D) have extended data RS_FilterDXF::addLayer: layer _pr first (2D) have extended data RS_FilterDXF::addLayer: layer _ex OS (2D) have extended data RS_FilterDXF::addLayer: layer _ex eles (3D) have extended data RS_FilterDXF::addLayer: layer _ex ground (3D) have extended data RS_FilterDXF::addLayer: layer _ex roof (3D) have extended data RS_FilterDXF::addLayer: layer _ex first (3D) have extended data RS_FilterDXF::addLayer: layer 0 have extended data QG_LayerWidget::activateLayer: invalid layer or nullptr layerView QG_LayerWidget::update: nullptr lastLayer QLayout: Attempting to add QLayout "" to QG_LibraryWidget "Library", which already has a layout Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome.
0 Comments
Leave a Reply. |