Metadata-Version: 2.1
Name: voxelfuse
Version: 1.1.7
Summary: A toolkit for processing 3D components made with mixtures of materials and multiple manufacturing processes
Home-page: https://github.com/cdbrauer/VoxelFuse
Author: Cole Brauer
License: UNKNOWN
Description: # ![VoxelFuse](../master/images/logo.png?raw=true)
        
        The multi-material manufacturing toolkit.
        
        ![Example 1](../master/images/main.png?raw=true)
        
        ![Example 2](../master/images/main2.png?raw=true)
        
        VoxelFuse provides a set of Python commands for importing, modifying, displaying, and exporting multi-material 3D model data.  This library allows scripts to be quickly created for processing different classes of models and generating the files needed to produce them.
        
        Created as part of a research project with [IDEAlab](http://idealab.asu.edu) at ASU.
        
        ## Features
        - Boolean operations for both volumes and materials
        - Morphology operations
        - Gaussian blurring
        - Primitive solid generation
        - Triply periodic structure generation
        - Conversion of voxel data to mesh surfaces
        - Model rendering with grids and axes
        - VoxCad simulation configuration
        - .vf, .vox, and .stl file import
        - .vf, .vxc, .vxa, and .stl file export
        - .gcode file modification
        
        ## Installation
        
        The voxelfuse library can be installed using pip.
        
            pip3 install voxelfuse
        
        To use the .stl file import commands/examples, [Gmsh](http://gmsh.info/) must also be installed and on the system path.
        
        To use the simulation commands/examples, [VoxCad](https://sites.google.com/site/voxcadproject/) must also be installed and on the system path.
        
        ## Templates
        
        Template for creating scripts using the built-in viewer:
        
            # Import Libraries
            import PyQt5.QtGui as qg
            import sys
            from voxelfuse.voxel_model import VoxelModel
            from voxelfuse.mesh import Mesh
            from voxelfuse.plot import Plot
        
            # Start Application
            if __name__=='__main__':
                app1 = qg.QApplication(sys.argv)
        
                # Import Models
                modelIn = VoxelModel.fromVoxFile('model1.vox')
        
                # Process Models
                modelResult = modelIn
        
                # Create and Export Mesh
                mesh1 = Mesh.fromVoxelModel(modelResult)
                mesh1.export('modelResult.stl')
        
                # Create and Export Plot
                plot1 = Plot(mesh1)
                plot1.show()
                app1.processEvents()
                plot1.export('result.png')
        
                app1.exec_()
        
        Template for creating scripts using VoxCad simulation:
        
            # Import Libraries
            from voxelfuse.voxel_model import VoxelModel
            from voxelfuse.simulation import Simulation
        
            # Start Application
            if __name__=='__main__':
                # Import Models
                modelIn = VoxelModel.fromVoxFile('model1.vox')
        
                # Process Models
                modelResult = modelIn
        
                # Create simulation and launch
                simulation = Simulation(modelIn)
                simulation.launchSim()
        
        ## .vox File Generation
        If desired, input models can be created in a .vox file format to allow different materials to be specified in a single model.  This also speeds up import times. My process using [MagicaVoxel](https://ephtracy.github.io) is as follows:
        
        1. Use the "Open" button under the "Palette" section to open the [color-palette-11mat.png](../master/images/color-palette-11mat.png) file. This will give you 11 colors that correspond to the materials defined in materials.py
        2. Create your model. By default the library will use a scale of 1mm per voxel when importing/exporting.
        3. Save the model as a .vox file using the "export" function  (NOT the "save" function).
        
        Using MagicaVoxel and the .vox format will limit you to using distinct voxel materials. The library's import function will convert these files to a data format that allows material mixing.
        
        ## Documentation
        
        See [cdbrauer.github.io/VoxelFuse](https://cdbrauer.github.io/VoxelFuse/) for code documentation.
        
        <br/><br/>
        
        <a href="http://idealab.asu.edu/" target="_blank">![IDEAlab](../master/images/footer.png?raw=true)</a>
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown
