# densut86/6-dof-kinematik-kalkulator architecture

> Architecture diagram of the GitHub repository densut86/6-dof-kinematik-kalkulator, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/densut86/6-dof-kinematik-kalkulator
- Repository: https://github.com/densut86/6-dof-kinematik-kalkulator

## Overview

This is a Tkinter six-joint robot kinematics calculator. Users can enter joint angles for forward position/orientation calculations, specify a target position for inverse kinematics, and edit the Denavit–Hartenberg parameters. Both workflows update the joint fields or displayed results through the GUI. The supplied source shows no implementation for the visualization-named directories, so they are omitted.

Main entry points: [`kinematikKalkulator.py`](https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py) (Tkinter GUI)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_interface["User interface"]
  node_gui["Tkinter GUI"]
end

subgraph group_kinematics["Kinematics"]
  node_dh_params["DH parameters"]
  node_fk["Forward kinematics"]
  node_dh_transform["DH transform"]
  node_ik["Inverse kinematics"]
end

node_user(("User"))
node_optimizer["SciPy optimizer"]

node_user -->|"enters inputs"| node_gui
node_gui -->|"requests calculation"| node_fk
node_fk -->|"reads parameters"| node_dh_params
node_fk -->|"computes transforms"| node_dh_transform
node_gui -->|"requests solution"| node_ik
node_ik -->|"evaluates candidates"| node_fk
node_ik -->|"minimizes error"| node_optimizer
node_ik -->|"returns angles"| node_gui
node_gui -->|"saves edits"| node_dh_params
node_gui -->|"updates display"| node_gui

click node_gui "https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py"
click node_dh_params "https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py"
click node_fk "https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py"
click node_dh_transform "https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py"
click node_ik "https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_gui,node_user toneBlue
class node_dh_params,node_fk,node_dh_transform,node_ik toneAmber
class node_optimizer toneIndigo
```

## Components

### User interface

- [Tkinter GUI](https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py): `kinematikKalkulator.py`

### Kinematics

- [DH parameters](https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py): `kinematikKalkulator.py`
- [Forward kinematics](https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py): `kinematikKalkulator.py`
- [DH transform](https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py): `kinematikKalkulator.py`
- [Inverse kinematics](https://github.com/densut86/6-dof-kinematik-kalkulator/blob/main/kinematikKalkulator.py): `kinematikKalkulator.py`

### Other components

- **User**
- **SciPy optimizer**

## Connections

- User → Tkinter GUI: enters inputs
- Tkinter GUI → Forward kinematics: requests calculation
- Forward kinematics → DH parameters: reads parameters
- Forward kinematics → DH transform: computes transforms
- Tkinter GUI → Inverse kinematics: requests solution
- Inverse kinematics → Forward kinematics: evaluates candidates
- Inverse kinematics → SciPy optimizer: minimizes error
- Inverse kinematics → Tkinter GUI: returns angles
- Tkinter GUI → DH parameters: saves edits
- Tkinter GUI → Tkinter GUI: updates display
