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.0.7.tar.gz (11.5 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.0.7-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pg3d-0.0.7.tar.gz
Algorithm Hash digest
SHA256 5b9cd843d852907737c09801816eb8c021019a137daec4b773746e237554b593
MD5 1693ec5d1f1cef19ad699156a3c7cece
BLAKE2b-256 7b786424dfb2835390f6262fc65f5b67cfe0a141933c0e634aca6a5df160ceea

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pg3d-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 13.0 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.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 7af33400b738172b871151729c3a20685c88e2a4c68e722f149720141a2d8c8b
MD5 80d89c81351d2e93f0880442cb681dce
BLAKE2b-256 d3692f2c358db3cd9fbbc283984f87445b2d9cf7b7cc74db0d4b12612d4caac1

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