JaciBrunning / Pathfinder

Cross-Platform, Multi-Use Motion Profiling and Trajectory Generation
MIT License
255 stars 78 forks source link

Path Visualization #5

Closed WardBenjamin closed 7 years ago

WardBenjamin commented 7 years ago

Hey Jaci,

What tool did you use to do path and velocity visualization?

I'd be interested in creating some kind of path visualization and waypoint editor, but what you have looks very nice already.

JaciBrunning commented 7 years ago

I used Tableau, although other graphing tools that source from CSV (Excel and Google Sheets both work) will do just fine. Pathfinder gives you trajectories in a CSV format, so if you can import that anywhere (or convert it), chances are it will work just fine.

WardBenjamin commented 7 years ago

I've spent the last few days working on an editor, which you can see here: https://github.com/WardBenjamin/TrajectoryEditor

Here's a few pictures, since it requires IntelliJ IDEA to use (since I used their Swing GUI editor). Once it's "done" I'm going to have it compile the .form file to Java source so the project can be used without IntelliJ.

capture

image

image

It's definitely not perfect; I have some pet peeves about it myself (you can't add a new waypoint by pressing enter in any of the X/Y/ExitAngle inputs, angle input is in degrees but shows up in radians in the text box, etc.).

I'd appreciate any input and feedback though, and if you want to integrate something like this I'd be happy to spend time on that after my FTC competition on the 10th (I rushed to get this workingish so that we could use it then).

Dependencies are on JFreeChart (and therefor JCommon), and on Pathfinder-Java. Binaries of current versions of all of these are included in the lib folder, though.

JaciBrunning commented 7 years ago

That's really neat. It's looking good and once it gets some polish I'm sure it'll be really useful for a lot of teams who want to get into motion profiling.

If you keep your project running, and add the ability to import / export CSV files, it can be run by developers to debug or develop motion profiles for their robots.