]> rtime.felk.cvut.cz Git - hubacji1/rrts.git/blobdiff - README.md
Update readme
[hubacji1/rrts.git] / README.md
index 5281101c229db9df4c69d1b031ef9ea2b3348939..c223498260e78353f526b75853ed2fcbbdd63d1e 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,50 +1,53 @@
-# RRT\* algorithm
+<!--
+SPDX-FileCopyrightText: 2021 Jiri Vlasak <jiri.vlasak.2@cvut.cz>
+
+SPDX-License-Identifier: GPL-3.0-only
+-->
+
+Merged into http://rtime.felk.cvut.cz/gitweb/hubacji1/iamcar2.git
+
+Not updated anymore.
+
+RRT\* algorithm
+===============
+
 RRTS is a C++ library with implementation of RRT\* planning algorithm.
 
-# License
+License
+-------
+
 The project is published under [GNU GPLv3][1].
 
 [1]: ./LICENSE
 
-# Build
-To build the project run the following commands:
-```
-mkdir build
-cd build
-cmake ../
-make
-```
+Dependencies
+------------
 
-To build with ninja:
-```
-mkdir build
-cd build
-cmake -DCMAKE_BUILD_TYPE=Release -G Ninja ../
-ninja -v
-```
-
-# RRT Extensions
-There is basic RRT\* algorithm in `rrts.cc` file. To test different approaches
-and upgrades to RRT, *extensions* are declared in `rrtext.h` and implemented in
-`rrtextX.cc`, where `X` is the number of an extension.
+- `libbcar` (as submodule)
+- `libjsoncpp-dev`
+
+Build
+-----
 
-## Implemented extensions
-There is a list of implemented extensions and what they include:
-- `rrtext4.cc`: store RRT nodes to grid,
-- `rrtext3.cc`: Dijkstra algorithm for path optimization,
-- `rrtext2.cc`: [cute c2][] for collision detection,
-- `rrtext1.cc`: different cost for building and searching.
+To build the project run the following commands:
+
+    mkdir build
+    cd build
+    cmake ../
+    make
 
-[cute c2]: https://github.com/RandyGaul/cute_headers/blob/master/cute_c2.h
+To build with ninja:
 
-## Compound extensions
-There is a list of classes with reference to extensions used:
-- `RRTCE1`: 1, 2.
+    mkdir build
+    cd build
+    cmake -DCMAKE_BUILD_TYPE=Release -G Ninja ../
+    ninja -v
 
-Contribute
-Use [OneFlow][3] branching model and keep the [changelog][4].
+Contribute
+----------
 
 Write [great git commit messages][5]:
+
 1. Separate subject from body with a blank line.
 2. Limit the subject line to 50 characters.
 3. Capitalize the subject line.
@@ -53,18 +56,31 @@ Write [great git commit messages][5]:
 6. Wrap the body at 72 characters.
 7. Use the body to explain what and why vs. how.
 
-When adding feature or hotfix, use [Test-driven development (TDD)][2]:
-1. Add tests to `ut` folder, add methods declaration, basic structure.
-2. Run tests (just `make` in `build` folder), check that tests *fail*.
-3. Implement functionality.
-4. Run tests, check that tests *pass*.
-5. Refactor.
-
-[2]: https://en.wikipedia.org/wiki/Test-driven_development
-[3]: https://www.endoflineblog.com/oneflow-a-git-branching-model-and-workflow
-[4]: ./CHANGELOG.md
 [5]: https://chris.beams.io/posts/git-commit/
 
-# Documentation
+Use [git send-email][6]:
+
+    git config format.subjectPrefix "PATCH rrts"
+    git config sendemail.to "jiri.vlasak.2@cvut.cz"
+
+[6]: https://git-send-email.io/
+
+Documentation
+-------------
+
 The documentation is generated by Doxygen, at least version `1.8.15` is needed.
 Just run `doxygen` in the project root directory.
+
+
+RRT Extensions
+==============
+
+There is basic RRT\* algorithm in `rrts.cc` file. To test different approaches
+and upgrades to RRT, _extensions_ are declared in `rrtext.hh` and implemented in
+`src/rrtextN.cc`, where `N` is the number of an extension.
+
+For more information, see the `incl/rrtext.hh` header file or the generated
+documentation.
+
+RRT extensions are not to be used as the final planner. Instead, the _RRT*
+planners_ declared in `incl/rrtsp.hh` are to be used as the final planner.