From fa95239fbf1341dbc82f961192dd709456f624d6 Mon Sep 17 00:00:00 2001 From: Dukk Date: Sun, 3 Sep 2023 12:48:47 -0400 Subject: [PATCH] docs: update readme --- README.md | 42 ++++++++++-------------------------------- 1 file changed, 10 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index 549b18b..b7618d8 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,19 @@ -# eframe template +# Pathy -[![dependency status](https://deps.rs/repo/github/emilk/eframe_template/status.svg)](https://deps.rs/repo/github/emilk/eframe_template) -[![Build Status](https://github.com/emilk/eframe_template/workflows/CI/badge.svg)](https://github.com/emilk/eframe_template/actions?workflow=CI) -This is a template repo for [eframe](https://github.com/emilk/egui/tree/master/crates/eframe), a framework for writing apps using [egui](https://github.com/emilk/egui/). +This Pathy, a dead simple path maker for PROS and EZTemplate robots. To get started, create an [EZTemplate](https://ez-robotics.github.io/EZ-Template/) project, then generate some code with Pathy and paste it into an auton function. -The goal is for this to be the simplest way to get started writing a GUI app in Rust. +The goal is for this to be the simplest way to get started writing an auton with EZTemplate. -You can compile your app natively or for the web, and share it using Github Pages. +Pathy runs natively and on the web, and can be deployed through Github Pages. -## Getting started +## Using Pathy -Start by clicking "Use this template" at https://github.com/emilk/eframe_template/ or follow [these instructions](https://docs.github.com/en/free-pro-team@latest/github/creating-cloning-and-archiving-repositories/creating-a-repository-from-a-template). +Start by setting the field size in the settings, then adjust the scale to your liking. After that, hit the create button to start making your path. Pathy provides a few basic tools (create, edit, delete, trim) to help you make your path. Once you've finished, hit `Preprocess`. Pathy will then try to round off all distances to the nearest inch and turns to the nearest angle. If you're satisfied with the result, hit Generate, and a codebox will appear with some code. -Change the name of the crate: Chose a good name for your project, and change the name to it in: -* `Cargo.toml` - * Change the `package.name` from `eframe_template` to `your_crate`. - * Change the `package.authors` -* `main.rs` - * Change `eframe_template::TemplateApp` to `your_crate::TemplateApp` -* `index.html` - * Change the `eframe template` to `your_crate`. optional. -* `assets/sw.js` - * Change the `'./eframe_template.js'` to `./your_crate.js` (in `filesToCache` array) - * Change the `'./eframe_template_bg.wasm'` to `./your_crate_bg.wasm` (in `filesToCache` array) +### Using the generated code -### Learning about egui - -`src/app.rs` contains a simple example app. This is just to give some inspiration - most of it can be removed if you like. - -The official egui docs are at . If you prefer watching a video introduction, check out . For inspiration, check out the [the egui web demo](https://emilk.github.io/egui/index.html) and follow the links in it to its source code. +You'll probably want to paste the code into a function in your `autons.cpp`. It's very likely that you won't be done after this process; due to the imperfections of real life, you may need to tune and tweak some numbers to get a fully optimized path. It's also quite likely that you'll want to add extra code to control other motors and such. You can simply edit the code yourself to add those features. ### Testing locally @@ -37,11 +21,11 @@ Make sure you are using the latest version of stable rust by running `rustup upd `cargo run --release` -On Linux you need to first run: +On Linux you may need to first run: `sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev` -On Fedora Rawhide you need to run: +On Fedora Rawhide you'll need to run: `dnf install clang clang-devel clang-tools-extra libxkbcommon-devel pkg-config openssl-devel libxcb-devel gtk3-devel atk fontconfig-devel` @@ -68,9 +52,3 @@ We use [Trunk](https://trunkrs.dev/) to build for web target. > If `gh-pages` is not available in `Source`, just create and push a branch called `gh-pages` and it should be available. You can test the template app at . - -## Updating egui - -As of 2023, egui is in active development with frequent releases with breaking changes. [eframe_template](https://github.com/emilk/eframe_template/) will be updated in lock-step to always use the latest version of egui. - -When updating `egui` and `eframe` it is recommended you do so one version at the time, and read about the changes in [the egui changelog](https://github.com/emilk/egui/blob/master/CHANGELOG.md) and [eframe changelog](https://github.com/emilk/egui/blob/master/crates/eframe/CHANGELOG.md).