EZDXF-BROWSE(1)

๐Ÿ“ฆ version 1.4.5, in fedora 43, fedora 44

๐Ÿ’– NAME ๐Ÿ’–

ok bestie, meet ezdxf browse โ€” it's the PyQt DXF structure browser, and it exists for DXF debugging and for curious people (so, literally you ๐Ÿซถ). You're reading EZDXF-BROWSE(1), manual section 1.


๐ŸŒˆ SYNOPSIS ๐ŸŒˆ

ezdxf browse [-h] [-l LINE] [-g HANDLE] [FILE]

โœจ DESCRIPTION โœจ

So the browse command pops open a DXF structure browser and lets you snoop around the internals of a DXF file without interpreting the content. No translation, no vibes-based guessing, just the raw structure laid out for you.

What is it actually for? Debugging invalid DXF files โ€” the ones that flat-out refuse to load through ezdxf.readfile() or ezdxf.recover.readfile(). Those files are giving broken, and this is how you go look at them directly. ๐Ÿ”

๐Ÿงฎ LINE NUMBERS

The low level tag loader ignores DXF comments (group code 999). Which means: if your DXF file has comments in it, the line numbers shown in the DXF browser are not synchronized. ๐Ÿ˜ญ

Want them synced? Run the ezdxf-strip(1) command beforehand to strip all the comments out of the DXF file. That's the move. periodt.

๐Ÿ–ผ๏ธ GUI FEATURES

The tree view on the left shows the outline of the DXF file. And the details are doing the most, so listen up:

  • The number in round brackets on the right side of each item = the count of structure entities within the structure layer.
  • The value in angle brackets on the left side = the entity handle.

The right list view shows the entity content as DXF tags. Colour coding, because of course:

  • Structure tags (data type <ctrl>) are shown in blue.
  • A double click on a reference handle (datatype <ref>) jumps to the referenced entity.
  • Reference handles of non-existent targets are shown in red ๐Ÿšฉ (they're not okay).

Clicking on the first structure tag in the list opens the DXF reference provided by Autodesk in the standard web browser. Iconic. ๐ŸŒ

๐Ÿ”„ AUTO RELOAD

The browser automatically displays a dialog for reloading DXF files if they've been modified by an external application. It's looking out for you like that. ๐Ÿ’…

File Menu

  • Open DXF file... โ€” Ctrl+O
  • Reload DXF file โ€” Ctrl+R
  • Open in Text Editor โ€” Ctrl+T, open the DXF file in the associated text editor at the current location
  • Export DXF Entity... โ€” Ctrl+E, export the current DXF entity shown in the list view as text file
  • Copy selected DXF Tags to Clipboard โ€” Ctrl+C, copy the current selected DXF tags into the clipboard
  • Copy DXF Entity to Clipboard โ€” Ctrl+Shift+C, copy all DXF tags of the current DXF entity shown in the list view into the clipboard
  • Quit โ€” Ctrl+Q
  • Go to Handle... โ€” Ctrl+G
  • Go to Line... โ€” Ctrl+L
  • Find Text... โ€” Ctrl+F, opens the find text dialog
  • Next Entity โ€” Ctrl+Right, go to the next entity in the DXF structure
  • Previous Entity โ€” Ctrl+Right, go to the previous entity in the DXF structure
  • Show Entity in TreeView โ€” Ctrl+Down, expand the left tree view to the currently displayed entity in the list view โ€“ this does not happen automatically for performance reasons
  • Entity History Back โ€” Alt+Left
  • Entity History Forward โ€” Alt+Right
  • Go to HEADERS Section โ€” Shift+H
  • Go to BLOCKS Section โ€” Shift+B
  • Go to ENTITIES Section โ€” Shift+E
  • Go to OBJECTS Section โ€” Shift+O

Bookmarks Menu

  • Store Bookmark... โ€” Ctrl+Shift+B, store current location as named bookmark
  • Go to Bookmark... โ€” Ctrl+B, go to stored location

โš™๏ธ OPTIONS โš™๏ธ

๐Ÿ“Œ POSITIONAL ARGUMENTS

  • FILE โ€” DXF file to browse

๐ŸŽ›๏ธ OPTIONAL ARGUMENTS

  • -h, --help โ€” show a help message and exit
  • -l LINE, --line LINE โ€” go to line number
  • -g HANDLE, --handle HANDLE โ€” go to entity by HANDLE, and heads up: HANDLE has to be a hex value without any prefix like 'fefe'

๐ŸŒฑ ENVIRONMENT

See ezdxf(1).


๐Ÿ“ FILES

See ezdxf(1).

The browse command stores options in the config file, e.g. for the Notepad++ on Windows:

[browse-command]

text_editor = "C:\Program Files\Notepad++\notepad++.exe" "{filename}" -n{num}
icon_size = 32

text_editor is a simple format string:

text_editor.format(filename="test.dxf", num=100)
Quote commands including spaces and always quote the filename argument! ๐Ÿ’€

For xed(1) on Linux Mint use (note: absolute path to executable):

[browse-command]

text_editor = /usr/bin/xed "{filename}" +{num}
icon_size = 32

For gedit(1) use (untested):

[browse-command]

text_editor = /usr/bin/gedit +{num} "{filename}"
icon_size = 32

๐Ÿ“ EXAMPLES

Browse the internal structure of a DXF file like a file system:

$ ezdxf browse gear.dxf

๐Ÿ‘€ SEE ALSO


ok that's the whole page, you ate that ๐Ÿ’… this one's from May 2024 and it's living under the name EZDXF-BROWSE(1) โ€” go forth and debug, bestie ๐Ÿฆ‹โœจ

๐Ÿ“ฆ where this page comes from