Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. General talk
  3. Showcase
  4. Diagram / Schematic components library
Forum Updated to NodeBB v4.3 + New Features

Diagram / Schematic components library

Scheduled Pinned Locked Moved Unsolved Showcase
qschematic
4 Posts 3 Posters 3.3k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Joel BodenmannJ Offline
    Joel BodenmannJ Offline
    Joel Bodenmann
    wrote on last edited by Joel Bodenmann
    #1

    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

    Industrial process automation software: https://simulton.com
    Embedded Graphics & GUI library: https://ugfx.io

    ODБOïO 1 Reply Last reply
    7
    • Joel BodenmannJ Joel Bodenmann

      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

      ODБOïO Offline
      ODБOïO Offline
      ODБOï
      wrote on last edited by
      #2

      @Joel-Bodenmann thx for sharing your work

      1 Reply Last reply
      0
      • S Offline
        S Offline
        svanimisetti
        wrote on last edited by
        #3

        @Joel-Bodenmann - thanks for sharing! Are there PyQt5 bindings for this widget? I am not very familiar with how to create one, but can volunteer my time if you guide.

        Joel BodenmannJ 1 Reply Last reply
        0
        • S svanimisetti

          @Joel-Bodenmann - thanks for sharing! Are there PyQt5 bindings for this widget? I am not very familiar with how to create one, but can volunteer my time if you guide.

          Joel BodenmannJ Offline
          Joel BodenmannJ Offline
          Joel Bodenmann
          wrote on last edited by Joel Bodenmann
          #4

          @svanimisetti I never created any python bindings but I assume that this would be fairly easy to do. Presumably you would easily find some official documentation, guide, tutorial and examples on this topic.

          I'll gladly answer any QSchematic specific question I can.

          Industrial process automation software: https://simulton.com
          Embedded Graphics & GUI library: https://ugfx.io

          1 Reply Last reply
          0

          • Login

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • Users
          • Groups
          • Search
          • Get Qt Extensions
          • Unsolved