GithubHelp home page GithubHelp logo

chitubox-plugin-helper's Introduction

Chitubox-Plugin-Helper

###################################################
######## By Photonsters X3msnake v1.191122 ########
###################################################

This plugin needs Python 3.5+ to work, and no extra dependencies.

INSTALLATION

ChituboxPluginHelper

HOW DOES THE PLUGIN WORK?

This plugin intercepts the Chitubox "execute external" program call, and keeps the chitubox temporary folder open until you confirm or cancel the MessageBox that it shows.

The Message box displays the arguments (one per line) that were passed to the executable file on the plugin folder. Everytime you run the plugin it also opens the temporary folder and this plugin install folder.

On Chitubox 1.5 the plugin is run after slicing occurs. During slicing Chitubox creates a temporary directory were it dumps the sequential numbered slice images, and a text file run.gcode that contains all the software {properties} in the header along with tags for each section of the code and the passed values of set {property names} on the gcode resin profile boxes.

HOW DO CHITUBOX PLUGINS WORK?

A Chitubox plugin is a zip file with a .CHplugin extension, containing a plugin.jason text file and an executable.

The file plugin.jason registers the plugin and tells Chitubox what executable to run after slicing, what file extension to use, and a couple more properties.

Chitubox passes the path to the temp folder and the file name chosen by the user, with full path as as arguments that you can capture in the executable file.

With that information you can parse the gcode file and modify the contents, rename the files, even modify the images.

Once your executable file is finished, Chitubox proceeds to zip the files found in its temporary folder and renames the resulting file extension to the one you set in the json registration file.

WHY?

Beacause there is no official documentation for the Chitubox plugin system, and when asked for more information they point you to a Chinese made plugin that has Chinese comments. :\

Basically I wrote this to answer my own question since I am trying to make a plugin for a new printer.

Can anyone explain what are the plugin capabilities? From what i gathered all the plugin system does is execute a file and pass the temporary files path as arguments

plugin.json registers the executable file with chitubox and also holds information about author, version etc

Does the system pass any type of variables other than the path to temp the folder and if so what and how do we access them?

You can read the original question in the facebook https://www.facebook.com/groups/104983723495672/permalink/438879950106046/

Have fun making plugins, I hope this helps ;)

The Photonsters Team

chitubox-plugin-helper's People

Contributors

chriscoxart avatar x3msnake avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

chitubox-plugin-helper's Issues

Why do I get invalid file format on printer?

Thanks for your work. I needed a way to edit start layer heights on my files and this was perfect. I am using an Elegoo Mars(cbddlp file format)and your plugin. Once the folder appears, I make my gcode edit, save, and then click ok on msg box. The resulting file I get will not work on my printer. I assume if I was slicing for a particular printer, if there wasn't any conversion done by the plugin, that the resulting file would be sliced in the format chosen. Looking at the win_debug.py code, it doesn't look like any conversion is done to the file format, just captures the parameters and opens the message box.

I tried running plugin as supplied and changing output file extension to cbddlp, doesn't work with printer.

I edited debug.json to use cbddlp as file extension, I don't get an output file if I do this, strange.

Also, cbddlp uses RLE encoded images, this plugin looks to encode as RAW_PNG? How can I change that? Where is original documentation from Chitu? I can't find it anywhere.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.