Skip to main content

A graphical user interface for Exudyn multibody simulation

Project description

Exudyn GUI - Model Builder

Python 3.8+ License: BSD-3 Exudyn

A user-friendly graphical interface for the Exudyn multibody dynamics simulation framework. ExudynGUI provides an intuitive way to create, visualize, and simulate complex mechanical systems without writing code.

⚠️ Alpha Version Notice
ExudynGUI is currently in alpha development (v0.4). While functional, the API may change and some features are still being developed.

Exudyn GUI Screenshot

📦 Installation

Prerequisites

ExudynGUI requires Exudyn to be installed first. Install Exudyn from:

Install ExudynGUI

Option 1: Install from PyPI (Recommended)

pip install exudynGUI

Option 2: Install from Source

git clone https://github.com/MichaelUIBK/exudynGUI.git
cd exudynGUI
pip install -e .

Option 3: Development Installation

git clone https://github.com/MichaelUIBK/exudynGUI.git
cd exudynGUI
pip install -e ".[dev]"

Dependencies

Core Dependencies:

  • Python 3.8+
  • PyQt5 >= 5.15.0
  • NumPy >= 1.20.0
  • Exudyn (multibody simulation engine)

Optional Dependencies:

  • PyMuPDF >= 1.20.0 (PDF documentation support)
  • QScintilla >= 2.14.0 (advanced code editor)
  • IPython >= 7.0.0 (enhanced console)

🎯 Quick Start

Launch the GUI

# From command line (after installation)
exudynGUI

# Or from Python
python -m exudynGUI

Finding Installation Directory

When installed via pip, ExudynGUI files are located in your Python environment:

# Find the installation path
import exudynGUI
import os
print(f"ExudynGUI installed at: {os.path.dirname(exudynGUI.__file__)}")

Common locations:

  • Conda environment: ~/anaconda3/envs/your_env/lib/python3.x/site-packages/exudynGUI/
  • System Python: ~/python3.x/site-packages/exudynGUI/
  • Virtual environment: your_venv/lib/python3.x/site-packages/exudynGUI/

This directory contains examples, exudyn documentation, STL files, and other resources.

Create Your First Model

  1. Start ExudynGUI - Launch the application
  2. Add Components - Use the "Create" button to add bodies, joints, and forces
  3. Set Properties - Configure mass, stiffness, and other parameters
  4. Run Simulation - Click the simulation controls to start
  5. Analyze Results - View the 3D animation and export data

📖 Documentation

Built-in Help

  • F1 - Open online documentation
  • Help Menu - Access online PDF documentation and examples
  • Tooltips - Hover over controls for quick information

External Resources

Key Components

  • Model Manager: Handles Exudyn model lifecycle
  • Object Registry: Tracks and manages simulation objects
  • Renderer Interface: 3D visualization and interaction
  • Property Editor: Dynamic form generation for object properties
  • Script Generator: Exports GUI models to Python code

Get Help

📄 License

ExudynGUI is released under the BSD 3-Clause License. See LICENSE for details.

🙏 Acknowledgments

  • Johannes Gerstmayr and the Exudyn team for the excellent simulation framework
  • Modern AI development tools for accelerating the development process

📈 Project Status

Current Version: 0.4.3 (Glockturm) Status: Alpha - Active Development Stability: Experimental - API may change

Roadmap

  • Menu bar
  • Add drag-and-drop or reorder support in the model tree
  • Allow commenting or grouping of tree items
  • Implement a global search bar for components or fields
  • Improve real-time preview/update in Exudyn viewer during parameter edits
  • Plugin marketplace
  • Add predefined examples to load and try out different models
  • exuPilot, a future AI-assisted features (placeholder)
  • Fem module integration
  • Robotics module integration
  • And much more...

If ExudynGUI helps your work, please consider giving it a ⭐ star!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

exudyngui-0.4.3.tar.gz (40.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

exudyngui-0.4.3-py3-none-any.whl (40.1 MB view details)

Uploaded Python 3

File details

Details for the file exudyngui-0.4.3.tar.gz.

File metadata

  • Download URL: exudyngui-0.4.3.tar.gz
  • Upload date:
  • Size: 40.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for exudyngui-0.4.3.tar.gz
Algorithm Hash digest
SHA256 daa222f72d437dfda3c7d7ebe7e8342354619ffad8ab525bc59f359c4b657bad
MD5 48f8f2127a451ac4bf80ed816db383b7
BLAKE2b-256 8ba7bb1285d48b50e0558015ce54b26429f9b2c714a16c2605c0c2375651d5c9

See more details on using hashes here.

File details

Details for the file exudyngui-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: exudyngui-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 40.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for exudyngui-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b209e8d7d3382331cc076c23982b6bb73dabe9fc00173c7975e78382ca868e54
MD5 a0fa01c223ac7a18427bfb9de96c4364
BLAKE2b-256 daf03e5a16dc8480543ec5ac311fd73867f26d60c98bc4531dd3c8d18fb73c4a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page