{"id":19635993,"url":"https://github.com/xiaoxiae/swervedrivevisualisation","last_synced_at":"2025-04-28T14:14:41.475Z","repository":{"id":127937693,"uuid":"137534405","full_name":"xiaoxiae/SwerveDriveVisualisation","owner":"xiaoxiae","description":"A visualisation of the math behind swerve drive used in FRC robots using the Processing library.","archived":false,"fork":false,"pushed_at":"2018-06-21T20:55:33.000Z","size":2643,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-28T14:14:33.736Z","etag":null,"topics":["frc","java","jinput","processing","swerve","swerve-drive"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xiaoxiae.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-06-15T21:44:00.000Z","updated_at":"2024-07-05T18:10:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"0dccbbb3-76aa-4767-bcd1-ef75437c2fc8","html_url":"https://github.com/xiaoxiae/SwerveDriveVisualisation","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xiaoxiae%2FSwerveDriveVisualisation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xiaoxiae%2FSwerveDriveVisualisation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xiaoxiae%2FSwerveDriveVisualisation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xiaoxiae%2FSwerveDriveVisualisation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xiaoxiae","download_url":"https://codeload.github.com/xiaoxiae/SwerveDriveVisualisation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251326851,"owners_count":21571636,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["frc","java","jinput","processing","swerve","swerve-drive"],"created_at":"2024-11-11T12:27:55.622Z","updated_at":"2025-04-28T14:14:41.456Z","avatar_url":"https://github.com/xiaoxiae.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Swerve Drive Visualisation\n\nThis project is a simple visualisation of the speeds and angles of the vectors of a swerve drive for a given 3-axis input.\n\nIt serves both as a nice visualisation for an omnidirectional drive system, and as a help for those trying to understand the math behind a system like this.\n\n![](img/preview.gif)\n\n## Controls\n\nThe simulation features minimalistic controls for the **Logitech Extreme 3D Pro** controller (currently the only supported controller):\n* **Left Mouse Click** resizes the chassis of the robot.\n* **X axis** of the controller controls the left/right motion.\n* **Y axis** of the controller controls the forward/backward motion.\n* **Rotation axis** of the controller controls the rotation motion.\n\n## Resources\n* [JInput](https://github.com/jinput/jinput) was the library used for the controller input.\n* [Processing 3](https://processing.org/) is the graphic library used to visualise the simulation.\n* Ether's [derivation of inverse kinematics of swerve drive drive](https://www.chiefdelphi.com/media/papers/download/3027) was an absolutely awesome resource for working through the math of the system.\n* Jacob Misirian's [FRC Swerve Drive Programming guide](https://legacy.gitbook.com/book/jacobmisirian/frc-swerve-drive-programming/) was quite helpful as well, as it went over the Java implementation of such system on FRC robots.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxiaoxiae%2Fswervedrivevisualisation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxiaoxiae%2Fswervedrivevisualisation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxiaoxiae%2Fswervedrivevisualisation/lists"}