|
1 | 1 | # compas |
2 | 2 |
|
3 | | -This is the main library of the compas framework. |
4 | | -It consists of the following Python packages: |
| 3 | +This is the public repository of the main library of the **compas** framework. |
| 4 | +The **compas** framework is an open-source, Python-based framework for computational |
| 5 | +research and collaboration in architecture, engineering and digital fabrication. |
5 | 6 |
|
6 | | -* compas |
7 | | -* compas_rhino |
8 | | -* compas_blender |
9 | | -* compas_maya |
10 | | -* compas_grasshopper |
11 | | -* compas_dynamo |
| 7 | +The main library consists of a core package (**compas**) and several additional |
| 8 | +packages for integration of the core functionality in CAD software (**compas_blender**, |
| 9 | +**compas_maya** and **compas_rhino**). The core package defines all *real* functionality. |
| 10 | +The CAD packages simply provide a unified framework for processing, visualising, |
| 11 | +and interacting with datastructures, and for building user interfaces in different |
| 12 | +CAD software. |
| 13 | + |
| 14 | +The complete documentation of the compas framework is available here: https://compas-dev.github.io/. |
12 | 15 |
|
13 | | -The complete documentation of the compas framework is available here: |
14 | | -[compas-framework]. |
15 | 16 |
|
16 | 17 | ## Getting Started |
17 | 18 |
|
18 | | -To get started with the compas framework, first clone or download this repository. Then modify your `PYTHONPATH` to make the packages available from the location of the download path, or use the `setup.py` script to install them globally. |
| 19 | +**compas** does not yet have an installer or setup script. A detailed description |
| 20 | +of how to get started by cloning the repository and configuring your system |
| 21 | +is available through the documentation: https://compas-dev.github.io/gettingstarted.html |
19 | 22 |
|
20 | | -To modify your `PYTHONPATH` do something similar to the following: |
| 23 | +In short: |
21 | 24 |
|
22 | | -``` |
23 | | -$ echo "export PYTHONPATH=/path/to/packages:$PYTHONPATH" >> ~/.bash_profile |
| 25 | +* clone the repository |
| 26 | +* add the compas source folder to your ``PYTHONPATH`` |
| 27 | +* verify your setup |
| 28 | + |
| 29 | +For example, start Python from the command line, and try |
| 30 | + |
| 31 | +```python |
| 32 | +>>> import compas |
| 33 | +>>> compas.verify() |
24 | 34 | ``` |
25 | 35 |
|
26 | | -To run the stup script, and install the compas framework packages into the site packages folder of your Python installation, do: |
| 36 | + |
| 37 | +This will produce something like the following: |
27 | 38 |
|
28 | 39 | ``` |
29 | | -$ python setup.py install |
| 40 | +------------------------------------------------------------------------------- |
| 41 | +Checking required packages... |
| 42 | +
|
| 43 | +All required packages are installed! |
| 44 | +
|
| 45 | +Checking optional packages... |
| 46 | +
|
| 47 | +The following optional packages are not installed: |
| 48 | +- pycuda |
| 49 | +- pyopengl |
| 50 | +- pyside |
| 51 | +
|
| 52 | +------------------------------------------------------------------------------- |
30 | 53 | ``` |
31 | 54 |
|
32 | | -For a complete overview of all installation instructions and options, and for further configuration possibilities, see the [Getting Started](https://compas-dev.github.io/gettingstarted.html) section of the main documentation website. |
33 | 55 |
|
34 | 56 | ## Dependencies |
35 | 57 |
|
| 58 | +**compas** has very few dependencies and most of them are included in a scientific |
| 59 | +Python distribution such as Anaconda or EPD. |
| 60 | + |
| 61 | +| package | dependencies | exceptions |
| 62 | +| --------------------- | ------------------------ | -------------------------- |
| 63 | +| compas.com | - | matlab (``MatlabEngine``, ``MatlabSession``), paramiko (``ssh``) |
| 64 | +| compas.datastructures | - | |
| 65 | +| compas.files | - | |
| 66 | +| compas.geometry | - | NumPy, SciPy (all functions with a ``_numpy`` suffix) |
| 67 | +| compas.hpc | Numba, PyCuda, PyOpenCL | |
| 68 | +| compas.interop | - | |
| 69 | +| compas.numerical | NumPy, SciPy | |
| 70 | +| compas.plotters | Matplotlib | |
| 71 | +| compas.topology | - | NumPy, SciPy (all functions with a ``_numpy`` suffix), planarity (``network_is_planar``), NetworkX (``network_embed_in_plane``) |
| 72 | +| compas.utilities | - | imageio (``gif_from_images``) |
| 73 | +| compas.viewers | PyOpenGL, PySide | |
| 74 | + |
| 75 | + |
36 | 76 | ## First Steps |
37 | 77 |
|
38 | | -## Examples |
| 78 | +Some useful resources for first explorations: |
| 79 | + |
| 80 | +* https://compas-dev.github.io/main/examples.html |
| 81 | +* https://compas-dev.github.io/main/tutorial.html |
| 82 | +* https://compas-dev.github.io/main/reference.html |
| 83 | + |
| 84 | + |
| 85 | +## Questions and feedback |
| 86 | + |
| 87 | +The **compas** framework has a forum: http://forum.compas-framework.org/ |
| 88 | +for questions and discussions. |
| 89 | + |
| 90 | + |
| 91 | +## Issue tracker |
| 92 | + |
| 93 | +If you find a bug, please [file a report](https://github.com/compas-dev/compas/issues). |
| 94 | + |
| 95 | + |
| 96 | +## License |
| 97 | + |
| 98 | +The main library of **compas** is [released under the MIT license](https://compas-dev.github.io/license.html). |
| 99 | + |
| 100 | + |
| 101 | +## Contact |
| 102 | + |
| 103 | +The **compas** framework is developed by the Block Research Group at ETH Zurich, |
| 104 | +with the support of the NCCR (National Centre for Competence in Research) in *Digital fabrication*. |
| 105 | +Main contributors are Tom Van Mele, Andrew Liew, Tomás Méndez and Matthias Rippmann. |
39 | 106 |
|
40 | | -## Attribution |
| 107 | +For questions, comments, requests, ..., please [contact the main developers directly](mailto:[email protected],[email protected],[email protected],[email protected]). |
41 | 108 |
|
42 | | -## Known Issues |
43 | 109 |
|
44 | | -[compas-framework]: https://compas-dev.github.io/ |
45 | | -[compas-main]: https://compas-dev.github.io/compas/index.html |
46 | | -[compas-packages]: https://compas-dev.github.io/packages/index.html |
|
0 commit comments