Diagram / Schematic components library

  • Hi,

    The past couple of months I've been working on a library that provides components to allow drawing diagrams or schematics in a Qt application. It's called QSchematic and is available as open source (BSD 3-clause) at github.

    The library is far from finished but I think that this might already be useful for someone. Here's a very shot video that only shows the main features: https://youtu.be/7gylsElx4NA. Screenshots & UML diagrams can be found in the readme.

    Excerpt from the readme.md:

    QSchematic is a library to draw diagrams & schematics with Qt. It uses Qt's graphics view framework.
    The library provides base classes for objects such as nodes and wires and implements logic to move objects around while keeping the wires connected, generating netlists and so on. A typical application would include this library and subclass the Item class to implement custom items.
    Feature overview:
      - Add, remove, move, resize nodes
      - Connect nodes with wires
      - Undo/redo
      - Drag'n'Drop
      - Template based netlist generation
      - Serialization to/from XML (powered by GPDS)
      - Completely customizable by inheriting from the provided classes
      - Optional grid with full support for snap-to-grid in all base classes
    Technical stuff:
      - Written in C++
      - Everything is contained within the QSchematic namespace
      - Tested with Qt5
      - No dependencies other than Qt5 and a C++17 compatible compiler
      - BSD 3-clause licensed

    There's a very cure demo application that comes with the library.
    Any kind of feedback & contributions are highly welcomed.

    Here's a screenshot for the people that just quickly glance over this: alt text

  • @Joel-Bodenmann thx for sharing your work

Log in to reply