Documentation ¶
Overview ¶
Package uv3dp is a set of tools for data exchange between UV Resin based 3D printers
Index ¶
- Constants
- Variables
- func FormatterUsage()
- func PrintDuration(p Printable) (duration time.Duration)
- func RegisterFormatter(suffix string, newFormatter NewFormatter)
- func RegisterMachine(name string, machine Machine, extension string, args ...string) (err error)
- func RegisterMachines(machineMap map[string]Machine, extension string, args ...string) (err error)
- func SetProgress(prog Progressor)
- func WithAllLayers(p Printable, do func(p Printable, n int))
- func WithEachLayer(p Printable, do func(p Printable, n int))
- type Bottom
- type DecimatedPrintable
- type Exposure
- type Format
- type Formatter
- type Machine
- type MachineFormat
- type MachineSize
- type NewFormatter
- type PreviewType
- type Print
- type Printable
- type Progress
- type Progressor
- type Properties
- func (prop *Properties) Bounds() image.Rectangle
- func (prop *Properties) GetMetadataUint8(attr string, defValue uint8) (value uint8)
- func (prop *Properties) LayerExposure(index int) (exposure Exposure)
- func (prop *Properties) LayerZ(index int) (z float32)
- func (prop *Properties) MetadataKeys() (keys []string)
- type Reader
- type Size
- type SizeMillimeter
- type Writer
Constants ¶
View Source
const ( PreviewTypeTiny = PreviewType(iota) PreviewTypeHuge )
Variables ¶
View Source
var (
MachineFormats = map[string](*MachineFormat){}
)
Functions ¶
func FormatterUsage ¶
func FormatterUsage()
func PrintDuration ¶
Get the total print time for a printable
func RegisterFormatter ¶
func RegisterFormatter(suffix string, newFormatter NewFormatter)
func RegisterMachine ¶
func RegisterMachines ¶
func SetProgress ¶
func SetProgress(prog Progressor)
func WithAllLayers ¶
WithAllLayers executes a function in parallel over all of the layers
func WithEachLayer ¶
WithEachLayer executes a function in over all of the layers, serially (but possibly out of order)
Types ¶
type Bottom ¶
type Bottom struct { Exposure // Exposure Count int // Number of bottom layers Transition int // Number of transition layers above the bottom layer }
Bottom layer exposure
type DecimatedPrintable ¶
type DecimatedPrintable struct { Printable Passes int // Number of passes of decimation FirstLayer int // First layer to start decimating Layers int // Count of layers to decimate }
func NewDecimatedPrintable ¶
func NewDecimatedPrintable(printable Printable) (dp *DecimatedPrintable)
func (*DecimatedPrintable) LayerImage ¶
func (dec *DecimatedPrintable) LayerImage(index int) (ig *image.Gray)
type Exposure ¶
type Exposure struct { LightOnTime float32 // Exposure time LightOffTime float32 // Cool down time LightPWM uint8 `json:",omitempty"` // PWM from 1..255 LiftHeight float32 // mm LiftSpeed float32 // mm/min RetractHeight float32 `json:",omitempty"` // mm RetractSpeed float32 `json:",omitempty"` // mm/min }
Per-layer exposure
type Format ¶
func (*Format) SetPrintable ¶
Write writes a printable to the file format
type Formatter ¶
type Formatter interface { Parse(args []string) (err error) Parsed() bool Args() (args []string) NArg() int PrintDefaults() Decode(reader Reader, size int64) (printable Printable, err error) Encode(writer Writer, printable Printable) (err error) }
Printable file format
type Machine ¶
type Machine struct { Vendor string Model string Size MachineSize }
type MachineFormat ¶
type MachineSize ¶
type NewFormatter ¶
Printable to file format
type PreviewType ¶
type PreviewType uint
type Print ¶
type Print struct {
Properties
}
func NewEmptyPrintable ¶
func NewEmptyPrintable(prop Properties) (p *Print)
type Progress ¶
type Progress struct { Progressor Completed chan struct{} Done chan struct{} }
func NewProgress ¶
type Progressor ¶
type Progressor interface { Show(percent float32) Stop() }
type Properties ¶
type Properties struct { Size Size Exposure Exposure Bottom Bottom Preview map[PreviewType]image.Image `json:",omitempty"` Metadata map[string](interface{}) `json:",omitempty"` }
func (*Properties) GetMetadataUint8 ¶
func (prop *Properties) GetMetadataUint8(attr string, defValue uint8) (value uint8)
Get metadata
func (*Properties) LayerExposure ¶
func (prop *Properties) LayerExposure(index int) (exposure Exposure)
Exposure gets the default exposure by layer index
func (*Properties) LayerZ ¶
func (prop *Properties) LayerZ(index int) (z float32)
Z get the default Z height at a layer index
func (*Properties) MetadataKeys ¶
func (prop *Properties) MetadataKeys() (keys []string)
type Size ¶
type Size struct {
X, Y int // Printable size in pixels (x,y)
Millimeter SizeMillimeter // Printable size in mm
Layers int
LayerHeight float32 // Height of an individual layer
}
type SizeMillimeter ¶
type SizeMillimeter struct {
X, Y float32
}
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package cbddlp handle input and output of Chitubox DLP/LCD printables
|
Package cbddlp handle input and output of Chitubox DLP/LCD printables |
cmd
|
|
Package ctb handle input and output of Chitubox DLP/LCD printables
|
Package ctb handle input and output of Chitubox DLP/LCD printables |
Package cws handles input and output of NOVA32 CWS printables
|
Package cws handles input and output of NOVA32 CWS printables |
Package 'czip' handles ChiTuBox '.zip' printers (ie Kelant S400 and Phrozen Shuffle)
|
Package 'czip' handles ChiTuBox '.zip' printers (ie Kelant S400 and Phrozen Shuffle) |
Package fdg handle input and output of Voxelab Polaris printers
|
Package fdg handle input and output of Voxelab Polaris printers |
Package lgs handles input and output of Longer Orange 10 print files Package lgs handles input and output of Longer Orange 10 print files Package lgs handles input and output of Longer Orange 10 print files
|
Package lgs handles input and output of Longer Orange 10 print files Package lgs handles input and output of Longer Orange 10 print files Package lgs handles input and output of Longer Orange 10 print files |
Package ctb handle input and output of Chitubox DLP/LCD printables
|
Package ctb handle input and output of Chitubox DLP/LCD printables |
Package pws handles input and output of Anycubic Photons 2.0 (.pws) printables
|
Package pws handles input and output of Anycubic Photons 2.0 (.pws) printables |
Package sl1 handles input and output of Prusa SL1 DLP/LCD printables
|
Package sl1 handles input and output of Prusa SL1 DLP/LCD printables |
Package uvj handles input and output of UV3DP 'generic' zip files (JSON slice description and images)
|
Package uvj handles input and output of UV3DP 'generic' zip files (JSON slice description and images) |
Package zcodex handles input and output of Prusa SL1 DLP/LCD printables
|
Package zcodex handles input and output of Prusa SL1 DLP/LCD printables |
Click to show internal directories.
Click to hide internal directories.