|Mario Voigt 4d622c5291|
Note that this package is written for Python 3, however requires Python 2 compatibility for Inkscape integration.
cutcraft package contains components in the following categories:
|core||Core components (point, line etc).|
|platforms||Platforms used to construct shapes (circular etc).|
|shapes||Fundamental 3D shapes (cylinder, cone, sphere etc).|
|supports||Vertical supports to hold the shape levels apart.|
|point||A 2D point with
|trace||An ordered collection of
|part||A collection of one or more
|line||A type of
|circle||A type of
|neopixel||A type of
|shape||The core 3D functionality for a shape.|
|sphere||A 3D spherical
Note that the fundamental
shapes listed above can be used flexibly considering the number of
circlesegments can be specified. For example a
conewith 4 segments becomes a pyramid, and a
cylinderwith 4 segments becomes a cube.
|support||The core support structure functionality.|
|pier||A pier like
|face||A solid face to
Python 2 vs 3 Compatibility
The initial aim was to develop only for Python 3, however Inkscape currently uses Python 2 as the default interpreter for extensions. As a result, the following should be noted while reviewing the code:
- The calls to
super()are written in a way that works with both versions of Python.
math.isclose()function is not available in Python 2 so a local version has been created in util.py.