Add install.rst, remove TODO.rst
Todos moved to GH as issues Some description on installation and the Inkscape plugins
This commit is contained in:
parent
5eeb3f5811
commit
2c721a98f1
25
README.rst
25
README.rst
|
@ -1,26 +1,32 @@
|
||||||
What is this?
|
Boxes.py
|
||||||
=============
|
========
|
||||||
|
|
||||||
This is a small python library for generating drawings to be used with a laser
|
Create boxes and more with a laser cutter!
|
||||||
cutter. It comes with a set of ready-to-use, fully parametrized generators:
|
|
||||||
|
Boxes.py is python library for generating drawings to be used with a laser
|
||||||
|
cutter. It comes with a growing set of ready-to-use, fully parametrized
|
||||||
|
generators:
|
||||||
|
|
||||||
* Boxes in various shapes and with various lids
|
* Boxes in various shapes and with various lids
|
||||||
* Boxes using flex cuts with rounded corners and living hinges
|
* Boxes using flex cuts with rounded corners and living hinges
|
||||||
* Type trays with and without outer walls and floors
|
* Type trays with and without outer walls and floors
|
||||||
|
* Shelves
|
||||||
* Book covers with flex spine
|
* Book covers with flex spine
|
||||||
* Magazine files
|
* Magazine files
|
||||||
|
* Timing belt pulleys and gears
|
||||||
|
* and more
|
||||||
|
|
||||||
And a few one trick ponies:
|
And a few one trick ponies:
|
||||||
|
|
||||||
|
* A desktop arcade cabinet
|
||||||
* A drill stand
|
* A drill stand
|
||||||
* A castle tower
|
* A castle tower
|
||||||
* A housing for a special kind of lamp
|
|
||||||
* A cutlery stand
|
* A cutlery stand
|
||||||
|
|
||||||
Have a look into the examples/ directory to see how the results look like.
|
Have a look into the examples/ directory <https://github.com/florianfesti/boxes/tree/master/examples/>or the online generator <http://www.festi.info/boxes.py/index.html> to see how the results look like.
|
||||||
|
|
||||||
Features
|
Features
|
||||||
========
|
--------
|
||||||
|
|
||||||
It generates SVG images that can be viewed directly in a web brower but also
|
It generates SVG images that can be viewed directly in a web brower but also
|
||||||
postscript and - with pstoedit as external helper - other vector formats
|
postscript and - with pstoedit as external helper - other vector formats
|
||||||
|
@ -46,11 +52,12 @@ Flex cuts allows bending and stretching the material in one direction. This
|
||||||
is used for rounded edges and living hinges.
|
is used for rounded edges and living hinges.
|
||||||
|
|
||||||
Usage
|
Usage
|
||||||
=====
|
-----
|
||||||
|
|
||||||
There are multiple ways to use the available generators:
|
There are multiple ways to use the available generators:
|
||||||
|
|
||||||
* Try them out at <http://www.festi.info/boxes.py/index.html>
|
* Try them out at <http://www.festi.info/boxes.py/index.html>
|
||||||
|
* Use them as Inkscape extensions under *Extensions->Boxes.py*
|
||||||
* Execute the scripts/boxes tool and pass the name of the generator together with the measurements on the command line.
|
* Execute the scripts/boxes tool and pass the name of the generator together with the measurements on the command line.
|
||||||
* Run *scripts/boxesserver* which provides an web interface on port 8000.
|
* Run *scripts/boxesserver* which provides an web interface on port 8000.
|
||||||
* Add a *WSGIScriptAlias* to *scripts/boxesserver* in your httpd config.
|
* Add a *WSGIScriptAlias* to *scripts/boxesserver* in your httpd config.
|
||||||
|
@ -58,7 +65,7 @@ There are multiple ways to use the available generators:
|
||||||
You can also create your own generators using *boxes/generators/_template.py* or any of the generators in *boxes/generators* as a starting point.
|
You can also create your own generators using *boxes/generators/_template.py* or any of the generators in *boxes/generators* as a starting point.
|
||||||
|
|
||||||
Documentation
|
Documentation
|
||||||
=============
|
-------------
|
||||||
|
|
||||||
The module comes with Sphinx based documentation. The rendered version can be
|
The module comes with Sphinx based documentation. The rendered version can be
|
||||||
viewed at <http://florianfesti.github.io/boxes/html/index.html>.
|
viewed at <http://florianfesti.github.io/boxes/html/index.html>.
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
=====
|
|
||||||
To Do
|
|
||||||
=====
|
|
||||||
|
|
||||||
Infrastructure
|
|
||||||
..............
|
|
||||||
|
|
||||||
* Make outer edge continuous even if other parts are drawn intermediately.
|
|
||||||
* Check burn compensation for building blocks
|
|
||||||
* Fix hexHoles\* (leftoover, grow to space, ...)
|
|
||||||
* Add other ventilation patterns than hex holes
|
|
||||||
* Make settings nicer
|
|
||||||
|
|
||||||
* Offer a collection of different settings
|
|
||||||
|
|
||||||
* Use stretch setting in flexboxes
|
|
||||||
* Move settings out of Boxes class (see .open())
|
|
||||||
|
|
||||||
* .bedBoltSettings
|
|
||||||
* .hexHolesSettings
|
|
||||||
|
|
||||||
* Latches and locks
|
|
||||||
|
|
||||||
Generators
|
|
||||||
..........
|
|
||||||
|
|
||||||
* Fix traylayout
|
|
||||||
|
|
||||||
* Move bottom edges of walls without floor underneeth to E
|
|
||||||
|
|
||||||
* Make bolts configurable (e.g. in box2.py)
|
|
||||||
* Treasure Chest with rounded lid and living hinge
|
|
|
@ -12,9 +12,9 @@ Contents:
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
README
|
README
|
||||||
|
install
|
||||||
Boxes
|
Boxes
|
||||||
edges
|
edges
|
||||||
TODO
|
|
||||||
|
|
||||||
Indices and tables
|
Indices and tables
|
||||||
==================
|
==================
|
||||||
|
|
|
@ -0,0 +1,72 @@
|
||||||
|
Installation
|
||||||
|
============
|
||||||
|
|
||||||
|
Boxes.py is a pure Python project that does support the regular setuptools
|
||||||
|
method of shipping with *setup.py*. *setup.py --help-commands* and
|
||||||
|
*setup.py CMD --help* provide the necessary documentation for building,
|
||||||
|
installing or building binary formats.
|
||||||
|
|
||||||
|
Requirements
|
||||||
|
------------
|
||||||
|
|
||||||
|
Cairo
|
||||||
|
.....
|
||||||
|
Boxes.py is based on the cairo graphics library. It supoprts both the PyPi
|
||||||
|
version *cairocffi* and python-cairo that might be shipped with your
|
||||||
|
distribution.
|
||||||
|
|
||||||
|
ps2edit
|
||||||
|
.......
|
||||||
|
|
||||||
|
While not a hard requirement Boxes.py uses ps2edit to offer formats that are
|
||||||
|
not supported by Cairo: DXF, gcode, PLT. Currently the location Boxes.py looks
|
||||||
|
for *ps2edit* is hard coded to */usr/bin/pstoedit* in the
|
||||||
|
*boxes.formats.Formats* class.
|
||||||
|
|
||||||
|
Python
|
||||||
|
......
|
||||||
|
|
||||||
|
Boxes.py - while defaulting to Python3 - can also run on Python
|
||||||
|
2.7. If you encounter any compatibility issues please report them at the
|
||||||
|
[https://github.com/florianfesti/boxes Git Hub project]
|
||||||
|
|
||||||
|
Running from working dir
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
Due to lazy developer(s) Boxes.py can also run from the git check
|
||||||
|
out. The scripts in *scripts/* are all suppossed to just work right
|
||||||
|
after *git clone*. The Inkscape needs a bit manual work to get
|
||||||
|
running. See below.
|
||||||
|
|
||||||
|
Inkscape
|
||||||
|
--------
|
||||||
|
|
||||||
|
Boxes.py can be used as a set of Inkscape plugins. The package does
|
||||||
|
install the necessary .inx files to */usr/share/inkscape/extensions*
|
||||||
|
on unix operating systems. The .inx files assume that the *boxes*
|
||||||
|
executable is available in the path (which it is when installing the
|
||||||
|
binary package)
|
||||||
|
|
||||||
|
On non unix operating systems or when running Boxes.py from git
|
||||||
|
checkout the .inx files need to be copied by hand. *setup.py build*
|
||||||
|
creares them in the *inkex/* directory. They then have to be copied in
|
||||||
|
either the global or the per user extension directory of
|
||||||
|
Inkscape. These are */usr/share/inkscape/extensions/* and
|
||||||
|
*~/.config/inkscape/extensions/* on Unix. On other Operating systems
|
||||||
|
you can look up *Edit -> Preferences... -> System* in the Inkscape
|
||||||
|
menu to look up *User extensions* and *Inkscape extensions*. It may be
|
||||||
|
more convenient to generate the .inx files right in place by executing
|
||||||
|
*scripts/boxes2inkscape* with the taget path as only parameter.
|
||||||
|
|
||||||
|
After placing the .inx files you need to make the *boxes* script
|
||||||
|
available in the path. One way is to create a symlink from a location
|
||||||
|
that is in the path or installing the package on the system.
|
||||||
|
|
||||||
|
Boxes.py on Windows
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
While there is no known reason why Boxes.py should not run on Windows
|
||||||
|
there is no upstream experience with doing so. Getting the Inkscape
|
||||||
|
plugins to run will likely need manual installation (see above). If
|
||||||
|
you run into trouble or have better installation instructions please
|
||||||
|
open a ticket on Git Hub.
|
Loading…
Reference in New Issue