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 ¶ added in v0.2.0
func FormatterUsage()
func PrintDuration ¶ added in v1.0.0
Get the total print time for a printable
func RegisterFormatter ¶ added in v0.2.0
func RegisterFormatter(suffix string, newFormatter NewFormatter)
func RegisterMachine ¶ added in v0.10.0
func RegisterMachines ¶ added in v0.10.0
func SetProgress ¶ added in v0.7.3
func SetProgress(prog Progressor)
func WithAllLayers ¶ added in v0.6.1
WithAllLayers executes a function in parallel over all of the layers
func WithEachLayer ¶ added in v0.7.5
WithEachLayer executes a function in over all of the layers, serially (but possibly out of order)
Types ¶
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 ¶ added in v1.0.0
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 ¶ added in v0.2.0
func (*Format) SetPrintable ¶ added in v0.2.0
Write writes a printable to the file format
type Formatter ¶ added in v0.2.0
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 ¶ added in v0.10.0
type Machine struct { Vendor string Model string Size MachineSize }
type MachineFormat ¶ added in v0.10.0
type MachineSize ¶ added in v0.10.0
type NewFormatter ¶ added in v0.2.0
Printable to file format
type PreviewType ¶
type PreviewType uint
type Print ¶ added in v1.0.0
type Print struct {
Properties
}
func NewEmptyPrintable ¶ added in v0.2.2
func NewEmptyPrintable(prop Properties) (p *Print)
type Progress ¶ added in v0.7.3
type Progress struct { Progressor Completed chan struct{} Done chan struct{} }
func NewProgress ¶ added in v0.7.3
type Progressor ¶ added in v0.7.3
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 ¶ added in v0.8.4
func (prop *Properties) GetMetadataUint8(attr string, defValue uint8) (value uint8)
Get metadata
func (*Properties) LayerExposure ¶ added in v0.2.3
func (prop *Properties) LayerExposure(index int) (exposure Exposure)
Exposure gets the default exposure by layer index
func (*Properties) LayerZ ¶ added in v0.8.8
func (prop *Properties) LayerZ(index int) (z float32)
Z get the default Z height at a layer index
func (*Properties) MetadataKeys ¶ added in v1.0.0
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 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 |
Package 'kelant' handles Kelant S400 style .zip files
|
Package 'kelant' handles Kelant S400 style .zip files |
Click to show internal directories.
Click to hide internal directories.