From 707b04ee79189d8c354e5643bf296ad645026da0 Mon Sep 17 00:00:00 2001 From: visose Date: Sat, 4 Dec 2021 18:31:53 +0000 Subject: [PATCH] Update readme --- .github/CODE_OF_CONDUCT.md | 3 +++ .github/README.md | 31 +++++++++++++++++++++++++++++++ .github/SUPPORT.md | 6 ++++++ README.md | 10 ---------- build/Assets/iconRobot.png | Bin 512 -> 974 bytes docs/Images/iconRobot.svg | 11 +++++++++++ docs/Images/title.png | Bin 10681 -> 0 bytes 7 files changed, 51 insertions(+), 10 deletions(-) create mode 100644 .github/CODE_OF_CONDUCT.md create mode 100644 .github/README.md create mode 100644 .github/SUPPORT.md delete mode 100644 README.md create mode 100644 docs/Images/iconRobot.svg delete mode 100644 docs/Images/title.png diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..41e9094 --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,3 @@ +# Code of Conduct + +This project adheres to the [Contributor Covenant Code of Conduct](https://www.contributor-covenant.org/version/2/1/code_of_conduct). \ No newline at end of file diff --git a/.github/README.md b/.github/README.md new file mode 100644 index 0000000..8e59118 --- /dev/null +++ b/.github/README.md @@ -0,0 +1,31 @@ +
+ +# ![Robots](../docs/Images/iconRobot.svg)
robots +### Create and simulate ABB, KUKA, UR and Staubli robot programs + +[![License](https://img.shields.io/github/license/visose/Robots?style=flat-square)](../LICENSE) +[![Version](https://img.shields.io/github/v/release/visose/robots?style=flat-square)](../../../releases) +[![Repo stars](https://img.shields.io/github/stars/visose/robots?style=flat-square)](../../../) +[![Discussions](https://img.shields.io/github/discussions/visose/robots?style=flat-square)](../../../discussions) + +**[About](#about) • +[Install](#install) • +[Docs](../../../wiki)** + +
+ +## About + +**Robots** is a plugin for **[Rhino's](https://www.rhino3d.com/)** **Grasshopper** visual programming interface. It allows users to create and simulate robot programs for **ABB**, **KUKA**, **UR** and **Staubli** robots. It works in **Rhino 7** for **Windows** and **MacOS**. + +## Install +1. Install in **Rhino 7** using the `_PackageManager` command, search for `Robots`. + > If you have an older version, delete `Robots.gha` and `Robots.dll` from the `Grasshopper Components` folder. +1. Download at least one pair of `XML` and `3DM` files from the [libraries folder](../libraries). + > You can install multiple libraries. +1. Place them inside a folder named `Robots` under the OS's `Documents` folder. + > In Windows the path will look like `C:\Users\userName\Documents\Robots\RobotLibrary.xml`.
+ > In Mac the path will look like `HD/Users/userName/Robots/RobotLibrary.xml`. +1. Restart **Rhino** and open **Grasshopper**. There should be a new tab in **Grasshopper** named `Robots`. +1. The robots from the library should appear in a **value list** when you place a `Load Robot System` component. +1. Read the [docs](../../../wiki) for more info. diff --git a/.github/SUPPORT.md b/.github/SUPPORT.md new file mode 100644 index 0000000..c10bb42 --- /dev/null +++ b/.github/SUPPORT.md @@ -0,0 +1,6 @@ +## Support + +If you have a question, or need help: +1. Check out the [docs](../../../wiki) +1. Search the [discussions](../../../discussions) +1. Ask a question [here](../../../discussions/new?category=q-a) diff --git a/README.md b/README.md deleted file mode 100644 index f398a72..0000000 --- a/README.md +++ /dev/null @@ -1,10 +0,0 @@ - -![Home](https://github.com/visose/Robots/raw/master/docs/Images/title.png) - -Create and simulate programs for ABB, KUKA, UR and Staubli robots. - -* Install in Rhino 7 using the `_PackageManager` command, search for `Robots`. -> If you have an older version, delete `Robots.gha` and `Robots.dll` from the `Grasshopper Components` folder. -* Download a [robot library](https://github.com/visose/robots/tree/master/libraries). -* Download the [example files](https://github.com/visose/robots/tree/master/samples) (they work with the Bartlett robot library). -* Read the [wiki](https://github.com/visose/robots/wiki). diff --git a/build/Assets/iconRobot.png b/build/Assets/iconRobot.png index 3400257847f614a2c44f3d2418fc273f1c5ecfc6..4b5ce3e729fffd0b506157f5c48179853fd3cd2d 100644 GIT binary patch literal 974 zcmV;<12O!GP)|zx7-I$i^hxTMw1?z(0A42fsHBrY5S;BQ zfbaXK0o;*dD*%`W&`0vVQmOQ5R{+Mx$8(&b>~upJd>i`;+AHTrT(V z+}vCkmzP*{Vq#*@^Sq}4ya_-Jp&Eb<0IL8_k$g+iD#?BTwOXzAKFL`C%j@gw)kN^5 zU_PHeMDjh7FNI-v+Vi~n#>U2pN~KcU%|A9aw$JmtA!E#oB##(lzKNpfqg*a`YuqY$ zNdN#w0c0f2TWjH*Td7nkqjBcm-rffR%t?AU2!am*!1w*5Yinym0M6}}lh)S*O+#NM z`JHoL0Qf7L&3^Xp1jZaS##|ql6ALgqJDUM8vcqi5N)o`pz`)l47PhvwmVDno2mr-m z@wZGS^L<=S>>el-3J08Xjc=@;o}Q~078ZU_g4nKGC=~XEVQ4ltH&0b6l_<^_y9XpS z_xh(6CkFr(i^Y?z7-L)DoZH_tl-U1H6$?P}#>Qt!E57f)Jv}`=bV&dtEj2uzx7MBk z@Jtwn-{$lAL)`*Mx`^oe{^OEvHpU#2^agyV}5o65V0Df+Yopa7z(+NP@ z$LL}TDNFJRNlyaUPjZ=LDCxFN0NPoBZS9qGT#_aEj-;C;y^Edy3oWbd6}X@*$%53; zoI7OOF;7iRJtgTe0DE@{b9i`o&&bHgSJi5@-fGRZS|I5W01w23uO#_G6h+x~YNlR9 zzVG*0Yp(- w$tmcnE;~SK3nU%0)(*B^*z-ENnlHKj26se0JBAhcG5`Po07*qoM6N<$f(??r;Q#;t literal 512 zcmV+b0{{JqP){x4SL&`~9NV>t%z%ptxKvIt)WmmL&i<06ziz z2C#0W=Xg9uRXWl%O>2%xzi<8b1c2$p|8lv^s{kaMF6N$^Ys_0UASt)o?aet_YXE2x zW9(-OKm+*bqJgf8>j9d0%_`v1Ytd>?Q>DjROOo?@3$4zk--Qr2D>~;e9*@J*>10WY zhfABJN|NL}nM`P{rBaFjD5YeQBxhrc@pL={B1oonm28aRY&JVT406@O7*pFOI(xnY zh>qhpmr~vZ@Y>pLgJ7+-o-P)PbhFt&N(tW{o*Ehel~Om+pGJ}Ikn@_B9X&>B`Y0Mr*}e)!qlWulJ5-0Pxs$3z_dRr~=s{_h{HC#*C80000 + + + + + + + + + + diff --git a/docs/Images/title.png b/docs/Images/title.png deleted file mode 100644 index 65161ceba99bee024f143fafb2d717cf3b28ecab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10681 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 Ce!s&2