Skip to main content

No project description provided

Project description

PG3D

PG3D is a simple 3D graphics library written using Pygame.

Installation


  1. Install Python 3.7 or newer. https://www.python.org/downloads/
  2. Open cmd/terminal and type:
pip install pg3d

Dependencies


  • python 3.7+
  • pygame

Usage


  1. Import the library
from pg3d import *
  1. Create an App instance and call the run function
app = App()

#---Code goes here---#

#--------------------#

app.run()

API Reference


App(kwargs):


kwargs:
    dimensions=(1000, 700)
    cam_pos=[0, 0, 0]
    BG_COLOR=(0, 0, 0)
    LINE_COLOR=(255, 255, 255) 
    VERTEX_SIZE=2              
    stats=False                # Show stats on screen
    fullscreen=False           
    mouse_look=False           # Use mouse for camera orientation


functions:
    run()  # Draws all vertices and checks for movement

Model(args)


args:
    app   # Specify the App() object
    path  # Specify path of .obj file

Shape(args, kwargs)


args:
    app    # Specify the App() object
    shape  # "cube" | "pyramid" | "tetrahedron"


kwargs:
    size=1
    center=[0, 0, 0]
    width=1

Triangle(args)


args:
    app       # Specify the App() object
    vertices  # List or tuple with 3 cartesian coordinates


functions:
    __getitem__(index)  # Returnes indext point of Triangle object

Point(args, kwargs)


args:
    app         # Specify the App() object
    coordinate  # A list with a single cartesian coordinate


kwargs:
    vertex=True  # If true the point is drawn and vice versa


functions:
    __repr__()                 # Prints Point object
    __setitem__(index, value)  # Sets indexed coordinate of Point object to value
    __getitem__(index)         # Returns indexed coordinate of Point object

Matrix(args)


args:
    matrix  # A 2D array


functions:
    __repr__()                 # Prints a Matrix object
    __setitem__(index, value)  # Sets indexed value of Matrix object to value
    __getitem__(index)         # Returns value of indexed Matrix object
    __rmul__(value)            # Returns product of Matrix object and number
    __mul__(other)             # Multiplies 2 matrices together
    __add__(other)             # Adds 2 matrices together
    __sub__(other)             # Subtracts 2 matrices together
    transpose()                # Transposes Matrix object
    determinant()              # Finds determinant of Matrix object
    inverse()                  # Finds inverse of Matrix object
    is_square()                # Checks whether matrix is square or not

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

pg3d-0.1.3.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

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

pg3d-0.1.3-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file pg3d-0.1.3.tar.gz.

File metadata

  • Download URL: pg3d-0.1.3.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for pg3d-0.1.3.tar.gz
Algorithm Hash digest
SHA256 1d1ff1d4452fe2d56aa02484778a4123938551130fd57279d6eedf8fdedf4d59
MD5 72027d02c1a7c064318411f7e1315a60
BLAKE2b-256 aad440e4398215520cf07696f453623b757a23f92b5e3f1b391f6a5271c510c9

See more details on using hashes here.

File details

Details for the file pg3d-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: pg3d-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for pg3d-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 81bec2ff6003fdf621f9335194791096c7ba2ffc3c7356ab5c15578195c41a1b
MD5 3d8da199b5bc40db29906a5875cd075c
BLAKE2b-256 fb4c8e1d1da2bf4803590ec54951d3644d071336e5beceb96b3309331f9e6510

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