Skip to main content

Tremshape is a minimalistic Python packgage, that only prints basic shapes on terminal.

Project description

PyPI version fury.io codecov Tests Language grade: Python

termshape

Termshape is a minimalistic Python package, that only prints basic shapes on terminal. It does not have any dependencies.

You're welcome to add any shapes!

Installation

pip install termshape

Explanation:

The idea is to draw all the shapes as vectors, so you can set the size of any shape as you wish. Each shape has equations that print it. The get_* functions has (x,y) range and some equations, and from them it prints the shape.

Example:

from termshape import get_square
print(get_square(5))

so: x-range is between 0 and 4 y-range is between 0 and 4 and the equations are: x=0, y=0, x=5 and y=5.

See below the output.

Usage

  • Print a square:
from termshape import get_square
print(get_square(5))
* * * * *
*       *
*       *
*       *
* * * * *
  • Print a rectangle:
from termshape import get_rectangle 
print(get_rectangle(10, 5))
* * * * * * * * * *
*                 *
*                 *
*                 *
* * * * * * * * * *
  • Print a circle:
from termshape import get_circle
print(get_circle(10))
                  * * * * *                
              *               *            
          *                       *        
        *                           *      
      *                               *    
                                           
    *                                   *  
                                           
  *                                       *
  *                                       *
  *                                       *
  *                                       *
  *                                       *
                                           
    *                                   *  
                                           
      *                               *    
        *                           *      
          *                       *        
              *               *            
                  * * * * *                
  • Print a triangle:
from termshape import get_triangular
print(get_triangular(10))
*                  
* *                
*   *              
*     *            
*       *          
*         *        
*           *      
*             *    
*               *  
* * * * * * * * * *
  • Print a shape with custom character:
from termshape import get_rectangle
print(get_rectangle(10, 5, fg='$'))
$ $ $ $ $ $ $ $ $ $
$                 $
$                 $
$                 $
$ $ $ $ $ $ $ $ $ $
  • Print a shape with background:
from termshape import get_rectangle
print(get_square(10, bg='.'))
* * * * * * * * * *
* . . . . . . . . *
* . . . . . . . . *
* . . . . . . . . *
* . . . . . . . . *
* . . . . . . . . *
* . . . . . . . . *
* . . . . . . . . *
* . . . . . . . . *
* * * * * * * * * *
  • Print a shape with points:
from termshape import get_points
points_array = [(0, 0), (0, 9), (9, 0), (9, 9)]
print(get_points(10, 10, points_array, bg='.'))
* . . . . . . . . *
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
* . . . . . . . . *
  • Print numbers:
from termshape import get_number
print(get_number(31415926,3))
* * * *          *    *     *          *    * * * *    * * * *    * * * *    * * * *
      *          *    *     *          *    *          *     *          *    *      
      *          *    *     *          *    *          *     *          *    *      
* * * *          *    * * * *          *    * * * *    * * * *    * * * *    * * * *
      *          *          *          *          *          *    *          *     *
      *          *          *          *          *          *    *          *     *
* * * *          *          *          *    * * * *    * * * *    * * * *    * * * *
  • Print a custom shape using lines:
from termshape import get_lines
lines = [(0, 0), (9, 9), (0, 9), (9, 0), (0, 0)]
print(get_lines(10, 10, lines))
* * * * * * * * * *
  *             *  
    *         *    
      *     *      
        * *        
        * *        
      *     *      
    *         *    
  *             *  
* * * * * * * * * *

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

termshape-1.2.0.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

termshape-1.2.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file termshape-1.2.0.tar.gz.

File metadata

  • Download URL: termshape-1.2.0.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.7

File hashes

Hashes for termshape-1.2.0.tar.gz
Algorithm Hash digest
SHA256 449f8ee5d6f5871751555878922f66e0c117850f5b7f93cc761cbd519d47b358
MD5 04de85044bcc63ee289a876afff987c9
BLAKE2b-256 a0843752b44dfc5da0e3a079317ccd13e254159d4e06da3385654050752f9e39

See more details on using hashes here.

File details

Details for the file termshape-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: termshape-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.7

File hashes

Hashes for termshape-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb6d1777ea5d0679b08532cb2068441ebaaa4f8930da2feeb9a6fda3d92d1fd6
MD5 2c8737e81e014d3c994da5bb23625868
BLAKE2b-256 d7dcc10a789fb0933d5493461726cdf6132e6d7e125d7a0974a12e35f82e77ca

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page