@DATABASE 3dprint.guide

@WIDTH 80

@AUTHOR{Michael Cheng}

@NODE MAIN "3dprint.guide"

3dprint  v0.1a

Dodgy docs and dodgy program written by @{" Michael Cheng " link "Author"}

@{" Introduction " link "Introduction"}
@{" History " link "History"}
@{" Requirements " link "Requirements"}
@{" Usage " link "Usage"}
@{" Problems " link "Problems"}
@{" Future " link "Future"}
@{" Acknowledgements " link "Acknowledgements"}
@{" Author " link "Author"}

@ENDNODE

@NODE "Introduction" "Introduction"

Flipping through the technology supplement of the national paper here in
Australia, I came across an article touting the innovation of 'Three Dimensional
Printing'.  Three dimensional printing is a method of rapid prototyping; making
real models/prototypes of designs that exist as 3D CAD models.

Armed with Glenn Lewis' ReadWrite program, and a bit of spare time I have
written a little program for 3D Printing on the amiga. (Well, sort of...)

Given an imagine object file in text format, 3dprint will perform slicing along
the z-axis and output the x-y cross-section at each of the slices.

As with all the "useful" programs I write/release, this was written mainly for
my own benefit.  It's not meant to be a polished, user friendly, gui-front-ended
utility.

@ENDNODE

@NODE "History" "History"

9 June 96
    v0.1a
    - oops. Requirement of ixemul.library43+ not specified in v0.1
        (would have caused immediate guru probably)
    - fixed the scaling of the ascii plots
    - program now calculates how thick each of the slices should be to
        keep the correct aspect ratio
 
6 June 96
    v0.1
    - Release v0.1 to the world in the hope of getting some feedback on how
        to convert the slice printouts into solid models.  As well as finding
        a nice program to plot the x,y data.



@ENDNODE

@NODE "Requirements" "Requirements"

    - an amiga (although it's only plain C, and could be easily converted)
    - access to imagine format (TDDD) models
    - ixemul.library installed v43+
    - Glenn Lewis' T3D package gfx/3d/T3DLIB_EXE_R43.lha
        (specifically you will need 'ReadWrite' which converts binary
         object files to text object files)

@ENDNODE

@NODE "Usage" "Usage"


1. Convert the imagine object file to text format
    eg
        readwrite cube.iob cube.t

2. run 3dprint
    template:
                3dprint filename slices scale-factor plottype

    filename: name of the text object file
    slices: number of slices to make along z-axis (2 to 99)
    scale-factor: when ascii plotting, what fraction of the page should
                    be used for printing (0.1 to 1)
    plottype:   1 - ascii plotting only
                2 - data plotting only
                3 - both data and ascii plotting

    example
                3dprint column.t 9 0.5 3 >output.file
    (re-direct to an output file, otherwise it will just spew onto the screen)


3. print out the plots, stack them up and, (this is the difficult bit) make it
into a solid 3d model.  See @{" Problems " link "Problems"}.

@ENDNODE

@NODE "Problems" "Problems"

Besides the obvious points (lame user interface, crappy argument handling,
crappy ascii plotting, shitty output format etc etc), I haven't found any
*actual* faults in the program.

The major problem is re-assembling the plots so that make a solid object.

Real-life rapid prototyping uses more high tech BS than you can imagine.  Some
examples:
    - focussing lasers in a fluid bath.  The fluid is temperature setting, and
as the lasers coincide/focus on a particular spot it solidifies.
    - Using a laser to selectively consolidate layers of powder.
    - use a movable heating plate in a fluid bath.


I'm trying for a lower tech solution.

Things I've tried
    - overlaying the plots with plasticine to the required dimensions.
        (ran out of plasticine :(  )

    - putting the plots on cardboard and cutting out the shapes.
        (couldn't find any nice thick cardboard)

If you've got a neat solution or a method which works for you, drop me a line.


@ENDNODE

@NODE "Future" "Future"

Lots of things that can be done. Suggestions welcome.

    - fix the argument handling
    - add proper graphics plotting? (Not likely as I'm a lousy programmer)
    - fix the output.
    - tweak the plotting such that folding tabs are included such that you can
        tape the whole thing together.
    - change the allowable plotting axis. ie option to slice along x,y or z axis
        instead of just z
    - calculate proper scaling factor for correct aspect ratio (so as to aid in
        model reconstruction)


Feel free to have an attempt at any of the following.

    - find a program (or write one?) to graphically plot the x,y datapoints
        rather than the lame ascii plotting I have.  Would be heaps better
        for making models to scale.  And you could possibly print 20+ slices
        on one sheet of paper (Save trees!).

    - figure out a neat/cheap way of making the models.  The above suggestion
        will help in this area by making the model slices small and still to
        scale, but I'm still after suggestions for 'stuff' to make the
        models from.



@ENDNODE


@NODE "Acknowledgements" "Acknowledgements"

Glenn Lewis for his T3DLIB utilities

@ENDNODE

@NODE "Author" "Author"

Michael Cheng
memfc@alinga.newcastle.edu.au
http://joffre.newcastle.edu.au/
Cstar on #amiga

Feel free to mail me....

@ENDNODE



