Python module to read/edit 3DST textures.
Project description
py3dst is a module that allows to read, edit and convert 3DST textures
Installation
You can use the latest stable release from PyPi
pip install py3dst
Or install from the repository for latest changes but with the risk of unstability
pip install git+https://github.com/STBrian/py3dst.git
Command-line interface
The module has a simple command-line interface to perform certain tasks such as displaying the provided file on screen or other conversion tasks between formats
python -m py3dst -h
The previous command shows this help message
usage: py3dst [-h] [-c] [-r] [-f FORMAT] [-o OUT] [-v] [path]
Display or convert 3DST textures
positional arguments:
path path to file to open and show
options:
-h, --help show this help message and exit
-c, --convert indicates whether to convert the provided file
-r, --recursive convert files recursively in the directory
-f FORMAT, --format FORMAT
(optional) color format for the output ('rgba8', 'rgb8', 'rgba5551', 'rgb565', 'rgba4', 'la8', 'la4')
-o OUT, --output OUT destination file or directory if multiple output files
-v, --version show program's version number and exit
Supported formats:
- RGBA8
- RGB8
- RGBA5551
- RGB565
- RGBA4
- LA8
- LA4
How to use
Open a texture
The open() function decodes and loads the texture at the provided path
from py3dst import Texture3dst
texture = Texture3dst().open("path/to/file")
Create a texture
The new() function allows to create a blank new texture
from py3dst import Texture3dst
texture = Texture3dst().new(128, 128)
new() takes 2 arguments: width, height
Optionally you can specify the 'mip_level' and 'format'
Export a texture
The export() function converts the data and writes the output data to the specified location
texture.export("path/to/out/file")
Convert to PIL Image
The copy() function will create an output of PIL Image type that you can then export to other image format
image = texture.copy(0, 0, texture.size[0], texture.size[1])
image.save("path/to/out/image/")
copy() takes 4 arguments: x1, y1, x2, y2
Being the coordinates that indicate the area to copy
Convert from PIL Image
The fromImage() function will take the PIL Image object and create a new texture with it. Example:
from py3dst import Texture3dst
from PIL import Image
image = Image.open("path/to/image/")
texture = Texture3dst().fromImage(image)
fromImage() takes 1 argument: image
image must be a PIL.Image object
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py3dst-1.3.0.tar.gz.
File metadata
- Download URL: py3dst-1.3.0.tar.gz
- Upload date:
- Size: 405.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36bba1afaa1b0f11d9d54acbc204a532e4d1260b1f62255bdfce24a833172542
|
|
| MD5 |
ec0bf83c7671e6f8b9190b4e0565924b
|
|
| BLAKE2b-256 |
56d11860be803d6d5e2e5d9e4ea07520894febba45c8331110245e8739b5b698
|
File details
Details for the file py3dst-1.3.0-py3-none-any.whl.
File metadata
- Download URL: py3dst-1.3.0-py3-none-any.whl
- Upload date:
- Size: 407.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a001a9483cdd6bdc6bf684a62a6ed1ae6d9fb1bc74fb8ea0dbe9e62c22151776
|
|
| MD5 |
46eb6c8fdc73727c680394d9ae60d49b
|
|
| BLAKE2b-256 |
7ce49b49f00f56d7ca607c540f210922b5899a5d2495c99f32767b15c2f092c8
|