mirror of
https://github.com/riegera2412/UVtools.git
synced 2026-07-08 17:42:31 +02:00
v2.18.0
- **Command line arguments:** - (Add) Convert files: UVtools.exe -c \<inputfile\> \<outputfile1/ext1\> [outputfile2/ext2] - (Add) Extract files: UVtools.exe -e \<inputfile\> [output_folder] - https://github.com/sn4k3/UVtools#command-line-arguments - **File formats:** - (Add) Implement TSMC (Two Stage Motor Control) for the supported formats - (Add) Implement 'Bottom retract speed' for the supported formats - (Add) LGS: Support for lgs120 and lg4k (#218) - (Add) CTB: Special/virtual file extensions .v2.ctb, .v3.ctb, .v4.ctb to force a convertion to the set version (2 to 4). The .ctb is Version 3 by default when creating/converting files - (Improvement) Better performance for file formats that decode images in sequential pixels groups - **GCode:** - (Improvement) Better parsing of the movements / lifts - (Improvement) Better handling of lifts performed after cure the layer - (Improvement) More fail-safe checks and sanitize of gcode while parsing - (Improvement) CTBv3: Enable per layer settings if disabled when fast save without reencode - (Upgrade) .NET from 5.0.8 to 5.0.9 - (Fix) PrusaSlicer printer: Longer Orange 4k with correct resolution and display size - (Fix) Odd error when changing properties too fast in multi-thread
This commit is contained in:
@@ -12,9 +12,6 @@ typedef struct() {
|
||||
BYTE LayerRLE[DataSize] <fgcolor=cBlack, bgcolor=cRed>;
|
||||
} layerData;
|
||||
|
||||
typedef struct(int size) {
|
||||
BYTE layerDataBlock[size] <fgcolor=cBlack, bgcolor=0x00FF00>;
|
||||
} rgbPreviewImageRawData;
|
||||
|
||||
struct HEADER {
|
||||
char Name[8] <fgcolor=cBlack, bgcolor=cWhite>;
|
||||
@@ -62,15 +59,20 @@ struct HEADER {
|
||||
uint32 Uint_a8 <fgcolor=cBlack, bgcolor=cRed>;
|
||||
uint32 PreviewSizeX <fgcolor=cBlack, bgcolor=cRed>;
|
||||
uint32 PreviewSizeY <fgcolor=cBlack, bgcolor=cRed>;
|
||||
} header;
|
||||
|
||||
rgbPreviewImageRawData preview(PreviewSizeX*PreviewSizeY*2);
|
||||
|
||||
if(PrinterModel == 120) // .lgs120
|
||||
{
|
||||
byte preview_data[header.PreviewSizeX*header.PreviewSizeY*2];
|
||||
|
||||
if(header.PrinterModel == 120) // .lgs120
|
||||
{
|
||||
struct PNG_PREVIEW {
|
||||
uint32 pngLength <fgcolor=cBlack, bgcolor=cRed>;
|
||||
byte png[pngLength] <fgcolor=cBlack, bgcolor=cYellow>;
|
||||
}
|
||||
} header;
|
||||
ushort padding <fgcolor=cBlack, bgcolor=cRed>;
|
||||
} png_preview;
|
||||
}
|
||||
|
||||
|
||||
struct LAYERS {
|
||||
local int i;
|
||||
|
||||
@@ -25,7 +25,7 @@ struct HEADER {
|
||||
float MachineZ <fgcolor=cBlack, bgcolor=cRed>;
|
||||
float DisplayWidth <fgcolor=cBlack, bgcolor=cRed>;
|
||||
float DisplayHeight <fgcolor=cBlack, bgcolor=cRed>;
|
||||
byte DisplayMirror <fgcolor=cBlack, bgcolor=cRed>;
|
||||
ubyte DisplayMirror <fgcolor=cBlack, bgcolor=cRed>;
|
||||
|
||||
char PreviewDataType[16] <fgcolor=cBlack, bgcolor=cRed>;
|
||||
char LayerDataType[16] <fgcolor=cBlack, bgcolor=cRed>;
|
||||
@@ -66,16 +66,33 @@ struct PREVIEW {
|
||||
ushort ResolutionX <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
ushort ResolutionY <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
uint ImageLength <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
byte ImageData[ImageLength] <fgcolor=cWhite, bgcolor=cBlack>;
|
||||
ubyte ImageData[ImageLength] <fgcolor=cWhite, bgcolor=cBlack>;
|
||||
};
|
||||
|
||||
struct LAYER_DEF {
|
||||
uint DataAddress <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float PositionZ <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float LiftHeight <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float LiftSpeed <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float LiftHeight2 <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float LiftSpeed2 <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float WaitTimeAfterLift <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float RetractSpeed <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float RetractHeight2 <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float RetractSpeed2 <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float WaitTimeBeforeCure <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float ExposureTime <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
float WaitTimeAfterCure <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
ubyte LightPWM <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
uint BoundingRectangleX <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
uint BoundingRectangleY <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
uint BoundingRectangleWidth <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
uint BoundingRectangleHeight <fgcolor=cBlack, bgcolor=cPurple>;
|
||||
};
|
||||
|
||||
struct LAYER_DATA{
|
||||
uint ImageLength <fgcolor=cWhite, bgcolor=cBlack>;
|
||||
byte ImageData[ImageLength] <fgcolor=cWhite, bgcolor=cBlack>;
|
||||
ubyte ImageData[ImageLength] <fgcolor=cWhite, bgcolor=cBlack>;
|
||||
};
|
||||
|
||||
struct GCODE{
|
||||
|
||||
Reference in New Issue
Block a user