mirror of
https://github.com/riegera2412/UVtools.git
synced 2026-07-12 19:42:32 +02:00
3130ebe0f2
- **Tools:** - (Add) PCB exposure: Converts a gerber file to a pixel perfect image given your printer LCD/resolution to exposure the copper traces. - (Improvement) Export settings now indent the XML to be more user friendly to edit - (Improvement) Layer import: Allow to have profiles - (Improvement) Layer import: Validates if selected files exists before execute - (Fix) Lithophane: Disallow having start threshold equal to end threshold - (Add) Windows explorer: Right-click on files will show "Open with UVtools" on context menu which opens the selected file on UVtools (Windows MSI only) - (Improvement) Island and overhang detection: Ignore detection on all layers that are in direct contact with the plate (On same first layer position) - (Improvement) Cmd: Better error messages for convert command when using shared extensions and no extension
104 lines
5.7 KiB
Plaintext
104 lines
5.7 KiB
Plaintext
//------------------------------------------------
|
||
//--- 010 Editor v8.0.1 Binary Template
|
||
//
|
||
// File: osf (vlare)
|
||
// Authors: Tiago Conceição
|
||
//------------------------------------------------
|
||
|
||
BigEndian();
|
||
|
||
struct PREVIEW {
|
||
BitfieldDisablePadding();
|
||
uint PreviewLength:24 <fgcolor=cBlack, bgcolor=cRed>;
|
||
ubyte PreviewData[PreviewLength] <fgcolor=cBlack, bgcolor=cGreen>;
|
||
};
|
||
|
||
struct HEADER {
|
||
uint HeaderLength <fgcolor=cBlack, bgcolor=cRed>;
|
||
ushort Version <fgcolor=cBlack, bgcolor=cRed>; // 1
|
||
ubyte ImageLog <fgcolor=cBlack, bgcolor=cRed>; // log 2
|
||
|
||
|
||
PREVIEW preview;
|
||
PREVIEW preview;
|
||
PREVIEW preview;
|
||
PREVIEW preview;
|
||
|
||
ushort ResolutionX <fgcolor=cBlack, bgcolor=cRed>;
|
||
ushort ResolutionY <fgcolor=cBlack, bgcolor=cRed>;
|
||
ushort PixelUmMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (um, magnification 100 times: such as 100um write 10000, the same below)
|
||
ubyte Mirror <fgcolor=cBlack, bgcolor=cRed>; // (0x00 not mirrored, 0x01 X-axis mirroring, 0x02 Y-axis mirroring, 0x03 XY-axis mirroring)
|
||
ubyte BottomLightPWM <fgcolor=cBlack, bgcolor=cRed>;
|
||
ubyte LightPWM <fgcolor=cBlack, bgcolor=cRed>;
|
||
ubyte AntiAliasEnabled <fgcolor=cBlack, bgcolor=cRed>;
|
||
ubyte DistortionEnabled <fgcolor=cBlack, bgcolor=cRed>;
|
||
ubyte DelayedExposureActivationEnabled <fgcolor=cBlack, bgcolor=cRed>;
|
||
uint LayerCount <fgcolor=cBlack, bgcolor=cYellow>;
|
||
ushort NumberParameterSets <fgcolor=cBlack, bgcolor=cRed>; // 1
|
||
uint LastLayerIndex <fgcolor=cBlack, bgcolor=cYellow>;
|
||
uint LayerHeightUmMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (um magnification 100 times)
|
||
ubyte BottomLayersCount <fgcolor=cBlack, bgcolor=cRed>;
|
||
|
||
uint ExposureTimeMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
uint BottomExposureTimeMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
uint SupportDelayTimeMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
uint BottomSupportDelayTimeMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
ubyte TransitionLayers <fgcolor=cBlack, bgcolor=cRed>;
|
||
ubyte TransitionType <fgcolor=cBlack, bgcolor=cRed>; // (0x00 linear transition)
|
||
uint TransitionLayerIntervalTimeDifferenceMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
uint WaitTimeAfterCureMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
uint WaitTimeAfterLiftMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
uint WaitTimeBeforeCureMagnified100Times:24 <fgcolor=cBlack, bgcolor=cRed>; // s * 100
|
||
|
||
uint BottomLiftHeightSlowMagnified1000Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (magnification 1000 times)
|
||
uint BottomLiftHeightTotalMagnified1000Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (magnification 1000 times)
|
||
uint LiftHeightSlowMagnified1000Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (magnification 1000 times)
|
||
uint LiftHeightTotalMagnified1000Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (magnification 1000 times)
|
||
uint BottomRetractHeightTotalMagnified1000Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (magnification 1000 times)
|
||
uint RetractHeightSlowMagnified1000Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (magnification 1000 times)
|
||
uint RetractHeightTotalMagnified1000Times:24 <fgcolor=cBlack, bgcolor=cRed>; // (magnification 1000 times)
|
||
|
||
ubyte AccelerationType <fgcolor=cBlack, bgcolor=cRed>; // (0x00: S-shaped acceleration, 0x01: T-shaped acceleration, Default Value: S-shaped acceleration, currently only supports S-shaped acceleration)
|
||
|
||
ushort BottomLiftSpeedStartMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort BottomLiftSpeedSlowMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort BottomLiftSpeedFastMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ubyte BottomLiftAccelerationChange <fgcolor=cBlack, bgcolor=cRed>; // 5
|
||
|
||
ushort LiftSpeedStartMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort LiftSpeedSlowMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort LiftSpeedFastMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ubyte LiftAccelerationChange <fgcolor=cBlack, bgcolor=cRed>; // 5
|
||
|
||
ushort BottomRetractSpeedStartMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort BottomRetractSpeedSlowMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort BottomRetractFastMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ubyte BottomRetractAccelerationChange <fgcolor=cBlack, bgcolor=cRed>; // 5
|
||
|
||
ushort RetractSpeedStartMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort RetractSpeedSlowMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ushort RetractFastMagnified100Times <fgcolor=cBlack, bgcolor=cRed>; // (magnification 100 times)
|
||
ubyte RetractAccelerationChange <fgcolor=cBlack, bgcolor=cRed>; // 5
|
||
|
||
ubyte Reserved[23] <fgcolor=cWhite, bgcolor=cBlack>;
|
||
|
||
ubyte ProtocolType <fgcolor=cBlack, bgcolor=cRed>; // 0
|
||
} header;
|
||
|
||
|
||
struct LAYER_DEF {
|
||
ushort Mark <fgcolor=cBlack, bgcolor=cRed>; // (OD OA begins, indicating that the model + support is included; the beginning of 0D 0B, indicating that the layer only has support data)
|
||
uint NumberOfPixels <fgcolor=cBlack, bgcolor=cRed>;
|
||
ushort StartY <fgcolor=cBlack, bgcolor=cRed>;
|
||
};
|
||
|
||
|
||
struct LAYERS {
|
||
|
||
local int i = 0;
|
||
for( i = 0; i < header.LayerCount; i++ ){
|
||
LAYER_DEF layerDef <fgcolor=cBlack, bgcolor=cYellow>;
|
||
}
|
||
|
||
} layers;
|