Files
UVtools/documentation/UVtools.Core.xml
T
Tiago Conceição ca6f623a9f v3.6.7
- **Layer:**
   - (Add) Property: `LayerMatBoundingRectangle`
   - (Add) Property: `LayerMatModelBoundingRectangle`
   - (Add) Method: `GetLayerMat(roi)`
- **Issues:**
   - **Islands:**
      - (Improvement) Islands detection performance
      - (Improvement) Required area to consider an island is now real area instead of bounding box area
      - (Fix) Logic bug when combining with overhangs
   - **Overhangs:**
      - (Improvement) Overhangs detection performance
      - (Improvement) Overhangs are now split and identified as separately in the layer
      - (Improvement) Overhangs now shows the correct issue area and able to locate the problem region more precisely
      - (Improvement) Compress overhangs into contours instead of using whole pixels, resulting in better render performance and less memory to hold the issue
      - (Fix) Bug in overhang logic causing to detect the problem twice when combined with supports
   - (Improvement) Touching bounds check logic to spare cycles
- **Tool - Raise platform on print finish:**
   - (Add) Preset "Minimum": Sets to the minimum position
   - (Add) Preset "Medium": Sets to half-way between minimum and maximum position
   - (Add) Preset "Maximum": Sets to the maximum position
   - (Add) Wait time: Sets the ensured wait time to stay still on the desired position.
           This is useful if the printer firmware always move to top and you want to stay still on the set position for at least the desired time.
           Note: The print time calculation will take this wait into consideration and display a longer print time.
- (Add) FileFormat: AnyCubic custom machine (.pwc)
- (Downgrade) OpenCV from 4.5.5 to 4.5.4 due a possible crash while detecting islands (Windows)
2022-10-02 00:44:39 +01:00

6876 lines
311 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0"?>
<doc>
<assembly>
<name>UVtools.Core</name>
</assembly>
<members>
<member name="P:UVtools.Core.About.Born">
<summary>
Gets UVtools born date and time
</summary>
</member>
<member name="P:UVtools.Core.About.YearsOld">
<summary>
Gets UVtools years
</summary>
</member>
<member name="P:UVtools.Core.About.AgeStr">
<summary>
Return full age in a readable string
</summary>
</member>
<member name="P:UVtools.Core.About.IsBirthday">
<summary>
Checks if today is UVtools birthday
</summary>
</member>
<member name="M:UVtools.Core.Converters.SpeedConverter.Convert(System.Single,UVtools.Core.SpeedUnit,UVtools.Core.SpeedUnit,System.Byte)">
<summary>
Converts a speed from one unit to another
</summary>
<param name="value"></param>
<param name="from"></param>
<param name="to"></param>
<param name="rounding"></param>
<returns></returns>
<exception cref="T:System.ArgumentOutOfRangeException"></exception>
</member>
<member name="M:UVtools.Core.Converters.TimeConverter.SecondsToMilliseconds(System.Single,System.Byte)">
<summary>
Converts seconds to milliseconds
</summary>
<param name="value"></param>
<param name="rounding"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Converters.TimeConverter.SecondsToMillisecondsUint(System.Single)">
<summary>
Converts seconds to milliseconds
</summary>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Converters.TimeConverter.MillisecondsToSeconds(System.Single,System.Byte)">
<summary>
Converts milliseconds to seconds
</summary>
<param name="value"></param>
<param name="rounding"></param>
<returns></returns>
</member>
<member name="P:UVtools.Core.CoreSettings.MaxDegreeOfParallelism">
<summary>
Gets or sets the maximum number of concurrent tasks enabled by this ParallelOptions instance.
Less or equal to 0 will set to auto number
1 = Single thread
n = Multi threads
</summary>
</member>
<member name="P:UVtools.Core.CoreSettings.ParallelOptions">
<summary>
Gets the ParallelOptions with <see cref="P:UVtools.Core.CoreSettings.MaxDegreeOfParallelism"/> set
</summary>
</member>
<member name="P:UVtools.Core.CoreSettings.ParallelDebugOptions">
<summary>
Gets the ParallelOptions with <see cref="P:UVtools.Core.CoreSettings.MaxDegreeOfParallelism"/> set to 1 for debug purposes
</summary>
</member>
<member name="M:UVtools.Core.CoreSettings.GetParallelOptions(System.Threading.CancellationToken)">
<summary>
Gets the ParallelOptions with <see cref="P:UVtools.Core.CoreSettings.MaxDegreeOfParallelism"/> and the <see cref="T:System.Threading.CancellationToken"/> set
</summary>
</member>
<member name="M:UVtools.Core.CoreSettings.GetParallelOptions(UVtools.Core.Operations.OperationProgress)">
<summary>
Gets the ParallelOptions with <see cref="P:UVtools.Core.CoreSettings.MaxDegreeOfParallelism"/> and the <see cref="T:System.Threading.CancellationToken"/> set
</summary>
</member>
<member name="P:UVtools.Core.CoreSettings.EnableCuda">
<summary>
Gets or sets if operations run via CUDA when possible
</summary>
</member>
<member name="P:UVtools.Core.CoreSettings.CanUseCuda">
<summary>
Gets if we can use cuda on operations
</summary>
</member>
<member name="P:UVtools.Core.CoreSettings.DefaultLayerCompressionCodec">
<summary>
Gets or sets the default compression type for layers
</summary>
</member>
<member name="F:UVtools.Core.CoreSettings.AverageResin1000MlBottleCost">
<summary>
<para>The average resin 1000ml bottle cost, to use when bottle cost is not available.</para>
<para>Use 0 to disable.</para>
</summary>
</member>
<member name="P:UVtools.Core.CoreSettings.DefaultSettingsFolder">
<summary>
Gets the default folder to save the settings
</summary>
</member>
<member name="P:UVtools.Core.CoreSettings.DefaultSettingsFolderAndEnsureCreation">
<summary>
Gets the default folder to save the settings
</summary>
</member>
<member name="T:UVtools.Core.EmguCV.EmguContour">
<summary>
A contour cache for OpenCV
</summary>
</member>
<member name="P:UVtools.Core.EmguCV.EmguContour.Area">
<summary>
Gets the area of the contour
</summary>
</member>
<member name="P:UVtools.Core.EmguCV.EmguContour.Perimeter">
<summary>
Gets the perimeter of the contours
</summary>
</member>
<member name="P:UVtools.Core.EmguCV.EmguContour.Centroid">
<summary>
Gets the centroid of the contour
</summary>
</member>
<member name="P:UVtools.Core.EmguCV.EmguContour.Points">
<summary>
Gets or sets the contour <see cref="T:System.Drawing.Point"/>
</summary>
</member>
<member name="P:UVtools.Core.EmguCV.EmguContour.IsEmpty">
<summary>
Gets if this contour have any point
</summary>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContour.IsInsideBounds(System.Drawing.Point)">
<summary>
Checks if a given <see cref="T:System.Drawing.Point"/> is inside the contour rectangle bounds
</summary>
<param name="point"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContour.IsInside(System.Drawing.Point)">
<summary>
Gets if a given <see cref="T:System.Drawing.Point"/> is inside the contour
</summary>
<param name="point"></param>
<returns></returns>
</member>
<member name="T:UVtools.Core.EmguCV.EmguContours">
<summary>
Utility methods for contour handling.
Use only with Tree type
</summary>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetContoursInside(Emgu.CV.Util.VectorOfVectorOfPoint,System.Int32[0:,0:],System.Drawing.Point,System.Boolean)">
<summary>
Gets contours inside a point
</summary>
<param name="contours"></param>
<param name="hierarchy"></param>
<param name="location"></param>
<param name="includeLimitingArea">If true it will include all limiting area, otherwise only outer contour will be returned</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetContourInside(Emgu.CV.Util.VectorOfVectorOfPoint,System.Drawing.Point,System.Int32@)">
<summary>
Gets a contour given a location.
</summary>
<param name="contours"></param>
<param name="location"></param>
<param name="index">Contour index, -1 if not exists</param>
<returns>null if not exists</returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetExternalContours(Emgu.CV.Util.VectorOfVectorOfPoint,System.Int32[0:,0:])">
<summary>
Gets only the outer most external contours
Only compatible with Tree type of contour detection
</summary>
<param name="contours"></param>
<param name="hierarchy"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetNegativeContours(Emgu.CV.Util.VectorOfVectorOfPoint,System.Int32[0:,0:])">
<summary>
Gets contours inside contours that are black pixels
</summary>
<param name="contours"></param>
<param name="hierarchy"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetContoursInGroups(Emgu.CV.Util.VectorOfVectorOfPoint,System.Int32[0:,0:])">
<summary>
Gets contours that are positive and negative pixels and group them by areas
Only compatible with Tree type of contour detection
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetPositiveContoursInGroups(Emgu.CV.Util.VectorOfVectorOfPoint,System.Int32[0:,0:])">
<summary>
Gets contours that are positive pixels and group them by areas
Only compatible with Tree type of contour detection
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetNegativeContoursInGroups(Emgu.CV.Util.VectorOfVectorOfPoint,System.Int32[0:,0:])">
<summary>
Gets contours inside contours that are black pixels and group them by areas
Only compatible with Tree type of contour detection
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetContourArea(Emgu.CV.Util.VectorOfVectorOfPoint)">
<summary>
Gets contour real area for a limited area
</summary>
<param name="contours"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetLargestContourArea(Emgu.CV.Util.VectorOfVectorOfPoint)">
<summary>
Gets the largest contour area from a contour list
</summary>
<param name="contours">Contour list</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.GetContoursArea(System.Collections.Generic.List{Emgu.CV.Util.VectorOfVectorOfPoint},System.Boolean)">
<summary>
Gets contours real area for a group of contours
</summary>
<param name="contours">Grouped contours</param>
<param name="useParallel">True to run in parallel</param>
<returns>Array with same size with contours area</returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.ContoursIntersectingPixels(Emgu.CV.Util.VectorOfVectorOfPoint,Emgu.CV.Util.VectorOfVectorOfPoint)">
<summary>
Checks if two contours intersects and return the intersecting pixel count
</summary>
<param name="contour1">Contour 1</param>
<param name="contour2">Contour 2</param>
<returns>Intersecting pixel count</returns>
</member>
<member name="M:UVtools.Core.EmguCV.EmguContours.ContoursIntersect(Emgu.CV.Util.VectorOfVectorOfPoint,Emgu.CV.Util.VectorOfVectorOfPoint)">
<summary>
Checks if two contours intersects
</summary>
<param name="contour1">Contour 1</param>
<param name="contour2">Contour 2</param>
<returns></returns>
</member>
<member name="T:UVtools.Core.EmguCV.MatRoi">
<summary>
A disposable Mat with associated ROI Mat
</summary>
</member>
<member name="T:UVtools.Core.IndexStartNumber">
<summary>
Gets index start number, if starts on 0 or 1
</summary>
</member>
<member name="T:UVtools.Core.FlipDirection">
<summary>
Flip direction, same as <see cref="T:Emgu.CV.CvEnum.FlipType"/>, but add None which must be taken care/ignored on code
</summary>
</member>
<member name="T:UVtools.Core.RotateDirection">
<summary>
Rotate direction, same as <see cref="T:Emgu.CV.CvEnum.RotateFlags"/>, but add None which must be taken care/ignored on code
</summary>
</member>
<member name="F:UVtools.Core.RotateDirection.Rotate90Clockwise">
<summary>Rotate 90 degrees clockwise (0)</summary>
</member>
<member name="F:UVtools.Core.RotateDirection.Rotate180">
<summary>Rotate 180 degrees clockwise (1)</summary>
</member>
<member name="F:UVtools.Core.RotateDirection.Rotate90CounterClockwise">
<summary>Rotate 270 degrees clockwise (2)</summary>
</member>
<member name="F:UVtools.Core.SpeedUnit.MillimetersPerSecond">
<summary>
mm/s
</summary>
</member>
<member name="F:UVtools.Core.SpeedUnit.MillimetersPerMinute">
<summary>
mm/m
</summary>
</member>
<member name="F:UVtools.Core.SpeedUnit.CentimetersPerMinute">
<summary>
cm/m
</summary>
</member>
<member name="F:UVtools.Core.TimeUnits.Milliseconds">
<summary>
ms
</summary>
</member>
<member name="F:UVtools.Core.TimeUnits.Seconds">
<summary>
s
</summary>
</member>
<member name="T:UVtools.Core.IssuesOrderBy">
<summary>
Default order of issues to show on the UI list
</summary>
</member>
<member name="P:UVtools.Core.Extensions.DateTimeExtensions.Timestamp">
<summary>
Gets the Unix timestamp since Jan 1, 1970 UTC
</summary>
</member>
<member name="P:UVtools.Core.Extensions.DateTimeExtensions.TimestampSeconds">
<summary>
Gets the Unix timestamp in seconds since Jan 1, 1970 UTC
</summary>
</member>
<member name="P:UVtools.Core.Extensions.DateTimeExtensions.TimestampMinutes">
<summary>
Gets the Unix minutes in seconds since Jan 1, 1970 UTC
</summary>
</member>
<member name="M:UVtools.Core.Extensions.DateTimeExtensions.GetDateTimeFromTimestampSeconds(System.Double)">
<summary>
Gets the <see cref="T:System.DateTime"/> from a unix timestamp in seconds
</summary>
<param name="seconds"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.DateTimeExtensions.GetDateTimeFromTimestampMinutes(System.Double)">
<summary>
Gets the <see cref="T:System.DateTime"/> from a unix timestamp in minutes
</summary>
<param name="minutes"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.DateTimeExtensions.Age(System.DateTime)">
<summary>
Calculates the age in years of the current System.DateTime object today.
</summary>
<param name="birthDate">The date of birth</param>
<returns>Age in years today. 0 is returned for a future date of birth.</returns>
</member>
<member name="M:UVtools.Core.Extensions.DateTimeExtensions.Age(System.DateTime,System.DateTime)">
<summary>
Calculates the age in years of the current System.DateTime object on a later date.
</summary>
<param name="birthDate">The date of birth</param>
<param name="laterDate">The date on which to calculate the age.</param>
<returns>Age in years on a later day. 0 is returned as minimum.</returns>
</member>
<member name="F:UVtools.Core.Extensions.EmguExtensions.WhiteColor">
<summary>
White color: 255, 255, 255, 255
</summary>
</member>
<member name="F:UVtools.Core.Extensions.EmguExtensions.BlackColor">
<summary>
Black color: 0, 0, 0, 255
</summary>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.CreateBlankByteArray(Emgu.CV.Mat)">
<summary>
Create a byte array of size of this <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="mat"></param>
<returns>Blank byte array</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.New(Emgu.CV.Mat)">
<summary>
Creates a new empty <see cref="T:Emgu.CV.Mat"/> with same size and type of the source
</summary>
<param name="mat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.New(Emgu.CV.Mat,Emgu.CV.Structure.MCvScalar)">
<summary>
Creates a new empty <see cref="T:Emgu.CV.Mat"/> with same size and type of the source
</summary>
<param name="src"></param>
<param name="color"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.NewBlank(Emgu.CV.Mat)">
<summary>
Creates a new blanked (All zeros) <see cref="T:Emgu.CV.Mat"/> with same size and type of the source
</summary>
<param name="mat"></param>
<returns>Blanked <see cref="T:Emgu.CV.Mat"/></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.NewBlank(Emgu.CV.UMat)">
<summary>
Creates a new blanked (All zeros) <see cref="T:Emgu.CV.UMat"/> with same size and type of the source
</summary>
<param name="mat"></param>
<returns>Blanked <see cref="T:Emgu.CV.Mat"/></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.NewSetTo(Emgu.CV.Mat,Emgu.CV.Structure.MCvScalar)">
<summary>
Creates a <see cref="T:Emgu.CV.Mat"/> with same size and type of the source and set it to a color
</summary>
<param name="mat"></param>
<param name="color"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.InitMat(System.Drawing.Size,System.Int32,Emgu.CV.CvEnum.DepthType)">
<summary>
Creates a new <see cref="T:Emgu.CV.Mat"/> and zero it
</summary>
<param name="size"></param>
<param name="channels"></param>
<param name="depthType"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.InitUMat(System.Drawing.Size,System.Int32,Emgu.CV.CvEnum.DepthType)">
<summary>
Creates a new <see cref="T:Emgu.CV.UMat"/> and zero it
</summary>
<param name="size"></param>
<param name="channels"></param>
<param name="depthType"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.InitMat(System.Drawing.Size,Emgu.CV.Structure.MCvScalar,System.Int32,Emgu.CV.CvEnum.DepthType)">
<summary>
Creates a new <see cref="T:Emgu.CV.Mat"/> and set it to a <see cref="T:Emgu.CV.Structure.MCvScalar"/>
</summary>
<param name="size"></param>
<param name="color"></param>
<param name="channels"></param>
<param name="depthType"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.InitMats(System.UInt32)">
<summary>
Allocates a new array of mat's
</summary>
<param name="count">Array size</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.InitMats(System.UInt32,System.Drawing.Size)">
<summary>
Allocates a new array of mat 's
</summary>
<param name="count">Array size</param>
<param name="size">Image size to create, use <see cref="F:System.Drawing.Size.Empty"/> to create a empty Mat</param>
<returns>New mat array</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.ToGpuMat(Emgu.CV.Mat)">
<summary>
Create a new <see cref="T:Emgu.CV.Cuda.GpuMat"/> from <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="mat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetUnmanagedMemoryStream(Emgu.CV.Mat,System.IO.FileAccess)">
<summary>
Gets the mat bytes as <see cref="T:System.IO.UnmanagedMemoryStream"/>
</summary>
<param name="mat"></param>
<param name="accessMode"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetBytePointer(Emgu.CV.Mat)">
<summary>
Gets the byte pointer of this <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="mat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetDataByteSpan(Emgu.CV.Mat)">
<summary>
Gets the whole data span to manipulate or read pixels
</summary>
<param name="mat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetDataByteSpan(Emgu.CV.Mat,System.Int32,System.Int32)">
<summary>
Gets the whole data span to manipulate or read pixels
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetDataSpan2D``1(Emgu.CV.Mat)">
<summary>
Gets the whole data span to manipulate or read pixels, use this when possibly using ROI
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetDataByteSpan2D(Emgu.CV.Mat)">
<summary>
Gets the whole data span to manipulate or read pixels, use this when possibly using ROI
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetDataSpan``1(Emgu.CV.Mat,System.Int32,System.Int32)">
<summary>
Gets the data span to manipulate or read pixels given a length and offset
</summary>
<typeparam name="T"></typeparam>
<param name="mat"></param>
<param name="length"></param>
<param name="offset"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetPixelSpan``1(Emgu.CV.Mat,System.Int32,System.Int32)">
<summary>
Gets a single pixel span to manipulate or read pixels
</summary>
<typeparam name="T"></typeparam>
<param name="mat"></param>
<param name="x"></param>
<param name="y"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetPixelSpan``1(Emgu.CV.Mat,System.Int32)">
<summary>
Gets a single pixel span to manipulate or read pixels
</summary>
<typeparam name="T"></typeparam>
<param name="mat"></param>
<param name="pos"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetRowSpan``1(Emgu.CV.Mat,System.Int32,System.Int32,System.Int32)">
<summary>
Gets a row span to manipulate or read pixels
</summary>
<typeparam name="T"></typeparam>
<param name="mat"></param>
<param name="y"></param>
<param name="length"></param>
<param name="offset"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetColSpan``1(Emgu.CV.Mat,System.Int32,System.Int32,System.Int32)">
<summary>
Gets a col span to manipulate or read pixels
</summary>
<typeparam name="T"></typeparam>
<param name="mat"></param>
<param name="x"></param>
<param name="length"></param>
<param name="offset"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FillSpan(Emgu.CV.Mat,System.Int32@,System.Int32,System.Byte,System.Byte)">
<summary>
Fill a mat span with a color
</summary>
<param name="mat">Mat to fill</param>
<param name="startPosition">Start position, this reference will increment by the <paramref name="length"/></param>
<param name="length">Length to fill</param>
<param name="color">Color to fill with</param>
<param name="colorFillMinThreshold">Ignore and fill to <paramref name="length"/> if <paramref name="color"/> is less than the threshold value</param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FillSpan(Emgu.CV.Mat,System.Int32,System.Int32,System.Int32,System.Byte,System.Byte)">
<summary>
Fill a mat span with a color
</summary>
<param name="mat">Mat to fill</param>
<param name="x"></param>
<param name="y"></param>
<param name="length">Length to fill</param>
<param name="color">Color to fill with</param>
<param name="colorFillMinThreshold">Ignore and set to <paramref name="length"/> if <paramref name="color"/> is less than the threshold value</param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FillSpan(Emgu.CV.Mat,System.Drawing.Point,System.Int32,System.Byte,System.Byte)">
<summary>
Fill a mat span with a color
</summary>
<param name="mat">Mat to fill</param>
<param name="position"></param>
<param name="length">Length to fill</param>
<param name="color">Color to fill with</param>
<param name="colorFillMinThreshold">Ignore and fill to <paramref name="length"/> if <paramref name="color"/> is less than the threshold value</param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetRealStep(Emgu.CV.Mat)">
<summary>
.Step return the original Mat step, if ROI step still from original matrix which lead to errors.
Use this to get the real step size
</summary>
<param name="mat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetLength(Emgu.CV.Mat)">
<summary>
Gets the total length of this <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="mat"></param>
<returns>The total length of this <see cref="T:Emgu.CV.Mat"/></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetPixelPos(Emgu.CV.Mat,System.Int32,System.Int32)">
<summary>
Gets a pixel index position on a span given X and Y
</summary>
<param name="mat"></param>
<param name="x">X coordinate</param>
<param name="y">Y coordinate</param>
<returns>The pixel index position</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetPixelPos(Emgu.CV.Mat,System.Drawing.Point)">
<summary>
Gets a pixel index position on a span given X and Y
</summary>
<param name="mat"></param>
<param name="point">X and Y Location</param>
<returns>The pixel index position</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetBytes(Emgu.CV.Mat)">
<summary>
Gets a byte array copy of this <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="mat"></param>
<returns>Byte array </returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetByte(Emgu.CV.Mat,System.Int32)">
<summary>
Gets a byte pixel at a position
</summary>
<param name="mat"></param>
<param name="pos"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetByte(Emgu.CV.Mat,System.Int32,System.Int32)">
<summary>
Gets a byte pixel at a position
</summary>
<param name="mat"></param>
<param name="x"></param>
<param name="y"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetByte(Emgu.CV.Mat,System.Drawing.Point)">
<summary>
Gets a byte pixel at a position
</summary>
<param name="mat"></param>
<param name="pos"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.SetByte(Emgu.CV.Mat,System.Int32,System.Byte)">
<summary>
Sets a byte pixel at a position
</summary>
<param name="mat"></param>
<param name="pixel"></param>
<param name="value"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.SetByte(Emgu.CV.Mat,System.Int32,System.Byte[])">
<summary>
Sets a byte pixel at a position
</summary>
<param name="mat"></param>
<param name="pixel"></param>
<param name="value"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.SetByte(Emgu.CV.Mat,System.Int32,System.Int32,System.Byte)">
<summary>
Sets a byte pixel at a position
</summary>
<param name="mat"></param>
<param name="x"></param>
<param name="y"></param>
<param name="value"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.SetByte(Emgu.CV.Mat,System.Int32,System.Int32,System.Byte[])">
<summary>
Sets a byte pixel at a position
</summary>
<param name="mat"></param>
<param name="x"></param>
<param name="y"></param>
<param name="value"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.SetBytes(Emgu.CV.Mat,System.Byte[])">
<summary>
Sets bytes
</summary>
<param name="mat"></param>
<param name="value"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetPngByes(Emgu.CV.IInputArray)">
<summary>
Gets PNG byte array
</summary>
<param name="mat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.CopyCenterToCenter(Emgu.CV.Mat,System.Drawing.Size,Emgu.CV.Mat)">
<summary>
Copy a region from <see cref="T:Emgu.CV.Mat"/> to center of other <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="src">Source <see cref="T:Emgu.CV.Mat"/> to be copied to</param>
<param name="size">Size of the center offset</param>
<param name="dst">Target <see cref="T:Emgu.CV.Mat"/> to paste the <paramref name="src"/></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.CopyRegionToCenter(Emgu.CV.Mat,System.Drawing.Rectangle,Emgu.CV.Mat)">
<summary>
Copy a region from <see cref="T:Emgu.CV.Mat"/> to center of other <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="src">Source <see cref="T:Emgu.CV.Mat"/> to be copied to</param>
<param name="region">Region to copy</param>
<param name="dst">Target <see cref="T:Emgu.CV.Mat"/> to paste the <paramref name="src"/></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.CopyToCenter(Emgu.CV.Mat,Emgu.CV.Mat)">
<summary>
Copy a <see cref="T:Emgu.CV.Mat"/> to center of other <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="src">Source <see cref="T:Emgu.CV.Mat"/> to be copied to</param>
<param name="dst">Target <see cref="T:Emgu.CV.Mat"/> to paste the <paramref name="src"/></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Roi(Emgu.CV.Mat,System.Drawing.Rectangle)">
<summary>
Gets a Roi, but return source when roi is empty or have same size as source
</summary>
<param name="mat"></param>
<param name="roi"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Roi(Emgu.CV.Mat,System.Drawing.Size)">
<summary>
Gets a Roi at x=0 and y=0 given a size, but return source when roi is empty or have same size as source
</summary>
<param name="mat"></param>
<param name="size"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Roi(Emgu.CV.Mat,Emgu.CV.Mat)">
<summary>
Gets a Roi from a mat size, but return source when roi is empty or have same size as source
</summary>
<param name="mat"></param>
<param name="fromMat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.RoiFromCenter(Emgu.CV.Mat,System.Drawing.Size)">
<summary>
Gets a Roi from center, but return source when have same size as source
</summary>
<param name="mat"></param>
<param name="size"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.NewMatFromCenterRoi(Emgu.CV.Mat,System.Drawing.Size,System.Drawing.Rectangle)">
<summary>
Gets a new mat obtained from it center at a target size and roi
</summary>
<param name="mat"></param>
<param name="targetSize"></param>
<param name="roi"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.IsZeroed(Emgu.CV.Mat,System.Byte,System.Int32,System.Int32)">
<summary>
Gets if a <see cref="T:Emgu.CV.Mat"/> is all zeroed by a threshold
</summary>
<param name="mat"></param>
<param name="threshold">Pixel brightness threshold</param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindFirstNegativePixel(Emgu.CV.Mat,System.Int32,System.Int32)">
<summary>
Finds the first negative (Black) pixel
</summary>
<param name="mat"></param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns>Pixel position in the span, or -1 if not found</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindFirstPositivePixel(Emgu.CV.Mat,System.Int32,System.Int32)">
<summary>
Finds the first positive pixel
</summary>
<param name="mat"></param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns>Pixel position in the span, or -1 if not found</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindFirstPixelEqualTo(Emgu.CV.Mat,System.Byte,System.Int32,System.Int32)">
<summary>
Finds the first pixel that is <paramref name="value"/>
</summary>
<param name="mat"></param>
<param name="value"></param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns>Pixel position in the span, or -1 if not found</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindFirstPixelLessThan(Emgu.CV.Mat,System.Byte,System.Int32,System.Int32)">
<summary>
Finds the first pixel that is at less than <paramref name="value"/>
</summary>
<param name="mat"></param>
<param name="value"></param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns>Pixel position in the span, or -1 if not found</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindFirstPixelEqualOrLessThan(Emgu.CV.Mat,System.Byte,System.Int32,System.Int32)">
<summary>
Finds the first pixel that is at less or equal than <paramref name="value"/>
</summary>
<param name="mat"></param>
<param name="value"></param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns>Pixel position in the span, or -1 if not found</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindFirstPixelGreaterThan(Emgu.CV.Mat,System.Byte,System.Int32,System.Int32)">
<summary>
Finds the first pixel that is at greater than <paramref name="value"/>
</summary>
<param name="mat"></param>
<param name="value"></param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns>Pixel position in the span, or -1 if not found</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindFirstPixelEqualOrGreaterThan(Emgu.CV.Mat,System.Byte,System.Int32,System.Int32)">
<summary>
Finds the first pixel that is at equal or greater than <paramref name="value"/>
</summary>
<param name="mat"></param>
<param name="value"></param>
<param name="startPos">Start pixel position</param>
<param name="length">Pixel span length</param>
<returns>Pixel position in the span, or -1 if not found</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Rotate(Emgu.CV.Mat,System.Double,System.Drawing.Size,System.Double)">
<summary>
Rotates a Mat by an angle while keeping the image size
</summary>
<param name="src"></param>
<param name="angle">Angle in degrees to rotate</param>
<param name="newSize"></param>
<param name="scale"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Rotate(Emgu.CV.Mat,Emgu.CV.Mat,System.Double,System.Drawing.Size,System.Double)">
<summary>
Rotates a Mat by an angle while keeping the image size
</summary>
<param name="src"></param>
<param name="dst"></param>
<param name="angle"></param>
<param name="newSize"></param>
<param name="scale"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.RotateAdjustBounds(Emgu.CV.Mat,System.Double,System.Double)">
<summary>
Rotates a Mat by an angle while adjusting bounds to fit the rotated content
</summary>
<param name="src"></param>
<param name="angle"></param>
<param name="scale"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.RotateAdjustBounds(Emgu.CV.Mat,Emgu.CV.Mat,System.Double,System.Double)">
<summary>
Rotates a Mat by an angle while adjusting bounds to fit the rotated content
</summary>
<param name="src"></param>
<param name="dst"></param>
<param name="angle"></param>
<param name="scale"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.TransformFromCenter(Emgu.CV.Mat,System.Double,System.Double,System.Double,System.Double,System.Drawing.Size,Emgu.CV.CvEnum.Inter)">
<summary>
Scale image from it center, preserving src bounds
https://stackoverflow.com/a/62543674/933976
</summary>
<param name="src"><see cref="T:Emgu.CV.Mat"/> to transform</param>
<param name="xScale">X scale factor</param>
<param name="yScale">Y scale factor</param>
<param name="xTrans">X translation</param>
<param name="yTrans">Y translation</param>
<param name="dstSize">Destination size</param>
<param name="interpolation">Interpolation mode</param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Resize(Emgu.CV.Mat,System.Double,Emgu.CV.CvEnum.Inter)">
<summary>
Resize source mat proportional to a scale
</summary>
<param name="src"></param>
<param name="scale"></param>
<param name="interpolation"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.CorrectThickness(System.Int32)">
<summary>
Correct openCV thickness which always results larger than specified
</summary>
<param name="thickness">Thickness to correct</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.DrawRotatedSquare(Emgu.CV.Mat,System.Int32,System.Drawing.Point,Emgu.CV.Structure.MCvScalar,System.Int32,System.Int32,Emgu.CV.CvEnum.LineType)">
<summary>
Draw a rotated square around a center point
</summary>
<param name="src"></param>
<param name="size"></param>
<param name="center"></param>
<param name="color"></param>
<param name="angle"></param>
<param name="thickness"></param>
<param name="lineType"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.DrawRotatedRectangle(Emgu.CV.Mat,System.Drawing.Size,System.Drawing.Point,Emgu.CV.Structure.MCvScalar,System.Int32,System.Int32,Emgu.CV.CvEnum.LineType)">
<summary>
Draw a rotated rectangle around a center point
</summary>
<param name="src"></param>
<param name="size"></param>
<param name="center"></param>
<param name="color"></param>
<param name="angle"></param>
<param name="thickness"></param>
<param name="lineType"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.DrawPolygon(Emgu.CV.Mat,System.Int32,System.Int32,System.Drawing.Point,Emgu.CV.Structure.MCvScalar,System.Double,System.Int32,Emgu.CV.CvEnum.LineType,System.Nullable{Emgu.CV.CvEnum.FlipType})">
<summary>
Draw a polygon given number of sides and length
</summary>
<param name="src"></param>
<param name="sides">Number of polygon sides, Special: use 1 to draw a line and >= 100 to draw a native OpenCV circle</param>
<param name="radius">Radius</param>
<param name="center">Center position</param>
<param name="color"></param>
<param name="startingAngle"></param>
<param name="thickness"></param>
<param name="lineType"></param>
<param name="flip"></param>
</member>
<member name="F:UVtools.Core.Extensions.EmguExtensions.PutTextLineAlignment.None">
<summary>
Left aligned without trimming, openCV default call
</summary>
</member>
<member name="F:UVtools.Core.Extensions.EmguExtensions.PutTextLineAlignment.Left">
<summary>
Left aligned and trimmed
</summary>
</member>
<member name="F:UVtools.Core.Extensions.EmguExtensions.PutTextLineAlignment.Center">
<summary>
Center aligned and trimmed
</summary>
</member>
<member name="F:UVtools.Core.Extensions.EmguExtensions.PutTextLineAlignment.Right">
<summary>
Right aligned and trimmed
</summary>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.PutTextExtended(Emgu.CV.IInputOutputArray,System.String,System.Drawing.Point,Emgu.CV.CvEnum.FontFace,System.Double,Emgu.CV.Structure.MCvScalar,System.Int32,System.Int32,Emgu.CV.CvEnum.LineType,System.Boolean,UVtools.Core.Extensions.EmguExtensions.PutTextLineAlignment)">
<summary>
Extended OpenCV PutText to accepting line breaks and line alignment
</summary>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.PutTextRotated(Emgu.CV.Mat,System.String,System.Drawing.Point,Emgu.CV.CvEnum.FontFace,System.Double,Emgu.CV.Structure.MCvScalar,System.Int32,Emgu.CV.CvEnum.LineType,System.Boolean,UVtools.Core.Extensions.EmguExtensions.PutTextLineAlignment,System.Double)">
<summary>
Extended OpenCV PutText to accepting line breaks, line alignment and rotation
</summary>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.PutTextRotated(Emgu.CV.Mat,System.String,System.Drawing.Point,Emgu.CV.CvEnum.FontFace,System.Double,Emgu.CV.Structure.MCvScalar,System.Int32,System.Int32,Emgu.CV.CvEnum.LineType,System.Boolean,UVtools.Core.Extensions.EmguExtensions.PutTextLineAlignment,System.Double)">
<summary>
Extended OpenCV PutText to accepting line breaks, line alignment and rotation
</summary>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindContours(Emgu.CV.IInputOutputArray,Emgu.CV.CvEnum.RetrType,Emgu.CV.CvEnum.ChainApproxMethod,System.Drawing.Point)">
<summary>
Retrieves contours from the binary image as a contour tree. The pointer firstContour is filled by the function. It is provided as a convenient way to obtain the hierarchy value as int[,].
The function modifies the source image content
</summary>
<param name="mat">The source 8-bit single channel image. Non-zero pixels are treated as 1s, zero pixels remain 0s - that is image treated as binary. To get such a binary image from grayscale, one may use cvThreshold, cvAdaptiveThreshold or cvCanny. The function modifies the source image content</param>
<param name="mode">Retrieval mode</param>
<param name="method">Approximation method (for all the modes, except CV_RETR_RUNS, which uses built-in approximation). </param>
<param name="offset">Offset, by which every contour point is shifted. This is useful if the contours are extracted from the image ROI and then they should be analyzed in the whole image context</param>
<returns>The contour hierarchy</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.FindContours(Emgu.CV.IInputOutputArray,System.Int32[0:,0:]@,Emgu.CV.CvEnum.RetrType,Emgu.CV.CvEnum.ChainApproxMethod,System.Drawing.Point)">
<summary>
Retrieves contours from the binary image as a contour tree. The pointer firstContour is filled by the function. It is provided as a convenient way to obtain the hierarchy value as int[,].
The function modifies the source image content
</summary>
<param name="mat">The source 8-bit single channel image. Non-zero pixels are treated as 1s, zero pixels remain 0s - that is image treated as binary. To get such a binary image from grayscale, one may use cvThreshold, cvAdaptiveThreshold or cvCanny. The function modifies the source image content</param>
<param name="hierarchy">The contour hierarchy</param>
<param name="mode">Retrieval mode</param>
<param name="method">Approximation method (for all the modes, except CV_RETR_RUNS, which uses built-in approximation). </param>
<param name="offset">Offset, by which every contour point is shifted. This is useful if the contours are extracted from the image ROI and then they should be analyzed in the whole image context</param>
<returns>Detected contours. Each contour is stored as a vector of points.</returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Skeletonize(Emgu.CV.Mat,System.Int32@,System.Drawing.Size,Emgu.CV.CvEnum.ElementShape)">
<summary>
Determine the area (i.e. total number of pixels in the image),
initialize the output skeletonized image, and construct the
morphological structuring element
</summary>
<param name="src"></param>
<param name="iterations">Number of iterations required to perform the skeletoize</param>
<param name="ksize"></param>
<param name="elementShape"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.Skeletonize(Emgu.CV.Mat,System.Drawing.Size,Emgu.CV.CvEnum.ElementShape)">
<summary>
Determine the area (i.e. total number of pixels in the image),
initialize the output skeletonized image, and construct the
morphological structuring element
</summary>
<param name="src"></param>
<param name="ksize"></param>
<param name="elementShape"></param>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.GetDynamicKernel(System.Int32@,Emgu.CV.CvEnum.ElementShape)">
<summary>
Reduces iterations to 1 and generate a kernel to match the iterations effect
</summary>
<param name="iterations"></param>
<param name="elementShape"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.EmguExtensions.DisposeIfSubMatrix(Emgu.CV.Mat)">
<summary>
Dispose this <see cref="T:Emgu.CV.Mat"/> if it's a sub matrix / roi
</summary>
<param name="mat">Mat to dispose</param>
</member>
<member name="M:UVtools.Core.Extensions.FileStreamExtensions.ReadToEnd(System.IO.FileStream)">
<summary>
Read from current position to the end of the file
</summary>
<param name="fs"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.FileStreamExtensions.SeekDoWorkAndRewind(System.IO.FileStream,System.Int64,System.Action)">
<summary>
Seek to a position, do work and rewind to initial position
</summary>
<param name="fs"></param>
<param name="action"></param>
<param name="offset"></param>
</member>
<member name="M:UVtools.Core.Extensions.PathExtensions.GetTemporaryDirectory(System.String,System.Boolean)">
<summary>
Gets a temporary directory path
</summary>
<param name="prepend">Prepend a string to temporary directory name</param>
<param name="createDirectory">True to create that directory, otherwise false</param>
<returns>The temporary directory path</returns>
</member>
<member name="M:UVtools.Core.Extensions.PathExtensions.GetTemporaryDirectory(System.Boolean)">
<summary>
Gets a temporary directory path
</summary>
<param name="createDirectory">True to create that directory, otherwise false</param>
<returns>The temporary directory path</returns>
</member>
<member name="M:UVtools.Core.Extensions.PathExtensions.GetTemporaryFilePathWithExtension(System.String,System.String)">
<summary>
Gets a temporary file with a extension and a prepend string
</summary>
<param name="extension">Extension name without the dot (.)</param>
<param name="prepend">Optional prepend file name</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.SizeExtensions.HaveZero(System.Drawing.Size)">
<summary>
Gets if this size have a zero value on width or height
</summary>
<param name="size"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.SizeExtensions.Exchange(System.Drawing.Size)">
<summary>
Exchange width with height
</summary>
<param name="size"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.SizeExtensions.HaveZero(System.Drawing.SizeF)">
<summary>
Gets if this size have a zero value on width or height
</summary>
<param name="size"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Extensions.StreamExtensions.ToArray(System.IO.Stream)">
<summary>
Converts stream into byte array
</summary>
<param name="stream">Input</param>
<returns>Byte array data</returns>
</member>
<member name="M:UVtools.Core.Extensions.StringExtensions.FirstCharToUpper(System.String)">
<summary>
Upper the first character in a string
</summary>
<param name="input">Input string</param>
<returns>Modified string with fist character upper</returns>
</member>
<member name="M:UVtools.Core.Extensions.StringExtensions.Convert``1(System.String)">
<summary>
Converts a string into a target type
</summary>
<typeparam name="T">Target type to convert into</typeparam>
<param name="input">Value</param>
<returns>Converted value into target type</returns>
</member>
<member name="M:UVtools.Core.Extensions.TypeExtensions.CreateInstance(System.Type,System.Object[])">
<summary>
Creates a new instance of this type
</summary>
<param name="type"></param>
<param name="paramArray"></param>
</member>
<member name="M:UVtools.Core.Extensions.TypeExtensions.CreateInstance``1(System.Type,System.Object[])">
<summary>
Creates a new instance of this type
</summary>
<typeparam name="T">Target type</typeparam>
<param name="type"></param>
<param name="paramArray"></param>
<returns>New instance of {T}</returns>
</member>
<member name="F:UVtools.Core.Extensions.UnitExtensions.InchToMillimeter">
<summary>
1 inch to 1 mm
</summary>
</member>
<member name="F:UVtools.Core.Extensions.UnitExtensions.MillimeterToInch">
<summary>
1 mm to 1 inch
</summary>
</member>
<member name="T:UVtools.Core.Extensions.ZipArchiveExtensions.Overwrite">
<summary>
Used to specify what our overwrite policy
is for files we are extracting.
</summary>
</member>
<member name="T:UVtools.Core.Extensions.ZipArchiveExtensions.ArchiveAction">
<summary>
Used to identify what we will do if we are
trying to create a zip file and it already
exists.
</summary>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.ImprovedExtractToDirectory(System.String,System.String,UVtools.Core.Extensions.ZipArchiveExtensions.Overwrite)">
<summary>
Unzips the specified file to the given folder in a safe
manner. This plans for missing paths and existing files
and handles them gracefully.
</summary>
<param name="sourceArchiveFileName">
The name of the zip file to be extracted
</param>
<param name="destinationDirectoryName">
The directory to extract the zip file to
</param>
<param name="overwriteMethod">
Specifies how we are going to handle an existing file.
The default is IfNewer.
</param>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.ImprovedExtractToDirectory(System.IO.Compression.ZipArchive,System.String,UVtools.Core.Extensions.ZipArchiveExtensions.Overwrite)">
<summary>
Unzips the specified file to the given folder in a safe
manner. This plans for missing paths and existing files
and handles them gracefully.
</summary>
<param name="archive">
The zip file to be extracted
</param>
<param name="destinationDirectoryName">
The directory to extract the zip file to
</param>
<param name="overwriteMethod">
Specifies how we are going to handle an existing file.
The default is IfNewer.
</param>
<returns>The number of extracted files</returns>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.ImprovedExtractToFile(System.IO.Compression.ZipArchiveEntry,System.String,System.Boolean,UVtools.Core.Extensions.ZipArchiveExtensions.Overwrite)">
<summary>
Safely extracts a single file from a zip file
</summary>
<param name="entry">
The zip entry we are pulling the file from
</param>
<param name="destinationPath">
The root of where the file is going
</param>
<param name="preserveFullName">True to preserve full name and create all directories up to the file, otherwise false to extract the file just to <paramref name="destinationPath"/></param>
<param name="overwriteMethod">
Specifies how we are going to handle an existing file.
The default is Overwrite.IfNewer.
</param>
<returns>The extracted file path</returns>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.AddToArchive(System.String,System.Collections.Generic.List{System.String},UVtools.Core.Extensions.ZipArchiveExtensions.ArchiveAction,UVtools.Core.Extensions.ZipArchiveExtensions.Overwrite,System.IO.Compression.CompressionLevel)">
<summary>
Allows you to add files to an archive, whether the archive
already exists or not
</summary>
<param name="archiveFullName">
The name of the archive to you want to add your files to
</param>
<param name="files">
A set of file names that are to be added
</param>
<param name="action">
Specifies how we are going to handle an existing archive
</param>
<param name="fileOverwrite"></param>
<param name="compression">
Specifies what type of compression to use - defaults to Optimal
</param>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.GetPutFile(System.IO.Compression.ZipArchive,System.String)">
<summary>
Get or put a file into archive
</summary>
<param name="input"><see cref="T:System.IO.Compression.ZipArchive"/></param>
<param name="filename">Filename to create</param>
<returns>Created <see cref="T:System.IO.Compression.ZipArchiveEntry"/></returns>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.PutFileContent(System.IO.Compression.ZipArchive,System.String,System.String,System.IO.Compression.ZipArchiveMode)">
<summary>
Create or update a file into archive and write content to it
</summary>
<param name="input"><see cref="T:System.IO.Compression.ZipArchive"/></param>
<param name="filename">Filename to create</param>
<param name="content">Content to write</param>
<param name="mode"></param>
<returns>Created <see cref="T:System.IO.Compression.ZipArchiveEntry"/></returns>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.PutFileContent(System.IO.Compression.ZipArchive,System.String,System.Byte[],System.IO.Compression.ZipArchiveMode)">
<summary>
Create or update a file into archive and write content to it
</summary>
<param name="input"><see cref="T:System.IO.Compression.ZipArchive"/></param>
<param name="filename">Filename to create</param>
<param name="content">Content to write</param>
<param name="mode"></param>
<returns>Created <see cref="T:System.IO.Compression.ZipArchiveEntry"/></returns>
</member>
<member name="M:UVtools.Core.Extensions.ZipArchiveExtensions.PutFileContent(System.IO.Compression.ZipArchive,System.String,System.IO.Stream,System.IO.Compression.ZipArchiveMode)">
<summary>
Create or update a file into archive and write content to it
</summary>
<param name="input"><see cref="T:System.IO.Compression.ZipArchive"/></param>
<param name="filename">Filename to create</param>
<param name="content">Content to write</param>
<param name="mode"></param>
<returns>Created <see cref="T:System.IO.Compression.ZipArchiveEntry"/></returns>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.Magic">
<summary>
Gets a magic number identifying the file type.
0x12fd_0019 for cbddlp
0x12fd_0086 for ctb
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.Version">
<summary>
Gets the software version
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.BedSizeX">
<summary>
Gets dimensions of the printers X output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.BedSizeY">
<summary>
Gets dimensions of the printers Y output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.BedSizeZ">
<summary>
Gets dimensions of the printers Z output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.TotalHeightMilimeter">
<summary>
Gets the height of the model described by this file, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.LayerHeightMilimeter">
<summary>
Gets the layer height setting used at slicing, in millimeters. Actual height used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.LayerExposureSeconds">
<summary>
Gets the exposure time setting used at slicing, in seconds, for normal (non-bottom) layers, respectively. Actual time used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.BottomExposureSeconds">
<summary>
Gets the exposure time setting used at slicing, in seconds, for bottom layers. Actual time used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.LightOffDelay">
<summary>
Gets the light off time setting used at slicing, for normal layers, in seconds. Actual time used by the machine is in the layer table. Note that light_off_time_s appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.BottomLayersCount">
<summary>
Gets number of layers configured as "bottom." Note that this field appears in both the file header and ExtConfig..
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.ResolutionX">
<summary>
Gets the printer resolution along X axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.ResolutionY">
<summary>
Gets the printer resolution along Y axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.PreviewLargeOffsetAddress">
<summary>
Gets the file offsets of ImageHeader records describing the larger preview images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.LayersDefinitionOffsetAddress">
<summary>
Gets the file offset of a table of LayerHeader records giving parameters for each printed layer.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.LayerCount">
<summary>
Gets the number of records in the layer table for the first level set. In ctb files, thats equivalent to the total number of records, but records may be multiplied in antialiased cbddlp files.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.PreviewSmallOffsetAddress">
<summary>
Gets the file offsets of ImageHeader records describing the smaller preview images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.PrintTime">
<summary>
Gets the estimated duration of print, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.ProjectorType">
<summary>
Gets the records whether this file was generated assuming normal (0) or mirrored (1) image projection. LCD printers are "mirrored" for this purpose.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.PrintParametersOffsetAddress">
<summary>
Gets the print parameters table offset
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.PrintParametersSize">
<summary>
Gets the print parameters table size in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.AntiAliasLevel">
<summary>
Gets the number of times each layer image is repeated in the file.
This is used to implement antialiasing in cbddlp files. When greater than 1,
the layer table will actually contain layer_table_count * level_set_count entries.
See the section on antialiasing for details.
1 for ctb
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.LightPWM">
<summary>
Gets the PWM duty cycle for the UV illumination source on normal levels, respectively.
This appears to be an 8-bit quantity where 0xFF is fully on and 0x00 is fully off.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.BottomLightPWM">
<summary>
Gets the PWM duty cycle for the UV illumination source on bottom levels, respectively.
This appears to be an 8-bit quantity where 0xFF is fully on and 0x00 is fully off.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.EncryptionKey">
<summary>
Gets the key used to encrypt layer data, or 0 if encryption is not used.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.SlicerOffset">
<summary>
Gets the slicer tablet offset
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Header.SlicerSize">
<summary>
Gets the slicer table size in bytes
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.BottomLiftHeight">
<summary>
Gets the distance to lift the build platform away from the vat after bottom layers, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.BottomLiftSpeed">
<summary>
Gets the speed at which to lift the build platform away from the vat after bottom layers, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.LiftHeight">
<summary>
Gets the distance to lift the build platform away from the vat after normal layers, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.LiftSpeed">
<summary>
Gets the speed at which to lift the build platform away from the vat after normal layers, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.RetractSpeed">
<summary>
Gets the speed to use when the build platform re-approaches the vat after lift, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.VolumeMl">
<summary>
Gets the estimated required resin, measured in milliliters. The volume number is derived from the model.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.WeightG">
<summary>
Gets the estimated grams, derived from volume using configured factors for density.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.CostDollars">
<summary>
Gets the estimated cost based on currency unit the user had configured. Derived from volume using configured factors for density and cost.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.BottomLightOffDelay">
<summary>
Gets the light off time setting used at slicing, for bottom layers, in seconds. Actual time used by the machine is in the layer table. Note that light_off_time_s appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.LightOffDelay">
<summary>
Gets the light off time setting used at slicing, for normal layers, in seconds. Actual time used by the machine is in the layer table. Note that light_off_time_s appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.PrintParameters.BottomLayerCount">
<summary>
Gets number of layers configured as "bottom." Note that this field appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.SlicerInfo.MachineNameAddress">
<summary>
Gets the machine name offset to a string naming the machine type, and its length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.SlicerInfo.MachineNameSize">
<summary>
Gets the machine size in bytes
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.SlicerInfo.PerLayerSettings">
<summary>
Gets the parameter used to control encryption.
Not totally understood. 0/8 for cbddlp files, 0xF (15) for ctb files, 0x2000000F (536870927) for v3 ctb and 1073741839 for v4 ctb files to allow per layer parameters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.SlicerInfo.ModifiedTimestampMinutes">
<summary>
Gets the minutes since Jan 1, 1970 UTC
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.SlicerInfo.AntiAliasLevel">
<summary>
Gets the user-selected antialiasing level. For cbddlp files this will match the level_set_count. For ctb files, this number is essentially arbitrary.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.SlicerInfo.SoftwareVersion">
<summary>
Gets a version of software that generated this file, encoded with major, minor, and patch release in bytes starting from the MSB down.
(No provision is made to name the software being used, so this assumes that only one software package can generate the files.
Probably best to hardcode it at 0x01060300.)
</summary>17170480
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.SlicerInfo.MachineName">
<summary>
Gets the machine name. string is not nul-terminated.
The character encoding is currently unknown — all observed files in the wild use 7-bit ASCII characters only.
Note that the machine type here is set in the software profile, and is not the name the user assigned to the machine.
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.ChituboxFile.Preview">
<summary>
The files contain two preview images.
These are shown on the printer display when choosing which file to print, sparing the poor printer from needing to render a 3D image from scratch.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Preview.ResolutionX">
<summary>
Gets the X dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Preview.ResolutionY">
<summary>
Gets the Y dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Preview.ImageOffset">
<summary>
Gets the image offset of the encoded data blob.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.Preview.ImageLength">
<summary>
Gets the image length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.LayerDef.PositionZ">
<summary>
Gets the build platform Z position for this layer, measured in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.LayerDef.ExposureTime">
<summary>
Gets the exposure time for this layer, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.LayerDef.LightOffSeconds">
<summary>
Gets how long to keep the light off after exposing this layer, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.LayerDef.DataAddress">
<summary>
Gets the layer image offset to encoded layer data, and its length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.LayerDef.DataSize">
<summary>
Gets the layer image length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.LayerDefEx.LayerDef">
<summary>
Gets a copy of layer data definition
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.ChituboxFile.LayerDefEx.TotalSize">
<summary>
Gets the total size of ctbImageInfo and Image data
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CTBEncryptedFile.SlicerSettings.ChecksumValue">
<summary>
Checksum of unix timestamp
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.CTBEncryptedFile.Preview">
<summary>
The files contain two preview images.
These are shown on the printer display when choosing which file to print, sparing the poor printer from needing to render a 3D image from scratch.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CTBEncryptedFile.Preview.ResolutionX">
<summary>
Gets the X dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CTBEncryptedFile.Preview.ResolutionY">
<summary>
Gets the Y dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CTBEncryptedFile.Preview.ImageOffset">
<summary>
Gets the image offset of the encoded data blob.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CTBEncryptedFile.Preview.ImageLength">
<summary>
Gets the image length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Header.HeaderSize">
<summary>
Gets the size of the header
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Header.HeaderValue">
<summary>
Gets the header name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Header.PrinterModelSize">
<summary>
Gets the size of the printer model
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Header.PrinterModelArray">
<summary>
Gets the printer model
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Header.LayerCount">
<summary>
Gets the number of records in the layer table
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Header.ResolutionX">
<summary>
Gets the printer resolution along X axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Header.ResolutionY">
<summary>
Gets the printer resolution along Y axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Footer.FooterSize">
<summary>
Gets the size of the header
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPFile.Footer.FooterValue">
<summary>
Gets the header name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPv1File.Header.HeaderSize">
<summary>
Gets the size of the header
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPv1File.Header.HeaderValue">
<summary>
Gets the header name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPv1File.Header.LayerCount">
<summary>
Gets the number of records in the layer table
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPv1File.Header.ResolutionX">
<summary>
Gets the printer resolution along X axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPv1File.Header.ResolutionY">
<summary>
Gets the printer resolution along Y axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPv1File.Footer.FooterSize">
<summary>
Gets the size of the header
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.CXDLPv1File.Footer.FooterValue">
<summary>
Gets the header name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.Magic">
<summary>
Gets a magic number identifying the file type.
0xBD3C7AC8 for fdg
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.Version">
<summary>
Gets the software version
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LayerCount">
<summary>
Gets the number of records in the layer table
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BottomLayersCount">
<summary>
Gets number of layers configured as "bottom." Note that this field appears in both the file header and ExtConfig..
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.ProjectorType">
<summary>
Gets the records whether this file was generated assuming normal (0) or mirrored (1) image projection. LCD printers are "mirrored" for this purpose.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.ResolutionX">
<summary>
Gets the printer resolution along X axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.ResolutionY">
<summary>
Gets the printer resolution along Y axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LayerHeightMilimeter">
<summary>
Gets the layer height setting used at slicing, in millimeters. Actual height used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LayerExposureSeconds">
<summary>
Gets the exposure time setting used at slicing, in seconds, for normal (non-bottom) layers, respectively. Actual time used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BottomExposureSeconds">
<summary>
Gets the exposure time setting used at slicing, in seconds, for bottom layers. Actual time used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.PreviewLargeOffsetAddress">
<summary>
Gets the file offsets of ImageHeader records describing the larger preview images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.PreviewSmallOffsetAddress">
<summary>
Gets the file offsets of ImageHeader records describing the smaller preview images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LayersDefinitionOffsetAddress">
<summary>
Gets the file offset of a table of LayerHeader records giving parameters for each printed layer.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.PrintTime">
<summary>
Gets the estimated duration of print, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.AntiAliasLevel">
<summary>
?
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LightPWM">
<summary>
Gets the PWM duty cycle for the UV illumination source on normal levels, respectively.
This appears to be an 8-bit quantity where 0xFF is fully on and 0x00 is fully off.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BottomLightPWM">
<summary>
Gets the PWM duty cycle for the UV illumination source on bottom levels, respectively.
This appears to be an 8-bit quantity where 0xFF is fully on and 0x00 is fully off.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.OverallHeightMilimeter">
<summary>
Gets the height of the model described by this file, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BedSizeX">
<summary>
Gets dimensions of the printers X output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BedSizeY">
<summary>
Gets dimensions of the printers Y output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BedSizeZ">
<summary>
Gets dimensions of the printers Z output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.EncryptionKey">
<summary>
Gets the key used to encrypt layer data, or 0 if encryption is not used.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.VolumeMl">
<summary>
Gets the estimated required resin, measured in milliliters. The volume number is derived from the model.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.WeightG">
<summary>
Gets the estimated grams, derived from volume using configured factors for density.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.CostDollars">
<summary>
Gets the estimated cost based on currency unit the user had configured. Derived from volume using configured factors for density and cost.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.MachineNameAddress">
<summary>
Gets the machine name offset to a string naming the machine type, and its length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.MachineNameSize">
<summary>
Gets the machine size in bytes
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.MachineName">
<summary>
Gets the machine name. string is not nul-terminated.
The character encoding is currently unknown — all observed files in the wild use 7-bit ASCII characters only.
Note that the machine type here is set in the software profile, and is not the name the user assigned to the machine.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BottomLightOffDelay">
<summary>
Gets the light off time setting used at slicing, for bottom layers, in seconds. Actual time used by the machine is in the layer table. Note that light_off_time_s appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LightOffDelay">
<summary>
Gets the light off time setting used at slicing, for normal layers, in seconds. Actual time used by the machine is in the layer table. Note that light_off_time_s appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BottomLiftHeight">
<summary>
Gets the distance to lift the build platform away from the vat after bottom layers, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.BottomLiftSpeed">
<summary>
Gets the speed at which to lift the build platform away from the vat after bottom layers, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LiftHeight">
<summary>
Gets the distance to lift the build platform away from the vat after normal layers, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.LiftSpeed">
<summary>
Gets the speed at which to lift the build platform away from the vat after normal layers, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.RetractSpeed">
<summary>
Gets the speed to use when the build platform re-approaches the vat after lift, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Header.ModifiedTimestampMinutes">
<summary>
Gets the minutes since Jan 1, 1970 UTC
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FDGFile.Preview">
<summary>
The files contain two preview images.
These are shown on the printer display when choosing which file to print, sparing the poor printer from needing to render a 3D image from scratch.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Preview.ResolutionX">
<summary>
Gets the X dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Preview.ResolutionY">
<summary>
Gets the Y dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Preview.ImageOffset">
<summary>
Gets the image offset of the encoded data blob.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.Preview.ImageLength">
<summary>
Gets the image length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.LayerDef.LayerPositionZ">
<summary>
Gets the build platform Z position for this layer, measured in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.LayerDef.LayerExposure">
<summary>
Gets the exposure time for this layer, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.LayerDef.LightOffDelay">
<summary>
Gets how long to keep the light off after exposing this layer, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.LayerDef.DataAddress">
<summary>
Gets the layer image offset to encoded layer data, and its length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FDGFile.LayerDef.DataSize">
<summary>
Gets the layer image length in bytes.
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FileExtension">
<summary>
Represents a file extension for slicer file formats
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileExtension.FileFormatType">
<summary>
Stores a specific <see cref="T:UVtools.Core.FileFormats.FileFormat"/> type that should be used to create with this FileExtension instance
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileExtension.Extension">
<summary>
Gets the extension name without the dot (.)
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileExtension.Description">
<summary>
Gets the extension description
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileExtension.IsVisibleOnFileFilters">
<summary>
Gets if the extension shows up on open file dialog filters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileExtension.IsVisibleOnConvertMenu">
<summary>
Gets if the extension shows up on convert to menu
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileExtension.Tag">
<summary>
Gets a tag object
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileExtension.Filter">
<summary>
Gets the file filter for open and save dialogs
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileExtension.#ctor(System.Type,System.String,System.String,System.Boolean,System.Boolean,System.Object)">
<summary>
Constructor
</summary>
<param name="fileFormatType">The exact <see cref="T:UVtools.Core.FileFormats.FileFormat"/> type</param>
<param name="extension">The extension name without the dot (.)</param>
<param name="description">The extension description</param>
<param name="isVisibleOnFileFilters">True if this extension is visible on open file dialog filters</param>
<param name="isVisibleOnConvertMenu">True if this extension is visible on convert to menu</param>
<param name="tag">Tag object</param>
</member>
<member name="T:UVtools.Core.FileFormats.FileFormat">
<summary>
Slicer <see cref="T:UVtools.Core.FileFormats.FileFormat"/> representation
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FileFormat.FileFormatType">
<summary>
Enumeration of file format types
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FileFormat.FileThumbnailSize">
<summary>
Enumeration of file thumbnail size types
</summary>
</member>
<member name="F:UVtools.Core.FileFormats.FileFormat.TransitionLayerTypes.Firmware">
<summary>
Firmware transition layers are handled by printer firmware
</summary>
</member>
<member name="F:UVtools.Core.FileFormats.FileFormat.TransitionLayerTypes.Software">
<summary>
Software transition layers are handled by software and written on layer data
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FileFormat.FileDecodeType">
<summary>
File decode type
</summary>
</member>
<member name="F:UVtools.Core.FileFormats.FileFormat.FileDecodeType.Full">
<summary>
Decodes all the file information and caches layer images
</summary>
</member>
<member name="F:UVtools.Core.FileFormats.FileFormat.FileDecodeType.Partial">
<summary>
Decodes only the information in the file and thumbnails, no layer image is read nor cached, fast
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FileFormat.FileImageType">
<summary>
Image data type
</summary>
</member>
<member name="F:UVtools.Core.FileFormats.FileFormat.FileImageType.Png24BgrAA">
<summary>
eg: Nova Bene4
</summary>
</member>
<member name="F:UVtools.Core.FileFormats.FileFormat.FileImageType.Png24RgbAA">
<summary>
eg: Uniformation GKone
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier">
<summary>
Available Print Parameters to modify
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.Name">
<summary>
Gets the name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.Description">
<summary>
Gets the description
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.ValueUnit">
<summary>
Gets the value unit
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.Minimum">
<summary>
Gets the minimum value
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.Maximum">
<summary>
Gets the maximum value
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.Increment">
<summary>
Gets the incrementing value for the dropdown
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.DecimalPlates">
<summary>
Gets the number of decimal plates
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.OldValue">
<summary>
Gets or sets the current / old value
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.NewValue">
<summary>
Gets or sets the new value
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier.HasChanged">
<summary>
Gets if the value has changed
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.AvailableFormats">
<summary>
Gets the available formats to process
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.AllFileFilters">
<summary>
Gets all filters for open and save file dialogs
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FileExtensionsCount">
<summary>
Gets the count of available file extensions
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.FindByExtensionOrFilePath(System.String,System.Boolean)">
<summary>
Find <see cref="T:UVtools.Core.FileFormats.FileFormat"/> by an extension
</summary>
<param name="extensionOrFilePath"> name to find</param>
<param name="createNewInstance">True to create a new instance of found file format, otherwise will return a pre created one which should be used for read-only purpose</param>
<returns><see cref="T:UVtools.Core.FileFormats.FileFormat"/> object or null if not found</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.FindByExtensionOrFilePath(System.String,System.Byte@,System.Boolean)">
<summary>
Find <see cref="T:UVtools.Core.FileFormats.FileFormat"/> by an extension
</summary>
<param name="extensionOrFilePath"> name to find</param>
<param name="fileFormatsSharingExt">Number of file formats sharing the input extension</param>
<param name="createNewInstance">True to create a new instance of found file format, otherwise will return a pre created one which should be used for read-only purpose</param>
<returns><see cref="T:UVtools.Core.FileFormats.FileFormat"/> object or null if not found</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.FindByType(System.String,System.Boolean)">
<summary>
Find <see cref="T:UVtools.Core.FileFormats.FileFormat"/> by an type name
</summary>
<param name="type">Type name to find</param>
<param name="createNewInstance">True to create a new instance of found file format, otherwise will return a pre created one which should be used for read-only purpose</param>
<returns><see cref="T:UVtools.Core.FileFormats.FileFormat"/> object or null if not found</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.FindByAnyMeans(System.String,System.Boolean)">
<summary>
Find <see cref="T:UVtools.Core.FileFormats.FileFormat"/> by any means (type name, extension, filepath)
</summary>
<param name="name">Name to find</param>
<param name="createNewInstance">True to create a new instance of found file format, otherwise will return a pre created one which should be used for read-only purpose</param>
<returns><see cref="T:UVtools.Core.FileFormats.FileFormat"/> object or null if not found</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.FindByType(System.Type,System.Boolean)">
<summary>
Find <see cref="T:UVtools.Core.FileFormats.FileFormat"/> by an type
</summary>
<param name="type">Type to find</param>
<param name="createNewInstance">True to create a new instance of found file format, otherwise will return a pre created one which should be used for read-only purpose</param>
<returns><see cref="T:UVtools.Core.FileFormats.FileFormat"/> object or null if not found</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CopyParameters(UVtools.Core.FileFormats.FileFormat,UVtools.Core.FileFormats.FileFormat)">
<summary>
Copy parameters from one file to another
</summary>
<param name="from">From source file</param>
<param name="to">To target file</param>
<returns>Number of affected parameters</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CompressLayer(System.IO.Stream)">
<summary>
Compress a layer from a <see cref="T:System.IO.Stream"/>
</summary>
<param name="input"><see cref="T:System.IO.Stream"/> to compress</param>
<returns>Compressed byte array</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CompressLayer(System.Byte[])">
<summary>
Compress a layer from a byte array
</summary>
<param name="input">byte array to compress</param>
<returns>Compressed byte array</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.DecompressLayer(System.Byte[])">
<summary>
Decompress a layer from a byte array
</summary>
<param name="input">byte array to decompress</param>
<returns>Decompressed byte array</returns>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FileType">
<summary>
Gets the file format type
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LayerImageType">
<summary>
Gets the layer image data type used on this file format
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.ConvertMenuGroup">
<summary>
Gets the group name under convert menu to group all extensions, set to null to not group items
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FileExtensions">
<summary>
Gets the valid file extensions for this <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FormatSpeedUnit">
<summary>
The speed unit used by this file format in his internal data
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterModifiers">
<summary>
Gets the available <see cref="T:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier"/>
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintParameterPerLayerModifiers">
<summary>
Gets the available <see cref="T:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier"/> per layer
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.HavePrintParameterModifier(UVtools.Core.FileFormats.FileFormat.PrintParameterModifier)">
<summary>
Checks if a <see cref="T:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier"/> exists on print parameters
</summary>
<param name="modifier"></param>
<returns>True if exists, otherwise false</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.HaveLayerParameterModifier(UVtools.Core.FileFormats.FileFormat.PrintParameterModifier)">
<summary>
Checks if a <see cref="T:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier"/> exists on layer parameters
</summary>
<param name="modifier"></param>
<returns>True if exists, otherwise false</returns>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FileFilter">
<summary>
Gets the file filter for open and save dialogs
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FileFilterAvalonia">
<summary>
Gets all valid file extensions for Avalonia file dialog
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FileFilterExtensionsOnly">
<summary>
Gets all valid file extensions in "*.extension1;*.extension2" format
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SuppressRebuildProperties">
<summary>
Gets or sets if change a global property should rebuild every layer data based on them
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.TemporaryOutputFileFullPath">
<summary>
Gets the temporary output file path to use on save and encode
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FileFullPath">
<summary>
Gets the input file path loaded into this <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.AvailableVersions">
<summary>
Gets the available versions to set in this file format
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.AvailableVersionsCount">
<summary>
Gets the amount of available versions in this file format
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DefaultVersion">
<summary>
Gets the default version to use in this file when not setting the version
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Version">
<summary>
Gets or sets the version of this file format
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.ThumbnailsCount">
<summary>
Gets the thumbnails count present in this file format
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.CreatedThumbnailsCount">
<summary>
Gets the number of created thumbnails
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.ThumbnailsOriginalSize">
<summary>
Gets the original thumbnail sizes
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Thumbnails">
<summary>
Gets the thumbnails for this <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Layers">
<summary>
Layers List
</summary>
</member>
<member name="F:UVtools.Core.FileFormats.FileFormat.FirstLayerIndex">
<summary>
First layer index, this is always 0
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LastLayerIndex">
<summary>
Gets the last layer index
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FirstLayer">
<summary>
Gets the first layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LastBottomLayer">
<summary>
Gets the last bottom layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.FirstNormalLayer">
<summary>
Gets the first normal layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LastLayer">
<summary>
Gets the last layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SmallestBottomLayer">
<summary>
Gets the smallest bottom layer using the pixel count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LargestBottomLayer">
<summary>
Gets the largest bottom layer using the pixel count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SmallestNormalLayer">
<summary>
Gets the smallest normal layer using the pixel count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LargestNormalLayer">
<summary>
Gets the largest layer using the pixel count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SmallestLayer">
<summary>
Gets the smallest normal layer using the pixel count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LargestLayer">
<summary>
Gets the largest layer using the pixel count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLayers">
<summary>
Gets all bottom layers
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.NormalLayers">
<summary>
Gets all normal layers
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.TransitionLayers">
<summary>
Gets all transition layers
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.TsmcLayers">
<summary>
Gets all layers that use TSMC values
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SamePositionedLayers">
<summary>
Gets all layers on same position but exclude the first layer on that position
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.AllLayersAreUsingGlobalParameters">
<summary>
True if all layers are using same value parameters as global settings, otherwise false
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.AnyLayerIsUsingTSMC">
<summary>
True if any layer is using TSMC, otherwise false when none of layers is using TSMC
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.IsUsingTSMC">
<summary>
True if the file global property is using TSMC, otherwise false when not using
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.IsModified">
<summary>
Gets if any layer got modified, otherwise false
Sets all layers `IsModified` flag
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BoundingRectangle">
<summary>
Gets the bounding rectangle of the model
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BoundingRectangleMillimeters">
<summary>
Gets the bounding rectangle of the object in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.RequireFullEncode">
<summary>
Gets or sets if modifications require a full encode to save
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Resolution">
<summary>
Gets the image width and height resolution
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.ResolutionX">
<summary>
Gets the image width resolution
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.ResolutionY">
<summary>
Gets the image height resolution
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DisplayPixelCount">
<summary>
Gets the display total number of pixels (<see cref="P:UVtools.Core.FileFormats.FileFormat.ResolutionX"/> * <see cref="P:UVtools.Core.FileFormats.FileFormat.ResolutionY"/>)
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Display">
<summary>
Gets the size of display in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DisplayWidth">
<summary>
Gets or sets the display width in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DisplayHeight">
<summary>
Gets or sets the display height in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DisplayDiagonal">
<summary>
Gets the display diagonal in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DisplayDiagonalInches">
<summary>
Gets the display diagonal in inch's
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DisplayAspectRatio">
<summary>
Gets the display ratio
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.DisplayMirror">
<summary>
Gets or sets if images need to be mirrored on lcd to print on the correct orientation
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.IsDisplayPortrait">
<summary>
Gets if the display is in portrait mode
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.IsDisplayLandscape">
<summary>
Gets if the display is in landscape mode
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MachineZ">
<summary>
Gets or sets the maximum printer build Z volume
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Xppmm">
<summary>
Gets or sets the pixels per mm on X direction
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Yppmm">
<summary>
Gets or sets the pixels per mm on Y direction
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Ppmm">
<summary>
Gets or sets the pixels per mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PpmmMax">
<summary>
Gets the maximum (Width or Height) pixels per mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelWidth">
<summary>
Gets the pixel width in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelHeight">
<summary>
Gets the pixel height in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelSize">
<summary>
Gets the pixel size in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelSizeMax">
<summary>
Gets the maximum pixel between width and height in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelArea">
<summary>
Gets the pixel area in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelWidthMicrons">
<summary>
Gets the pixel width in microns
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelHeightMicrons">
<summary>
Gets the pixel height in microns
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelSizeMicrons">
<summary>
Gets the pixel size in microns
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelSizeMicronsMax">
<summary>
Gets the maximum pixel between width and height in microns
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PixelAreaMicrons">
<summary>
Gets the pixel area in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Volume">
<summary>
Gets the file volume (XYZ) in mm^3
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.HaveAntiAliasing">
<summary>
Checks if this file have AntiAliasing
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.IsAntiAliasingEmulated">
<summary>
Gets if the AntiAliasing is emulated/fake with fractions of the time or if is real grey levels
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.AntiAliasing">
<summary>
Gets or sets the AntiAliasing level
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LayerHeight">
<summary>
Gets Layer Height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LayerHeightUm">
<summary>
Gets Layer Height in um
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintHeight">
<summary>
Gets or sets the print height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SupportPerLayerSettings">
<summary>
Checks if this file format supports per layer settings
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LayerCount">
<summary>
Gets or sets the layer count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLayersHeight">
<summary>
Gets or sets the total height for the bottom layers in millimeters
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLayerCount">
<summary>
Gets or sets the number of initial layer count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.TransitionLayerType">
<summary>
Gets the transition layer type
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.TransitionLayerCount">
<summary>
Gets or sets the number of transition layers
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.HaveTransitionLayers">
<summary>
Gets if have transition layers
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaximumPossibleTransitionLayerCount">
<summary>
Gets the maximum transition layers this layer collection supports
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.NormalLayerCount">
<summary>
Gets the number of normal layer count
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLightOffDelay">
<summary>
Gets or sets the bottom layer off time in seconds
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LightOffDelay">
<summary>
Gets or sets the layer off time in seconds
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomWaitTimeBeforeCure">
<summary>
Gets or sets the bottom time in seconds to wait before cure the layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.WaitTimeBeforeCure">
<summary>
Gets or sets the time in seconds to wait after cure the layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomExposureTime">
<summary>
Gets or sets the initial exposure time for <see cref="P:UVtools.Core.FileFormats.FileFormat.BottomLayerCount"/> in seconds
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.ExposureTime">
<summary>
Gets or sets the normal layer exposure time in seconds
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomWaitTimeAfterCure">
<summary>
Gets or sets the bottom time in seconds to wait after cure the layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.WaitTimeAfterCure">
<summary>
Gets or sets the time in seconds to wait after cure the layer
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLiftHeightTotal">
<summary>
Gets: Total bottom lift height (lift1 + lift2)
Sets: Bottom lift1 with value and lift2 with 0
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LiftHeightTotal">
<summary>
Gets: Total lift height (lift1 + lift2)
Sets: Lift1 with value and lift2 with 0
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLiftHeight">
<summary>
Gets or sets the bottom lift height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLiftSpeed">
<summary>
Gets or sets the bottom lift speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LiftHeight">
<summary>
Gets or sets the lift height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LiftSpeed">
<summary>
Gets or sets the speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLiftHeight2">
<summary>
Gets or sets the second bottom lift height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLiftSpeed2">
<summary>
Gets or sets the second bottom lift speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LiftHeight2">
<summary>
Gets or sets the second lift height in mm (This is the closer to fep retract)
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LiftSpeed2">
<summary>
Gets or sets the second speed in mm/min (This is the closer to fep retract)
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomWaitTimeAfterLift">
<summary>
Gets or sets the bottom time in seconds to wait after lift / before retract
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.WaitTimeAfterLift">
<summary>
Gets or sets the time in seconds to wait after lift / before retract
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomRetractHeightTotal">
<summary>
Gets: Total bottom retract height (retract1 + retract2) alias of <see cref="P:UVtools.Core.FileFormats.FileFormat.BottomLiftHeightTotal"/>
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.RetractHeightTotal">
<summary>
Gets: Total retract height (retract1 + retract2) alias of <see cref="P:UVtools.Core.FileFormats.FileFormat.LiftHeightTotal"/>
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomRetractHeight">
<summary>
Gets the bottom retract height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomRetractSpeed">
<summary>
Gets the speed in mm/min for the bottom retracts
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.RetractHeight">
<summary>
Gets the retract height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.RetractSpeed">
<summary>
Gets the speed in mm/min for the retracts
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomRetractHeight2">
<summary>
Gets or sets the second bottom retract height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomRetractSpeed2">
<summary>
Gets the speed in mm/min for the retracts
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.RetractHeight2">
<summary>
Gets or sets the second retract height in mm
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.RetractSpeed2">
<summary>
Gets the speed in mm/min for the retracts
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.BottomLightPWM">
<summary>
Gets or sets the bottom pwm value from 0 to 255
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.LightPWM">
<summary>
Gets or sets the pwm value from 0 to 255
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MinimumBottomSpeed">
<summary>
Gets the minimum used speed for bottom layers in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MinimumNormalSpeed">
<summary>
Gets the minimum used speed for normal bottom layers in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MinimumSpeed">
<summary>
Gets the minimum used speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaximumBottomSpeed">
<summary>
Gets the maximum used speed for bottom layers in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaximumNormalSpeed">
<summary>
Gets the maximum used speed for normal bottom layers in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaximumSpeed">
<summary>
Gets the maximum used speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintTime">
<summary>
Gets the estimate print time in seconds
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintTimeComputed">
<summary>
Gets the calculated estimate print time in seconds
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintTimeHours">
<summary>
Gets the estimate print time in hours
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.PrintTimeString">
<summary>
Gets the estimate print time in hours and minutes formatted
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.StartingMaterialMilliliters">
<summary>
Gets the starting material milliliters when the file was loaded
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaterialMilliliters">
<summary>
Gets the estimate used material in ml
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaterialGrams">
<summary>
Gets the estimate material in grams
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.StartingMaterialCost">
<summary>
Gets the starting material cost when the file was loaded
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaterialCost">
<summary>
Gets the estimate material cost
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaterialMilliliterCost">
<summary>
Gets the material cost per one milliliter
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MaterialName">
<summary>
Gets the material name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.MachineName">
<summary>
Gets the machine name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.GCode">
<summary>
Gets the GCode, returns null if not supported
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.GCodeStr">
<summary>
Gets the GCode, returns null if not supported
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SupportsGCode">
<summary>
Gets if this file format supports gcode
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.HaveGCode">
<summary>
Gets if this file have available gcode to read
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.SuppressRebuildGCode">
<summary>
Disable or enable the gcode auto rebuild when needed, set this to false to manually write your own gcode
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.Configs">
<summary>
Get all configuration objects with properties and values
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FileFormat.IsValid">
<summary>
Gets if this file is valid to read
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetLayer(System.UInt32,UVtools.Core.Layers.Layer,System.Boolean)">
<summary>
Sets a layer
</summary>
<param name="index">Layer index</param>
<param name="layer">Layer to add</param>
<param name="makeClone">True to add a clone of the layer</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetLayers(System.Collections.Generic.IEnumerable{UVtools.Core.Layers.Layer},System.Boolean)">
<summary>
Add a list of layers
</summary>
<param name="layers">Layers to add</param>
<param name="makeClone">True to add a clone of layers</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetLayer(System.UInt32)">
<summary>
Get layer given index
</summary>
<param name="index">Layer index</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Clear">
<summary>
Clears all definitions and properties, it also dispose valid candidates
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CanProcess(System.String)">
<summary>
Check if a file is valid and can be processed before read it against the <see cref="T:UVtools.Core.FileFormats.FileFormat"/> decode scheme
</summary>
<param name="fileFullPath"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.FileValidation(System.String)">
<summary>
Validate if a file is a valid <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
<param name="fileFullPath">Full file path</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.IsExtensionValid(System.String,System.Boolean)">
<summary>
Checks if a extension is valid under the <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
<param name="extension">Extension to check without the dot (.)</param>
<param name="isFilePath">True if <paramref name="extension"/> is a full file path, otherwise false for extension only</param>
<returns>True if valid, otherwise false</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetFileExtensions(System.String,System.String)">
<summary>
Gets all valid file extensions in a specified format
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetThumbnail(System.UInt32)">
<summary>
Gets a thumbnail by it height or lower
</summary>
<param name="maxHeight">Max height allowed</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetThumbnail(System.Boolean)">
<summary>
Gets a thumbnail by the largest or smallest
</summary>
<param name="largest">True to get the largest, otherwise false</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetThumbnails(Emgu.CV.Mat[])">
<summary>
Sets thumbnails from a list of thumbnails and clone them
</summary>
<param name="images"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetThumbnails(Emgu.CV.Mat)">
<summary>
Sets all thumbnails the same image
</summary>
<param name="image">Image to set</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetThumbnail(System.Int32,System.String)">
<summary>
Sets a thumbnail from a disk file
</summary>
<param name="index">Thumbnail index</param>
<param name="filePath"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.OnBeforeEncode(System.Boolean)">
<summary>
Triggers before attempt to save/encode the file
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.OnAfterEncode(System.Boolean)">
<summary>
Triggers after save/encode the file
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.EncodeInternally(UVtools.Core.Operations.OperationProgress)">
<summary>
Encode to an output file
</summary>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Encode(System.String,UVtools.Core.Operations.OperationProgress)">
<summary>
Encode to an output file
</summary>
<param name="fileFullPath">Output file</param>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.DecodeInternally(UVtools.Core.Operations.OperationProgress)">
<summary>
Decode a slicer file
</summary>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Decode(System.String,UVtools.Core.Operations.OperationProgress)">
<summary>
Decode a slicer file
</summary>
<param name="fileFullPath">file path to load, use null to reload file</param>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Decode(System.String,UVtools.Core.FileFormats.FileFormat.FileDecodeType,UVtools.Core.Operations.OperationProgress)">
<summary>
Decode a slicer file
</summary>
<param name="fileFullPath">file path to load, use null to reload file</param>
<param name="fileDecodeType"></param>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Reload(UVtools.Core.FileFormats.FileFormat.FileDecodeType,UVtools.Core.Operations.OperationProgress)">
<summary>
Reloads the file
</summary>
<param name="fileDecodeType"></param>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Reload(UVtools.Core.Operations.OperationProgress)">
<summary>
Reloads the file
</summary>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ReloadAsync(UVtools.Core.FileFormats.FileFormat.FileDecodeType,UVtools.Core.Operations.OperationProgress)">
<summary>
Reloads the file
</summary>
<param name="fileDecodeType"></param>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ReloadAsync(UVtools.Core.Operations.OperationProgress)">
<summary>
Reloads the file
</summary>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Extract(System.String,System.Boolean,System.Boolean,UVtools.Core.Operations.OperationProgress)">
<summary>
Extract contents to a folder
</summary>
<param name="path">Path to folder where content will be extracted</param>
<param name="genericConfigExtract"></param>
<param name="genericLayersExtract"></param>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ResetCurrentTransitionLayers(System.Boolean)">
<summary>
Re-set exposure time to the transition layers
</summary>
<param name="resetExposureTimes">True to default all the previous transition layers exposure time, otherwise false</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetTransitionLayers(System.UInt16,System.Boolean)">
<summary>
Set transition layers and exposure times, but do not set that count to file property <see cref="P:UVtools.Core.FileFormats.FileFormat.TransitionLayerCount"/>
</summary>
<param name="transitionLayerCount">Number of transition layers to set</param>
<param name="resetExposureTimes">True to default all the previous transition layers exposure time, otherwise false</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetHeightFromLayer(System.UInt32,System.Boolean)">
<summary>
Get height in mm from layer height
</summary>
<param name="layerIndex"></param>
<param name="realHeight"></param>
<returns>The height in mm</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetBottomOrNormalValue``1(System.UInt32,``0,``0)">
<summary>
Gets the global value for bottom or normal layers based on layer index
</summary>
<typeparam name="T">Type of value</typeparam>
<param name="layerIndex">Layer index</param>
<param name="bottomValue">Initial value</param>
<param name="normalValue">Normal value</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetBottomOrNormalValue``1(UVtools.Core.Layers.Layer,``0,``0)">
<summary>
Gets the global value for bottom or normal layers based on layer
</summary>
<typeparam name="T">Type of value</typeparam>
<param name="layer">Layer</param>
<param name="bottomValue">Initial value</param>
<param name="normalValue">Normal value</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.RefreshPrintParametersModifiersValues">
<summary>
Refresh print parameters globals with this file settings
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.RefreshPrintParametersPerLayerModifiersValues(System.UInt32)">
<summary>
Refresh print parameters per layer globals with this file settings
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetValueFromPrintParameterModifier(UVtools.Core.FileFormats.FileFormat.PrintParameterModifier)">
<summary>
Gets the value attributed to <see cref="T:UVtools.Core.FileFormats.FileFormat.PrintParameterModifier"/>
</summary>
<param name="modifier">Modifier to use</param>
<returns>A value</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetValueFromPrintParameterModifier(UVtools.Core.FileFormats.FileFormat.PrintParameterModifier,System.Decimal)">
<summary>
Sets a property value attributed to <paramref name="modifier"/>
</summary>
<param name="modifier">Modifier to use</param>
<param name="value">Value to set</param>
<returns>True if set, otherwise false <paramref name="modifier"/> not found</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetValuesFromPrintParametersModifiers">
<summary>
Sets properties from print parameters
</summary>
<returns>Number of affected parameters</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetBottomWaitTimeBeforeCure">
<summary>
Gets the bottom wait time before cure, if not available calculate it from light off delay
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.GetNormalWaitTimeBeforeCure">
<summary>
Gets the wait time before cure, if not available calculate it from light off delay
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetWaitTimeBeforeCureOrLightOffDelay(System.Boolean,System.Single,System.Boolean)">
<summary>
Attempt to set wait time before cure if supported, otherwise fall-back to light-off delay
</summary>
<param name="isBottomLayer">True to set to bottom properties, otherwise false</param>
<param name="time">The time to set</param>
<param name="zeroLightOffDelayCalculateBase">When true and time is zero, it will calculate light-off delay without extra time, otherwise false to set light-off delay to 0 when time is 0</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.RebuildGCode">
<summary>
Rebuilds GCode based on current settings
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Save(UVtools.Core.Operations.OperationProgress)">
<summary>
Saves current configuration on input file
</summary>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SaveAs(System.String,UVtools.Core.Operations.OperationProgress)">
<summary>
Saves current configuration on a copy
</summary>
<param name="filePath">File path to save copy as, use null to overwrite active file (Same as <see cref="M:UVtools.Core.FileFormats.FileFormat.Save(UVtools.Core.Operations.OperationProgress)"/>)</param>
<param name="progress"></param>
<exception cref="T:System.ArgumentNullException"><see cref="P:UVtools.Core.FileFormats.FileFormat.FileFullPath"/></exception>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.PartialSaveInternally(UVtools.Core.Operations.OperationProgress)">
<summary>
Partial save of the file, this is the file information only.
When this function is called it's already ready to save to file
</summary>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.OnBeforeConvertFrom(UVtools.Core.FileFormats.FileFormat)">
<summary>
Triggers when a conversion is valid and before start converting values
</summary>
<param name="source">Source file format</param>
<returns>True to continue the conversion, otherwise false to stop</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.OnBeforeConvertTo(UVtools.Core.FileFormats.FileFormat)">
<summary>
Triggers when a conversion is valid and before start converting values
</summary>
<param name="output">Target file format</param>
<returns>True to continue the conversion, otherwise false to stop</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.OnAfterConvertFrom(UVtools.Core.FileFormats.FileFormat)">
<summary>
Triggers when the conversion is made but before encoding
</summary>
<param name="source">Source file format</param>
<returns>True to continue the conversion, otherwise false to stop</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.OnAfterConvertTo(UVtools.Core.FileFormats.FileFormat)">
<summary>
Triggers when the conversion is made but before encoding
</summary>
<param name="output">Output file format</param>
<returns>True to continue the conversion, otherwise false to stop</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Convert(System.Type,System.String,System.UInt32,UVtools.Core.Operations.OperationProgress)">
<summary>
Converts this file type to another file type
</summary>
<param name="to">Target file format</param>
<param name="fileFullPath">Output path file</param>
<param name="version">File version to use</param>
<param name="progress"></param>
<returns>The converted file if successful, otherwise null</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Convert(UVtools.Core.FileFormats.FileFormat,System.String,System.UInt32,UVtools.Core.Operations.OperationProgress)">
<summary>
Converts this file type to another file type
</summary>
<param name="to">Target file format</param>
<param name="fileFullPath">Output path file</param>
<param name="version">File version</param>
<param name="progress"></param>
<returns>TThe converted file if successful, otherwise null</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ChangeLayersCompressionMethod(UVtools.Core.Layers.LayerCompressionCodec,UVtools.Core.Operations.OperationProgress)">
<summary>
Changes the compression method of all layers to a new method
</summary>
<param name="newCodec">The new method to change to</param>
<param name="progress"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ValidateAntiAliasingLevel">
<summary>
Validate AntiAlias Level
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SuppressRebuildPropertiesWork(System.Action,System.Boolean,System.Boolean,System.String)">
<summary>
SuppressRebuildProperties = true, call the invoker and reset SuppressRebuildProperties = false
</summary>
<param name="action">Action work</param>
<param name="callRebuildOnEnd">True to force rebuild the layer properties after the work and before reset to false</param>
<param name="recalculateZPos">True to recalculate z position of each layer (requires <paramref name="callRebuildOnEnd"/> = true), otherwise false</param>
<param name="property">Property name to change for each layer, use null to update all properties (requires <paramref name="callRebuildOnEnd"/> = true)</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SuppressRebuildPropertiesWork(System.Func{System.Boolean},System.Boolean,System.Boolean,System.String)">
<summary>
SuppressRebuildProperties = true, call the invoker and reset SuppressRebuildProperties = false
</summary>
<param name="action">Action work</param>
<param name="callRebuildOnEnd">True to force rebuild the layer properties after the work and before reset to false</param>
<param name="recalculateZPos">True to recalculate z position of each layer (requires <paramref name="callRebuildOnEnd"/> = true), otherwise false</param>
<param name="property">Property name to change for each layer, use null to update all properties (requires <paramref name="callRebuildOnEnd"/> = true)</param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.MillimetersXToPixels(System.UInt16,System.UInt32)">
<summary>
Converts millimeters to pixels given the current resolution and display size
</summary>
<param name="mm">Millimeters to convert</param>
<param name="fallbackToPixels">Fallback to this value in pixels if no ratio is available to make the convertion</param>
<returns>Pixels</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.MillimetersYToPixels(System.UInt16,System.UInt32)">
<summary>
Converts millimeters to pixels given the current resolution and display size
</summary>
<param name="mm">Millimeters to convert</param>
<param name="fallbackToPixels">Fallback to this value in pixels if no ratio is available to make the convertion</param>
<returns>Pixels</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.MillimetersToPixels(System.UInt16,System.UInt32)">
<summary>
Converts millimeters to pixels given the current resolution and display size
</summary>
<param name="mm">Millimeters to convert</param>
<param name="fallbackToPixels">Fallback to this value in pixels if no ratio is available to make the convertion</param>
<returns>Pixels</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.PixelToDisplayPositionX(System.Int32,System.Byte)">
<summary>
From a pixel position get the equivalent position on the display
</summary>
<param name="x">X position in pixels</param>
<param name="precision">Decimal precision</param>
<returns>Display position in millimeters</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.PixelToDisplayPositionY(System.Int32,System.Byte)">
<summary>
From a pixel position get the equivalent position on the display
</summary>
<param name="y">Y position in pixels</param>
<param name="precision">Decimal precision</param>
<returns>Display position in millimeters</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.PixelToDisplayPosition(System.Int32,System.Int32,System.Byte)">
<summary>
From a pixel position get the equivalent position on the display
</summary>
<param name="x">X position in pixels</param>
<param name="y">Y position in pixels</param>
<param name="precision">Decimal precision</param>
<returns>Resolution position in pixels</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.DisplayToPixelPositionX(System.Single)">
<summary>
From a pixel position get the equivalent position on the display
</summary>
<param name="x">X position in millimeters</param>
<returns>Resolution position in pixels</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.DisplayToPixelPositionY(System.Single)">
<summary>
From a pixel position get the equivalent position on the display
</summary>
<param name="y">Y position in millimeters</param>
<returns>Resolution position in pixels</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.DisplayToPixelPosition(System.Single,System.Single)">
<summary>
From a pixel position get the equivalent position on the display
</summary>
<param name="x">X position in millimeters</param>
<param name="y">Y position in millimeters</param>
<returns>Resolution position in pixels</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CreateMatWithDummyPixel(System.Drawing.Point,System.Byte)">
<summary>
Creates a empty mat of file <see cref="P:UVtools.Core.FileFormats.FileFormat.Resolution"/> size and create a dummy pixel to prevent a empty layer detection
</summary>
<param name="dummyPixelLocation">Location to set the dummy pixel, use a negative value (-1,-1) to set to the bounding center</param>
<param name="dummyPixelBrightness">Dummy pixel brightness</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CreateMatWithDummyPixel(System.Drawing.Point)">
<summary>
Creates a empty mat of file <see cref="P:UVtools.Core.FileFormats.FileFormat.Resolution"/> size and create a dummy pixel to prevent a empty layer detection
</summary>
<param name="dummyPixelLocation">Location to set the dummy pixel, use a negative value (-1,-1) to set to the bounding center</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CreateMatWithDummyPixel(System.Byte)">
<summary>
Creates a empty mat of file <see cref="P:UVtools.Core.FileFormats.FileFormat.Resolution"/> size
</summary>
<param name="dummyPixelBrightness">Dummy pixel brightness</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CreateMatWithDummyPixel">
<summary>
Creates a empty mat of file <see cref="P:UVtools.Core.FileFormats.FileFormat.Resolution"/> size
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CreateMat(System.Boolean)">
<summary>
Creates a empty mat of file <see cref="P:UVtools.Core.FileFormats.FileFormat.Resolution"/> size
</summary>
<param name="initMat">True to black out the mat</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.CloneLayers">
<summary>
Clone layers
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ReallocateNew(System.UInt32,System.Boolean)">
<summary>
Reallocate with new size
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Reallocate(System.UInt32,System.Boolean)">
<summary>
Reallocate layer count with a new size
</summary>
<param name="newLayerCount">New layer count</param>
<param name="initBlack"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ReallocateInsert(System.UInt32,System.UInt32,System.Boolean)">
<summary>
Reallocate at given index
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ReallocateKeepRange(System.UInt32,System.UInt32)">
<summary>
Reallocate at a kept range
</summary>
<param name="startLayerIndex"></param>
<param name="endLayerIndex"></param>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ReallocateStart(System.UInt32,System.Boolean)">
<summary>
Reallocate at start
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.ReallocateEnd(System.UInt32,System.Boolean)">
<summary>
Reallocate at end
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.AllocateFromMat(Emgu.CV.Mat[],UVtools.Core.Operations.OperationProgress)">
<summary>
Allocate layers from a Mat array
</summary>
<param name="mats"></param>
<param name="progress"></param>
<returns>The new Layer array</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.AllocateAndSetFromMat(Emgu.CV.Mat[],UVtools.Core.Operations.OperationProgress)">
<summary>
Allocate layers from a Mat array and set them to the current file
</summary>
<param name="mats"></param>
<param name="progress"></param>
/// <returns>The new Layer array</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.LayerExists(System.Int32)">
<summary>
Checks if a layer index exists in the collection
</summary>
<param name="layerIndex">Layer index to check</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.LayerExists(System.UInt32)">
<summary>
Checks if a layer index exists in the collection
</summary>
<param name="layerIndex">Layer index to check</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SanitizeLayers">
<summary>
Re-assign layer indexes and parent <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.Sanitize">
<summary>
Sanitize file and thrown exception if a severe problem is found
</summary>
<returns>True if one or more corrections has been applied, otherwise false</returns>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.RebuildLayersProperties(System.Boolean,System.String)">
<summary>
Rebuild layer properties based on slice settings
</summary>
</member>
<member name="M:UVtools.Core.FileFormats.FileFormat.SetNoLiftForSamePositionedLayers(System.Boolean)">
<summary>
Set LiftHeight to 0 if previous and current have same PositionZ
<param name="zeroLightOffDelay">If true also set light off to 0, otherwise current value will be kept.</param>
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.FlashForgeSVGXFile.Preview">
<summary>
The files contain two preview images.
These are shown on the printer display when choosing which file to print, sparing the poor printer from needing to render a 3D image from scratch.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FlashForgeSVGXFile.Preview.Identifier">
<summary>
Gets or sets the identifier, BM = bitmap?
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FlashForgeSVGXFile.Preview.TableSize">
<summary>
Gets or sets the table total size
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.FlashForgeSVGXFile.Preview.ResolutionY">
<summary>
Gets the Y dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.GR1File.Header.HeaderValue">
<summary>
Gets the file tag = MKSDLP
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.LGSFile.Header.Name">
<summary>
Gets the model name
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.MDLPFile.Header.HeaderValue">
<summary>
Gets the file tag = MKSDLP
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.OSFFile.OSFSettings.Mirror">
<summary>
(0x00 not mirrored, 0x01 X-axis mirroring, 0x02 Y-axis mirroring, 0x03 XY-axis mirroring)
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.OSFFile.OSFSettings.TransitionType">
<summary>
0x00 linear transition
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.OSFFile.OSFSettings.AccelerationType">
<summary>
(0x00: S-shaped acceleration, 0x01: T-shaped acceleration, Default Value: S-shaped acceleration, currently only supports S-shaped acceleration)
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.OSFFile.OSFLayerDef.Mark">
<summary>
OD OA begins, indicating that the model + support is included; the beginning of 0D 0B, indicating that the layer only has support data
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.OSLAFile.Preview.ResolutionX">
<summary>
Gets the X dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.OSLAFile.Preview.ResolutionY">
<summary>
Gets the Y dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.OSLAFile.Preview.ImageLength">
<summary>
Gets the image length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.Mark">
<summary>
Gets the file mark placeholder
Fixed to "ANYCUBIC"
00
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.Version">
<summary>
Gets the file format version
0C
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.NumberOfTables">
<summary>
Gets the area num
10, 4 for v1, 5 for v515, 8 for v516?
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.HeaderAddress">
<summary>
Gets the header start address
14
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.SoftwareAddress">
<summary>
18
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.PreviewAddress">
<summary>
Gets the preview start offset
1C
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.LayerImageColorTableAddress">
<summary>
20, Spotted on version 515 only
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.LayerDefinitionAddress">
<summary>
Gets the layer definition start address
24
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.ExtraAddress">
<summary>
28, Spotted on version 516 only
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.MachineAddress">
<summary>
2C, Spotted on version 516 only
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.LayerImageAddress">
<summary>
Gets layer image start address
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.FileMark.ModelAddress">
<summary>
Spotted on version 517 only
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.SectionHeader.Mark">
<summary>
Gets the section mark placeholder
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.SectionHeader.Length">
<summary>
Gets the length of this section
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.Section">
<summary>
30
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.PixelSizeUm">
<summary>
40
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.LayerHeight">
<summary>
Layer height in mm
44
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.ExposureTime">
<summary>
48
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.WaitTimeBeforeCure">
<summary>
4C
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.BottomExposureTime">
<summary>
50
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.BottomLayersCount">
<summary>
54
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.LiftHeight">
<summary>
58
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.LiftSpeed">
<summary>
Gets the lift speed in mm/s
5C
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.RetractSpeed">
<summary>
Gets the retract speed in mm/s
60
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.VolumeMl">
<summary>
64
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.AntiAliasing">
<summary>
68
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.ResolutionX">
<summary>
6C
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.ResolutionY">
<summary>
70
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.WeightG">
<summary>
74
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.Price">
<summary>
78
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.PriceCurrencySymbol">
<summary>
24 00 00 00 $ or ¥ C2 A5 00 00 or € = E2 82 AC 00
7C
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.PerLayerOverride">
<summary>
80
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.PrintTime">
<summary>
84
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.TransitionLayerCount">
<summary>
88, spotted on 516
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Header.TransitionLayerType">
<summary>
8C, spotted on 516
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.HeaderV516.AdvancedMode">
<summary>
0 = Basic mode | 1 = Advanced mode which allows TSMC
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.PhotonWorkshopFile.Preview">
<summary>
The files contain two preview images.
These are shown on the printer display when choosing which file to print, sparing the poor printer from needing to render a 3D image from scratch.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Preview.Section">
<summary>
90
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Preview.ResolutionX">
<summary>
Gets the image width, in pixels.
A0
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Preview.Mark">
<summary>
Gets the operation mark 'x'
A4
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.Preview.ResolutionY">
<summary>
Gets the image height, in pixels.
A8
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.LayerDef.DataAddress">
<summary>
Gets the layer image offset to encoded layer data, and its length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.LayerDef.DataLength">
<summary>
Gets the layer image length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.LayerDef.ExposureTime">
<summary>
Gets the exposure time for this layer, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.LayerDef.LayerHeight">
<summary>
Gets the layer height for this layer, measured in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PhotonWorkshopFile.LayerDefinition.Section">
<summary>
1269C
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.Magic">
<summary>
Gets a magic number identifying the file type.
0x12fd_0019 for cbddlp
0x12fd_0086 for ctb
0x9FDA83AE for phz
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.Version">
<summary>
Gets the software version
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LayerHeightMilimeter">
<summary>
Gets the layer height setting used at slicing, in millimeters. Actual height used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LayerExposureSeconds">
<summary>
Gets the exposure time setting used at slicing, in seconds, for normal (non-bottom) layers, respectively. Actual time used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BottomExposureSeconds">
<summary>
Gets the exposure time setting used at slicing, in seconds, for bottom layers. Actual time used by the machine is in the layer table.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BottomLayersCount">
<summary>
Gets number of layers configured as "bottom." Note that this field appears in both the file header and ExtConfig..
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.ResolutionX">
<summary>
Gets the printer resolution along X axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.ResolutionY">
<summary>
Gets the printer resolution along Y axis, in pixels. This information is critical to correctly decoding layer images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.PreviewLargeOffsetAddress">
<summary>
Gets the file offsets of ImageHeader records describing the larger preview images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LayersDefinitionOffsetAddress">
<summary>
Gets the file offset of a table of LayerHeader records giving parameters for each printed layer.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LayerCount">
<summary>
Gets the number of records in the layer table for the first level set. In ctb files, thats equivalent to the total number of records, but records may be multiplied in antialiased cbddlp files.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.PreviewSmallOffsetAddress">
<summary>
Gets the file offsets of ImageHeader records describing the smaller preview images.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.PrintTime">
<summary>
Gets the estimated duration of print, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.ProjectorType">
<summary>
Gets the records whether this file was generated assuming normal (0) or mirrored (1) image projection. LCD printers are "mirrored" for this purpose.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.AntiAliasLevel">
<summary>
Gets the number of times each layer image is repeated in the file.
This is used to implement antialiasing in cbddlp files. When greater than 1,
the layer table will actually contain layer_table_count * level_set_count entries.
See the section on antialiasing for details.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LightPWM">
<summary>
Gets the PWM duty cycle for the UV illumination source on normal levels, respectively.
This appears to be an 8-bit quantity where 0xFF is fully on and 0x00 is fully off.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BottomLightPWM">
<summary>
Gets the PWM duty cycle for the UV illumination source on bottom levels, respectively.
This appears to be an 8-bit quantity where 0xFF is fully on and 0x00 is fully off.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.OverallHeightMilimeter">
<summary>
Gets the height of the model described by this file, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BedSizeX">
<summary>
Gets dimensions of the printers X output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BedSizeY">
<summary>
Gets dimensions of the printers Y output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BedSizeZ">
<summary>
Gets dimensions of the printers Z output volume, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.EncryptionKey">
<summary>
Gets the key used to encrypt layer data, or 0 if encryption is not used.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BottomLightOffDelay">
<summary>
Gets the light off time setting used at slicing, for bottom layers, in seconds. Actual time used by the machine is in the layer table. Note that light_off_time_s appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LightOffDelay">
<summary>
Gets the light off time setting used at slicing, for normal layers, in seconds. Actual time used by the machine is in the layer table. Note that light_off_time_s appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BottomLayersCount2">
<summary>
Gets number of layers configured as "bottom." Note that this field appears in both the file header and ExtConfig.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BottomLiftHeight">
<summary>
Gets the distance to lift the build platform away from the vat after bottom layers, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.BottomLiftSpeed">
<summary>
Gets the speed at which to lift the build platform away from the vat after bottom layers, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LiftHeight">
<summary>
Gets the distance to lift the build platform away from the vat after normal layers, in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.LiftSpeed">
<summary>
Gets the speed at which to lift the build platform away from the vat after normal layers, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.RetractSpeed">
<summary>
Gets the speed to use when the build platform re-approaches the vat after lift, in millimeters per minute.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.VolumeMl">
<summary>
Gets the estimated required resin, measured in milliliters. The volume number is derived from the model.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.WeightG">
<summary>
Gets the estimated grams, derived from volume using configured factors for density.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.CostDollars">
<summary>
Gets the estimated cost based on currency unit the user had configured. Derived from volume using configured factors for density and cost.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.MachineNameAddress">
<summary>
Gets the machine name offset to a string naming the machine type, and its length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.MachineNameSize">
<summary>
Gets the machine size in bytes
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.MachineName">
<summary>
Gets the machine name. string is not nul-terminated.
The character encoding is currently unknown — all observed files in the wild use 7-bit ASCII characters only.
Note that the machine type here is set in the software profile, and is not the name the user assigned to the machine.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.EncryptionMode">
<summary>
Gets the parameter used to control encryption.
Not totally understood. 0 for cbddlp files, 0xF for ctb files, 0x1c (28) for phz
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Header.ModifiedTimestampMinutes">
<summary>
Gets the minutes since Jan 1, 1970 UTC
</summary>
</member>
<member name="T:UVtools.Core.FileFormats.PHZFile.Preview">
<summary>
The files contain two preview images.
These are shown on the printer display when choosing which file to print, sparing the poor printer from needing to render a 3D image from scratch.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Preview.ResolutionX">
<summary>
Gets the X dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Preview.ResolutionY">
<summary>
Gets the Y dimension of the preview image, in pixels.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Preview.ImageOffset">
<summary>
Gets the image offset of the encoded data blob.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.Preview.ImageLength">
<summary>
Gets the image length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.LayerDef.PositionZ">
<summary>
Gets the build platform Z position for this layer, measured in millimeters.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.LayerDef.ExposureTime">
<summary>
Gets the exposure time for this layer, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.LayerDef.LightOffDelay">
<summary>
Gets how long to keep the light off after exposing this layer, in seconds.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.LayerDef.DataAddress">
<summary>
Gets the layer image offset to encoded layer data, and its length in bytes.
</summary>
</member>
<member name="P:UVtools.Core.FileFormats.PHZFile.LayerDef.DataSize">
<summary>
Gets the layer image length in bytes.
</summary>
</member>
<member name="F:UVtools.Core.GCode.GCodeBuilder.GCodeTimeUnits.Milliseconds">
<summary>
ms
</summary>
</member>
<member name="F:UVtools.Core.GCode.GCodeBuilder.GCodeTimeUnits.Seconds">
<summary>
s
</summary>
</member>
<member name="F:UVtools.Core.GCode.GCodeBuilder.GCodeSpeedUnits.MillimetersPerSecond">
<summary>
mm/s
</summary>
</member>
<member name="F:UVtools.Core.GCode.GCodeBuilder.GCodeSpeedUnits.MillimetersPerMinute">
<summary>
mm/m
</summary>
</member>
<member name="F:UVtools.Core.GCode.GCodeBuilder.GCodeSpeedUnits.CentimetersPerMinute">
<summary>
cm/m
</summary>
</member>
<member name="F:UVtools.Core.GCode.GCodeBuilder.GCodeShowImagePositions.FirstLine">
<summary>
Show image at start of each layer block commands
</summary>
</member>
<member name="F:UVtools.Core.GCode.GCodeBuilder.GCodeShowImagePositions.WhenRequired">
<summary>
Show image just before exposing / turning LED ON
</summary>
</member>
<member name="M:UVtools.Core.GCode.GCodeBuilder.ConvertFromSeconds(System.Single)">
<summary>
Converts seconds to current gcode norm
</summary>
<param name="seconds"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.GCode.GCodeBuilder.ConvertFromMillimetersPerMinute(System.Single)">
<summary>
Converts speed in mm/min to current gcode norm
</summary>
<param name="mmMin">Millimeters per minute</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.GCode.GCodeBuilder.ConvertToSeconds(System.Single)">
<summary>
Converts time from current gcode norm in <see cref="P:UVtools.Core.GCode.GCodeBuilder.GCodeTimeUnit"/> to s
</summary>
<param name="time">Time in <see cref="P:UVtools.Core.GCode.GCodeBuilder.GCodeTimeUnit"/></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.GCode.GCodeBuilder.ConvertToMillimetersPerMinute(System.Single)">
<summary>
Converts speed from current gcode norm in <see cref="P:UVtools.Core.GCode.GCodeBuilder.GCodeSpeedUnit"/> to mm/min
</summary>
<param name="speed">Speed in <see cref="P:UVtools.Core.GCode.GCodeBuilder.GCodeSpeedUnit"/></param>
<returns></returns>
</member>
<member name="P:UVtools.Core.GCode.GCodeCommand.Enabled">
<summary>
Gets or sets if this command is enabled
</summary>
</member>
<member name="P:UVtools.Core.GCode.GCodeCommand.Command">
<summary>
Gets or sets the command name
</summary>
</member>
<member name="P:UVtools.Core.GCode.GCodeCommand.Arguments">
<summary>
Gets or sets the arguments for this command
</summary>
</member>
<member name="P:UVtools.Core.GCode.GCodeCommand.Comment">
<summary>
Gets or sets the comment
</summary>
</member>
<member name="M:UVtools.Core.GCode.GCodeLayer.SetLayer(System.Boolean)">
<summary>
Set gathered data to the layer
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Apertures.Aperture.Index">
<summary>
Gets the index of this aperture
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Apertures.Aperture.Name">
<summary>
Gets the aperture name
</summary>
</member>
<member name="F:UVtools.Core.Gerber.GerberZerosSuppressionType.NoSuppression">
<summary>
Do not omit zeros
</summary>
</member>
<member name="F:UVtools.Core.Gerber.GerberZerosSuppressionType.Leading">
<summary>
Omit left zeros
</summary>
</member>
<member name="F:UVtools.Core.Gerber.GerberZerosSuppressionType.Trail">
<summary>
Omit right zeros
</summary>
</member>
<member name="T:UVtools.Core.Gerber.GerberDocument">
<summary>
https://www.ucamco.com/files/downloads/file_en/456/gerber-layer-format-specification-revision-2022-02_en.pdf?ac97011bf6bce9aaf0b1aac43d84b05f
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Macro.Name">
<summary>
Gets the macro name
</summary>
</member>
<member name="T:UVtools.Core.Gerber.Primitives.CenterLinePrimitive">
<summary>
A vector line is a rectangle defined by its line width, start and end points. The line ends are rectangular.
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CenterLinePrimitive.ExposureExpression">
<summary>
Exposure off/on (0/1)
1
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CenterLinePrimitive.WidthExpression">
<summary>
Width ≥ 0
2
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CenterLinePrimitive.HeightExpression">
<summary>
Height ≥ 0
3
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CenterLinePrimitive.CenterXExpression">
<summary>
Center point X coordinate
4
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CenterLinePrimitive.CenterYExpression">
<summary>
Center point Y coordinate
5
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CenterLinePrimitive.RotationExpression">
<summary>
Rotation angle, in degrees counterclockwise, a decimal.
The primitive is rotated around the origin of the macro definition, i.e. the (0, 0) point of macro coordinates.
6
</summary>
</member>
<member name="T:UVtools.Core.Gerber.Primitives.CirclePrimitive">
<summary>
A circle primitive is defined by its center point and diameter.
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CirclePrimitive.ExposureExpression">
<summary>
Exposure off/on (0/1)
1
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CirclePrimitive.DiameterExpression">
<summary>
Diameter ≥ 0
2
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CirclePrimitive.CenterXExpression">
<summary>
Center X coordinate.
3
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CirclePrimitive.CenterYExpression">
<summary>
Center Y coordinate.
4
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CirclePrimitive.RotationExpression">
<summary>
Rotation angle, in degrees counterclockwise, a decimal.
The primitive is rotated around the origin of the macro definition, i.e. the (0, 0) point of macro coordinates.
5
</summary>
</member>
<member name="T:UVtools.Core.Gerber.Primitives.CommentPrimitive">
<summary>
The comment primitive has no effect on the image but adds human-readable comments in an AM command.
The comment primitive starts with the 0 code followed by a space and then a single-line text string.
The text string follows the syntax for strings in section 3.4.3.
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.CommentPrimitive.Comment">
<summary>
The comment
1
</summary>
</member>
<member name="T:UVtools.Core.Gerber.Primitives.OutlinePrimitive">
<summary>
An outline primitive is an area defined by its outline or contour.
The outline is a polygon, consisting of linear segments only, defined by its start vertex and n subsequent vertices.
The outline must be closed, i.e. the last vertex must be equal to the start vertex.
The outline must comply with all the requirements of a contour according to 4.10.3.
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.OutlinePrimitive.ExposureExpression">
<summary>
Exposure off/on (0/1)
1
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.OutlinePrimitive.VerticesCountExpression">
<summary>
The number of vertices of the outline = the number of coordinate pairs minus one. An integer ≥3.
2
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.OutlinePrimitive.CoordinatesExpression">
<summary>
subsequent X and Y coordinates.
The X and Y coordinates are not modal: both X and Y must be specified for all points.
2+n
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.OutlinePrimitive.RotationExpression">
<summary>
Rotation angle, in degrees counterclockwise, a decimal.
The primitive is rotated around the origin of the macro definition, i.e. the (0, 0) point of macro coordinates.
</summary>
</member>
<member name="T:UVtools.Core.Gerber.Primitives.PolygonPrimitive">
<summary>
A polygon primitive is a regular polygon defined by the number of vertices n, the center point and the diameter of the circumscribed circle.
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.PolygonPrimitive.ExposureExpression">
<summary>
Exposure off/on (0/1)
1
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.PolygonPrimitive.VerticesCountExpression">
<summary>
Diameter ≥ 0
2
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.PolygonPrimitive.CenterXExpression">
<summary>
Center X coordinate.
3
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.PolygonPrimitive.CenterYExpression">
<summary>
Center Y coordinate.
4
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.PolygonPrimitive.DiameterExpression">
<summary>
Diameter ≥ 0
5
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.PolygonPrimitive.RotationExpression">
<summary>
Rotation angle, in degrees counterclockwise, a decimal.
The primitive is rotated around the origin of the macro definition, i.e. the (0, 0) point of macro coordinates.
6
</summary>
</member>
<member name="T:UVtools.Core.Gerber.Primitives.VectorLinePrimitive">
<summary>
A vector line is a rectangle defined by its line width, start and end points. The line ends are rectangular.
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.VectorLinePrimitive.ExposureExpression">
<summary>
Exposure off/on (0/1)
1
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.VectorLinePrimitive.LineWidthExpression">
<summary>
Width of the line ≥ 0
2
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.VectorLinePrimitive.StartXExpression">
<summary>
Start point X coordinate
3
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.VectorLinePrimitive.StartYExpression">
<summary>
Start point Y coordinate
4
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.VectorLinePrimitive.EndXExpression">
<summary>
End point X coordinate
5
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.VectorLinePrimitive.EndYExpression">
<summary>
Start point Y coordinate
6
</summary>
</member>
<member name="P:UVtools.Core.Gerber.Primitives.VectorLinePrimitive.RotationExpression">
<summary>
Rotation angle, in degrees counterclockwise, a decimal.
The primitive is rotated around the origin of the macro definition, i.e. the (0, 0) point of macro coordinates.
7
</summary>
</member>
<member name="T:UVtools.Core.Helpers">
<summary>
A helper class with utilities
</summary>
</member>
<member name="P:UVtools.Core.Helpers.Serializer">
<summary>
Gets the <see cref="T:BinarySerialization.BinarySerializer"/> instance
</summary>
</member>
<member name="P:UVtools.Core.Layers.Issue.Parent">
<summary>
Gets the issue type associated
</summary>
</member>
<member name="P:UVtools.Core.Layers.Issue.Layer">
<summary>
Gets the layer where this issue is present
</summary>
</member>
<member name="P:UVtools.Core.Layers.Issue.LayerIndex">
<summary>
Gets the layer index
</summary>
</member>
<member name="P:UVtools.Core.Layers.Issue.BoundingRectangle">
<summary>
Gets the bounding rectangle of the area
</summary>
</member>
<member name="P:UVtools.Core.Layers.Issue.PixelsCount">
<summary>
Gets the number of pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.Issue.Area">
<summary>
Gets the area of the issue
</summary>
</member>
<member name="P:UVtools.Core.Layers.IssueOfContours.Contours">
<summary>
Gets the points contours of the issue
</summary>
</member>
<member name="P:UVtools.Core.Layers.IssueOfPoints.Points">
<summary>
Gets the points containing the coordinates of the issue
</summary>
</member>
<member name="T:UVtools.Core.Layers.Layer">
<summary>
Represent a Layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.SlicerFile">
<summary>
Gets or sets the parent SlicerFile
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.NonZeroPixelCount">
<summary>
Gets the number of non zero pixels on this layer image
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.NonZeroPixelRatio">
<summary>
Gets the ratio between non zero pixels and display number of pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.NonZeroPixelPercentage">
<summary>
Gets the percentage of non zero pixels relative to the display number of pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsEmpty">
<summary>
Gets if this layer is empty/all black pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.Area">
<summary>
Gets the layer area (XY) in mm^2
Pixel size * number of pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.Volume">
<summary>
Gets the layer volume (XYZ) in mm^3
Pixel size * number of pixels * layer height
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.BoundingRectangle">
<summary>
Gets the bounding rectangle for the image area
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.BoundingRectangleMillimeters">
<summary>
Gets the bounding rectangle for the image area in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsFirstLayer">
<summary>
Gets if is the first layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsIntermediateLayer">
<summary>
Gets if layer is between first and last layer, aka, not first nor last layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsLastLayer">
<summary>
Gets if is the last layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsBottomLayer">
<summary>
Gets if is in the bottom layer group
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsNormalLayer">
<summary>
Gets if is in the normal layer group
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsTransitionLayer">
<summary>
Gets if this layer is also an transition layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.PreviousLayer">
<summary>
Gets the previous layer, returns null if no previous layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.PreviousHeightLayer">
<summary>
Gets the previous layer with a different height from the current, returns null if no previous layer
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetPreviousLayerWithAtLeastPixelCountOf(System.UInt32)">
<summary>
Gets the previous layer matching at least <param name="numberOfPixels"/> pixels, returns null if no previous layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.NextLayer">
<summary>
Gets the next layer, returns null if no next layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.NextHeightLayer">
<summary>
Gets the next layer with a different height from the current, returns null if no next layer
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetNextLayerWithAtLeastPixelCountOf(System.UInt32)">
<summary>
Gets the next layer matching at least <param name="numberOfPixels"/> pixels, returns null if no next layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.Index">
<summary>
Gets the layer index
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.Number">
<summary>
Gets the layer number, 1 started
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.PositionZ">
<summary>
Gets or sets the absolute layer position on Z in mm
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.RelativePositionZ">
<summary>
Gets the relative layer position on Z in mm (Relative to the previous layer)
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.WaitTimeBeforeCure">
<summary>
Gets or sets the wait time in seconds before cure the layer
AKA: Light-off delay
Chitubox: Rest time after retract
Lychee: Wait before print
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.ExposureTime">
<summary>
Gets or sets the exposure time in seconds
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.WaitTimeAfterCure">
<summary>
Gets or sets the wait time in seconds after cure the layer
Chitubox: Rest time before lift
Lychee: Wait after print
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LightOffDelay">
<summary>
Gets or sets the layer off time in seconds
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LiftHeightTotal">
<summary>
Gets: Total lift height (lift1 + lift2)
Sets: Lift1 with value and lift2 with 0
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LiftHeight">
<summary>
Gets or sets the lift height in mm
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LiftSpeed">
<summary>
Gets or sets the speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LiftHeight2">
<summary>
Gets or sets the lift height in mm
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LiftSpeed2">
<summary>
Gets or sets the speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.RetractHeightTotal">
<summary>
Gets: Total retract height (retract1 + retract2) alias of <see cref="P:UVtools.Core.Layers.Layer.LiftHeightTotal"/>
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.RetractHeight">
<summary>
Gets the retract height in mm
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.RetractSpeed">
<summary>
Gets the speed in mm/min for the retracts
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.RetractHeight2">
<summary>
Gets or sets the second retract height in mm
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.RetractSpeed2">
<summary>
Gets the speed in mm/min for the retracts
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LightPWM">
<summary>
Gets or sets the pwm value from 0 to 255
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.MinimumSpeed">
<summary>
Gets the minimum used speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.MaximumSpeed">
<summary>
Gets the maximum used speed in mm/min
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.CanExpose">
<summary>
Gets if this layer can be exposed to UV light
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LayerHeight">
<summary>
Gets the layer height in millimeters of this layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.MaterialMilliliters">
<summary>
Gets the computed material milliliters spent on this layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.MaterialMillilitersPercent">
<summary>
Gets the computed material milliliters percentage compared to the rest of the model
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.CompressionCodec">
<summary>
Gets or sets the compression method used to cache the image
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.CompressedBytes">
<summary>
Gets or sets layer image compressed data
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.HaveImage">
<summary>
True if this layer have an valid initialized image, otherwise false
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LayerMat">
<summary>
Gets or sets a new image instance
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LayerMatBoundingRectangle">
<summary>
Gets the layer mat with roi of it bounding rectangle
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.LayerMatModelBoundingRectangle">
<summary>
Gets the layer mat with roi of model bounding rectangle
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetLayerMat(System.Drawing.Rectangle)">
<summary>
Gets the layer mat with a specified roi
</summary>
<param name="roi">Region of interest</param>
<returns></returns>
</member>
<member name="P:UVtools.Core.Layers.Layer.BrgMat">
<summary>
Gets a new Brg image instance
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.Filename">
<summary>
Gets a computed layer filename, padding zeros are equal to layer count digits
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsModified">
<summary>
Gets if layer image has been modified
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsUsingGlobalParameters">
<summary>
Gets if this layer have same value parameters as global settings
</summary>
</member>
<member name="P:UVtools.Core.Layers.Layer.IsUsingTSMC">
<summary>
True if this layer is using TSMC values, otherwise false
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.ResetParameters">
<summary>
Reset all parameters to the default values from the global parameters
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetArea">
<summary>
Gets the layer area (XY) in mm^2
Pixel size * number of pixels
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetArea(System.Byte)">
<summary>
Gets the layer area (XY) in mm^2
Pixel size * number of pixels
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetVolume">
<summary>
Gets the layer volume (XYZ) in mm^3
Pixel size * number of pixels * layer height
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetVolume(System.Byte)">
<summary>
Gets the layer volume (XYZ) in mm^3
Pixel size * number of pixels * layer height
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetWaitTimeBeforeCure">
<summary>
Gets the wait time before cure, if not available calculate it from light off delay
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Layers.Layer.SetWaitTimeBeforeCureOrLightOffDelay(System.Single,System.Boolean)">
<summary>
Attempt to set wait time before cure if supported, otherwise fallback to light-off delay
</summary>
<param name="time">The time to set</param>
<param name="zeroLightOffDelayCalculateBase">When true and time is zero, it will calculate light-off delay without extra time, otherwise false to set light-off delay to 0 when time is 0</param>
</member>
<member name="M:UVtools.Core.Layers.Layer.SetNoDelays">
<summary>
Zero all 'wait times / delays' for this layer
</summary>
</member>
<member name="M:UVtools.Core.Layers.Layer.CopyParametersTo(UVtools.Core.Layers.Layer)">
<summary>
Copy all parameters from this layer to an target layer
</summary>
<param name="layer"></param>
</member>
<member name="M:UVtools.Core.Layers.Layer.CopyExposureTo(UVtools.Core.Layers.Layer)">
<summary>
Copy all exposure parameters from this layer to an target layer
</summary>
<param name="layer"></param>
</member>
<member name="M:UVtools.Core.Layers.Layer.CopyWaitTimesTo(UVtools.Core.Layers.Layer)">
<summary>
Copy all wait parameters from this layer to an target layer
</summary>
<param name="layer"></param>
</member>
<member name="M:UVtools.Core.Layers.Layer.CopyLiftTo(UVtools.Core.Layers.Layer)">
<summary>
Copy all lift parameters from this layer to an target layer
</summary>
<param name="layer"></param>
</member>
<member name="M:UVtools.Core.Layers.Layer.CopyImageTo(UVtools.Core.Layers.Layer)">
<summary>
Copy the image and related parameters from this layer to an target layer
</summary>
<param name="layer"></param>
</member>
<member name="M:UVtools.Core.Layers.Layer.GetBoundingRectangleUnion(UVtools.Core.Layers.Layer[])">
<summary>
Gets the bounding rectangle that is the union of a collection of layers
</summary>
<param name="layers">Layer collection</param>
<returns></returns>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.Enabled">
<summary>
Gets or sets if the detection is enabled
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.WhiteListLayers">
<summary>
Gets or sets a list of layers to check for islands, absent layers will not be checked.
Set to null to check every layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.EnhancedDetection">
<summary>
Combines the island and overhang detections for a better more realistic detection and to discard false-positives. (Slower)
If enabled, and when a island is found, it will check for overhangs on that same island, if no overhang found then the island will be discarded and considered safe, otherwise it will flag as an island issue.
Note: Overhangs settings will be used to configure the detection. Enabling Overhangs is not required for this procedure to work.
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.AllowDiagonalBonds">
<summary>
Gets the setting for whether or not diagonal bonds are considered when evaluation islands.
If true, all 8 neighbors of a pixel (including diagonals) will be considered when finding
individual components on the layer, if false only 4 neighbors (right, left, above, below)
will be considered..
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.BinaryThreshold">
<summary>
Gets or sets the binary threshold, all pixels below this value will turn in black, otherwise white
Set to 0 to disable this operation
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.RequiredAreaToProcessCheck">
<summary>
Gets the required pixel area to consider process a island (0-65535)
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.RequiredPixelBrightnessToProcessCheck">
<summary>
Gets the required brightness for check a pixel under a island (0-255)
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.RequiredPixelsToSupport">
<summary>
Gets the required number of pixels to support a island and discard it as a issue (0-255)
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.RequiredPixelsToSupportMultiplier">
<summary>
Gets the required multiplier from the island pixels to support same island and discard it as a issue
</summary>
</member>
<member name="P:UVtools.Core.Layers.IslandDetectionConfiguration.RequiredPixelBrightnessToSupport">
<summary>
Gets the required brightness of supporting pixels to count as a valid support (0-255)
</summary>
</member>
<member name="T:UVtools.Core.Layers.OverhangDetectionConfiguration">
<summary>
Overhang configuration
</summary>
</member>
<member name="P:UVtools.Core.Layers.OverhangDetectionConfiguration.Enabled">
<summary>
Gets or sets if the detection is enabled
</summary>
</member>
<member name="P:UVtools.Core.Layers.OverhangDetectionConfiguration.WhiteListLayers">
<summary>
Gets or sets a list of layers to check for overhangs, absent layers will not be checked.
Set to null to check every layer
</summary>
</member>
<member name="P:UVtools.Core.Layers.OverhangDetectionConfiguration.IndependentFromIslands">
<summary>
Gets or sets if should take in consideration the islands, if yes a island can't be a overhang at same time, otherwise islands and overhangs can be shared
</summary>
</member>
<member name="P:UVtools.Core.Layers.OverhangDetectionConfiguration.RequiredPixelsToConsider">
<summary>
After compute overhangs, masses with a number of pixels bellow this number will be discarded (Not a overhang)
</summary>
</member>
<member name="P:UVtools.Core.Layers.OverhangDetectionConfiguration.ErodeIterations">
<summary>
Previous layer will be subtracted from current layer, after will erode by this value.
The survived pixels are potential overhangs.
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.Enabled">
<summary>
Gets or sets if the detection is enabled
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.StartLayerIndex">
<summary>
Gets or sets the starting layer index for the detection which will also be considered a drain layer.
Use this setting to bypass complicated rafts by selected the model first real layer.
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.BinaryThreshold">
<summary>
Gets or sets the binary threshold, all pixels below this value will turn in black, otherwise white
Set to 0 to disable this operation
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.RequiredAreaToProcessCheck">
<summary>
Gets the required area size (x*y) to consider process a hollow area (0-255)
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.RequiredBlackPixelsToDrain">
<summary>
Gets the number of black pixels required to consider a drain
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.MaximumPixelBrightnessToDrain">
<summary>
Gets the maximum pixel brightness to be a drain pixel (0-150)
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.DetectSuctionCups">
<summary>
Gets if suction cups can also be detected together with resin traps
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.RequiredAreaToConsiderSuctionCup">
<summary>
Required minimum area to be considered a suction cup
</summary>
</member>
<member name="P:UVtools.Core.Layers.ResinTrapDetectionConfiguration.RequiredHeightToConsiderSuctionCup">
<summary>
Required minimum height (in mm) to be considered a suction cup
</summary>
</member>
<member name="P:UVtools.Core.Layers.TouchingBoundDetectionConfiguration.Enabled">
<summary>
Gets if the detection is enabled
</summary>
</member>
<member name="P:UVtools.Core.Layers.TouchingBoundDetectionConfiguration.MinimumPixelBrightness">
<summary>
Gets the minimum pixel brightness to be a touching bound
</summary>
</member>
<member name="P:UVtools.Core.Layers.TouchingBoundDetectionConfiguration.MarginLeft">
<summary>
Gets or sets the margin in pixels from left edge to check for touching white pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.TouchingBoundDetectionConfiguration.MarginTop">
<summary>
Gets or sets the margin in pixels from top to check for touching white pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.TouchingBoundDetectionConfiguration.MarginRight">
<summary>
Gets or sets the margin in pixels from right edge to check for touching white pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.TouchingBoundDetectionConfiguration.MarginBottom">
<summary>
Gets or sets the margin in pixels from bottom edge to check for touching white pixels
</summary>
</member>
<member name="P:UVtools.Core.Layers.PrintHeightDetectionConfiguration.Enabled">
<summary>
Gets if the detection is enabled
</summary>
</member>
<member name="P:UVtools.Core.Layers.PrintHeightDetectionConfiguration.Offset">
<summary>
Get the offset from top to sum to printer max Z height
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.Type">
<summary>
Gets the issue type associated
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.StartLayer">
<summary>
Gets the layer where issue is present and starts
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.EndLayer">
<summary>
Gets the layer where issue ends
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.StartLayerIndex">
<summary>
Gets the layer index
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.EndLayerIndex">
<summary>
Gets the layer index
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.LayerRangeCount">
<summary>
Gets the number of layers in this range
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.TotalHeight">
<summary>
Gets the total height that represents this issue
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.BoundingRectangle">
<summary>
Gets the bounding rectangle of the area
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.PixelCount">
<summary>
Gets the area of the issue
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.Area">
<summary>
Gets the area of the issue
</summary>
</member>
<member name="P:UVtools.Core.Layers.MainIssue.Childs">
<summary>
Gets all issues inside this main issue
</summary>
</member>
<member name="P:UVtools.Core.Managers.ClipboardItem.LayerCount">
<summary>
Gets the LayerCount for this clip
</summary>
</member>
<member name="P:UVtools.Core.Managers.ClipboardItem.LayerHeight">
<summary>
Gets the LayerHeight for this clip
</summary>
</member>
<member name="P:UVtools.Core.Managers.ClipboardItem.Resolution">
<summary>
Gets the Resolution for this clip
</summary>
</member>
<member name="P:UVtools.Core.Managers.ClipboardItem.Description">
<summary>
Gets the description of this operation
</summary>
</member>
<member name="P:UVtools.Core.Managers.ClipboardManager.CurrentIndex">
<summary>
Gets the index of current item
</summary>
</member>
<member name="M:UVtools.Core.Managers.ClipboardManager.Reset">
<summary>
Clears the manager
</summary>
</member>
<member name="M:UVtools.Core.Managers.ClipboardManager.Init(UVtools.Core.FileFormats.FileFormat)">
<summary>
Clears and init clipboard
</summary>
<param name="slicerFile"></param>
</member>
<member name="M:UVtools.Core.Managers.ClipboardManager.Snapshot(UVtools.Core.Layers.Layer[])">
<summary>
Snapshot layers and prepare manager to collect modified layers with <see cref="M:UVtools.Core.Managers.ClipboardManager.Clip(System.String,UVtools.Core.Layers.Layer[],System.Boolean)"/>
</summary>
</member>
<member name="M:UVtools.Core.Managers.ClipboardManager.Clip(System.String,UVtools.Core.Layers.Layer[],System.Boolean)">
<summary>
Collect differences and create a clip
</summary>
</member>
<member name="M:UVtools.Core.Managers.ClipboardManager.Clip(UVtools.Core.Operations.Operation,UVtools.Core.Layers.Layer[],System.Boolean)">
<summary>
Collect differences and create a clip
</summary>
</member>
<member name="M:UVtools.Core.Managers.IssueManager.GetVisible">
<summary>
Gets the visible <see cref="T:UVtools.Core.Layers.MainIssue"/> aka not ignored
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Managers.KernelCacheManager.Clear">
<summary>
Clears and dispose all the cache
</summary>
</member>
<member name="M:UVtools.Core.Managers.KernelCacheManager.Dispose">
<inheritdoc />
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.SlicerFile">
<summary>
Gets the slicer file
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.CacheCount">
<summary>
Gets or sets the cache count of items to keep in memory
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.ElementsPerCache">
<summary>
Gets the number of cached elements per a cache entry
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.LayerIndexStart">
<summary>
Gets the starting layer index range
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.LayerIndexEnd">
<summary>
Gets the ending layer index range
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.CollectionSize">
<summary>
Gets the size of this collection
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.Rotate">
<summary>
Gets the image rotation to cache
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.Flip">
<summary>
Gets the image flip to cache
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.StripAntiAliasing">
<summary>
Gets if striping anti-aliasing is enabled, cache will be threshold'ed
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.Direction">
<summary>
Gets or sets the cache direction, false to go backwards, true to go forward
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.UseRawIndexInsteadOfLayerIndex">
<summary>
If enabled it will not calculate the cache index given a layer index, set this to true to use your own indexing without pair them with layers
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.AutoDispose">
<summary>
Gets or sets the auto dispose mode, it will dispose all mat's below of above passed index
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.AutoDisposeKeepLast">
<summary>
Gets or sets the amount of last mats to keep cached when <see cref="P:UVtools.Core.Managers.MatCacheManager.AutoDispose"/> is enabled
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.MatCache">
<summary>
Gets the cache mat array
</summary>
</member>
<member name="P:UVtools.Core.Managers.MatCacheManager.AfterCacheAction">
<summary>
Gets or sets the action to trigger after cache the initial <see cref="T:Emgu.CV.Mat"/>
</summary>
</member>
<member name="M:UVtools.Core.Managers.MatCacheManager.LayerIndexToCacheIndex(System.UInt32)">
<summary>
Gets the cache index from a layer index, required when layer range is not 0 started
</summary>
<param name="layerIndex"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Managers.MatCacheManager.CacheIndexToLayerIndex(System.UInt32)">
<summary>
Gets the layer index from the cache index, required when layer range is not 0 started
</summary>
<param name="index"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Managers.MatCacheManager.Get(System.UInt32)">
<summary>
Gets all cached mat's given an index
</summary>
<param name="layerIndex"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Managers.MatCacheManager.Consume(System.UInt32)">
<summary>
Consume and dispose the cached Mats for given layer index
</summary>
<param name="layerIndex"></param>
</member>
<member name="M:UVtools.Core.Managers.MatCacheManager.ClearButKeep(System.UInt32,System.UInt16)">
<summary>
Clears and dispose the cache but keep the selected index and optionally the last n indexes
</summary>
<param name="layerIndex"></param>
<param name="keepLast"></param>
</member>
<member name="M:UVtools.Core.Managers.MatCacheManager.Clear">
<summary>
Clears and dispose all the cache
</summary>
</member>
<member name="M:UVtools.Core.Managers.MatCacheManager.Dispose">
<inheritdoc />
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.Instance">
<summary>
Instance of <see cref="T:UVtools.Core.Managers.MaterialManager"/> (singleton)
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.BottlesInStock">
<summary>
Gets the total number of bottles in stock
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.OwnedBottles">
<summary>
Gets the total number of bottles ever owned
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.ConsumedVolume">
<summary>
Gets the total of consumed volume in milliliters
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.ConsumedVolumeLiters">
<summary>
Gets the total of consumed volume in liters
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.VolumeInStock">
<summary>
Gets the total volume in stock in milliliters
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.VolumeInStockLiters">
<summary>
Gets the total volume in stock in liters
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.TotalCost">
<summary>
Gets the total costs
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.PrintTime">
<summary>
Gets the total print time in hours
</summary>
</member>
<member name="P:UVtools.Core.Managers.MaterialManager.PrintTimeSpan">
<summary>
Gets the total print time
</summary>
</member>
<member name="M:UVtools.Core.Managers.MaterialManager.Load">
<summary>
Load settings from file
</summary>
</member>
<member name="M:UVtools.Core.Managers.MaterialManager.Save">
<summary>
Save settings to file
</summary>
</member>
<member name="P:UVtools.Core.MeshFormats.MeshFile.FileFormat">
<summary>
Gets the file format for this mesh
</summary>
</member>
<member name="P:UVtools.Core.MeshFormats.MeshFile.SlicerFile">
<summary>
Gets the <see cref="P:UVtools.Core.MeshFormats.MeshFile.FileFormat"/> from model export
</summary>
</member>
<member name="P:UVtools.Core.MeshFormats.MeshFile.FilePath">
<summary>
Gets the file path of the stream
</summary>
</member>
<member name="P:UVtools.Core.MeshFormats.MeshFile.Filename">
<summary>
Gets the file name with extension from <see cref="P:UVtools.Core.MeshFormats.MeshFile.FilePath"/>
</summary>
</member>
<member name="P:UVtools.Core.MeshFormats.MeshFile.MeshStream">
<summary>
Gets the current file stream
</summary>
</member>
<member name="P:UVtools.Core.MeshFormats.MeshFile.VertexCount">
<summary>
Gets the number of vertexes, this is often triangle count * 3
</summary>
</member>
<member name="P:UVtools.Core.MeshFormats.MeshFile.TriangleCount">
<summary>
Gets the number of triangles
</summary>
</member>
<member name="M:UVtools.Core.MeshFormats.MeshFile.BeginWrite">
<summary>
Call once before write content to the file, use this to build up the header if any
</summary>
</member>
<member name="M:UVtools.Core.MeshFormats.MeshFile.WriteTriangle(System.Numerics.Vector3,System.Numerics.Vector3,System.Numerics.Vector3,System.Numerics.Vector3)">
<summary>
Writes an triangle to the file
</summary>
<param name="p1"></param>
<param name="p2"></param>
<param name="p3"></param>
<param name="normal"></param>
</member>
<member name="M:UVtools.Core.MeshFormats.MeshFile.EndWrite">
<summary>
Call once before close the file, use this to build up the footer if any
</summary>
</member>
<member name="M:UVtools.Core.MeshFormats.MeshFile.Dispose">
<inheritdoc />
</member>
<member name="P:UVtools.Core.Network.MappedDevice.IsEnabled">
<summary>
Gets or sets if this device is enabled
</summary>
</member>
<member name="P:UVtools.Core.Network.MappedDevice.Path">
<summary>
Gets or sets the full path for the location
</summary>
</member>
<member name="P:UVtools.Core.Network.MappedDevice.Name">
<summary>
Gets or sets the path name alias
</summary>
</member>
<member name="P:UVtools.Core.Network.MappedDevice.CompatibleExtensions">
<summary>
Gets or sets the compatible extensions with this device.
Empty or null to be compatible with everything
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinter.Name">
<summary>
Gets or sets the alias name for this printer.
Not used on requests
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinter.Host">
<summary>
Gets or sets the host/ip for the requests
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinter.Port">
<summary>
Gets or sets the host port for the requests.
Use 0 to not use a port
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinter.CompatibleExtensions">
<summary>
Gets or sets the compatible extensions with this device.
Empty or null to be compatible with everything
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinter.IsValid">
<summary>
Gets if this host is valid
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinterRequest.Type">
<summary>
Gets or sets this request type
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinterRequest.Method">
<summary>
Gets or sets this request method
</summary>
</member>
<member name="P:UVtools.Core.Network.RemotePrinterRequest.Path">
<summary>
Gets or sets the request path, eg: print/file/{0}
</summary>
</member>
<member name="M:UVtools.Core.Network.RemotePrinterRequest.GetFormattedPath(System.Object[])">
<summary>
Gets the path with formatted arguments
</summary>
<param name="parameters"></param>
<returns></returns>
</member>
<member name="T:UVtools.Core.Objects.BindableBase">
<summary>
Implementation of <see cref="T:System.ComponentModel.INotifyPropertyChanged" /> to simplify models.
</summary>
</member>
<member name="F:UVtools.Core.Objects.BindableBase._propertyChanged">
<summary>
Multicast event for property change notifications.
</summary>
</member>
<member name="M:UVtools.Core.Objects.BindableBase.RaisePropertyChanged(System.String)">
<summary>
Notifies listeners that a property value has changed.
</summary>
<param name="propertyName">
Name of the property used to notify listeners. This
value is optional and can be provided automatically when invoked from compilers
that support <see cref="T:System.Runtime.CompilerServices.CallerMemberNameAttribute" />.
</param>
</member>
<member name="P:UVtools.Core.Objects.ExposureItem.LayerHeight">
<summary>
Gets or sets the layer height in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Objects.ExposureItem.BottomExposure">
<summary>
Gets or sets the bottom exposure in seconds
</summary>
</member>
<member name="P:UVtools.Core.Objects.ExposureItem.Exposure">
<summary>
Gets or sets the bottom exposure in seconds
</summary>
</member>
<member name="P:UVtools.Core.Objects.ExposureItem.Brightness">
<summary>
Gets or sets the brightness level
</summary>
</member>
<member name="P:UVtools.Core.Objects.MappedProcess.IsEnabled">
<summary>
Gets or sets if this device is enabled
</summary>
</member>
<member name="P:UVtools.Core.Objects.MappedProcess.ApplicationPath">
<summary>
Gets or sets the full path for the application
</summary>
</member>
<member name="P:UVtools.Core.Objects.MappedProcess.Name">
<summary>
Gets or sets the path name alias
</summary>
</member>
<member name="P:UVtools.Core.Objects.MappedProcess.Arguments">
<summary>
Gets or sets the arguments for the application
</summary>
</member>
<member name="P:UVtools.Core.Objects.MappedProcess.CompatibleExtensions">
<summary>
Gets or sets the compatible extensions with this device.
Empty or null to be compatible with everything
</summary>
</member>
<member name="T:UVtools.Core.Objects.Material">
<summary>
Represents a material to feed in the printer
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.BottleVolume">
<summary>
Gets or sets the bottle volume in milliliters
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.BottleWeight">
<summary>
Gets or sets the bottle weight in grams
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.Density">
<summary>
Gets or sets the material density in g/ml
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.BottleCost">
<summary>
Gets or sets the bottle cost
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.BottlesInStock">
<summary>
Gets or sets the number of bottles in stock
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.BottleRemainingVolume">
<summary>
Gets or sets the current bottle remaining material in milliliters
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.VolumeInStock">
<summary>
Gets the total available volume in stock in milliliters
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.ConsumedBottles">
<summary>
Gets the number of consumed bottles
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.OwnedBottles">
<summary>
Gets the total number of owned bottles
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.ConsumedVolume">
<summary>
Gets or sets the total number of consumed volume in milliliters
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.ConsumedVolumeLiters">
<summary>
Gets total number of consumed volume in liters
</summary>
</member>
<member name="P:UVtools.Core.Objects.Material.PrintTime">
<summary>
Gets or sets the total print time using with material in hours
</summary>
</member>
<member name="M:UVtools.Core.Objects.Material.GetVolumeCost(System.Decimal)">
<summary>
Gets the cost for a given volume
</summary>
<param name="volume">Volume in ml</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Objects.Material.GetVolumeGrams(System.Decimal)">
<summary>
Gets the grams for a given volume
</summary>
<param name="volume">Volume in ml</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Objects.Material.Consume(System.Decimal,System.Double)">
<summary>
Consume material from current bottle and manage stock
</summary>
<param name="volume">Volume to consume in milliliters</param>
<param name="printSeconds">Time in seconds it took to print</param>
<returns>True if still have bottles in stock, otherwise false</returns>
</member>
<member name="M:UVtools.Core.Objects.Material.AddPrintTimeSeconds(System.Double)">
<summary>
Add print time with this material
</summary>
<param name="seconds">Seconds to add</param>
</member>
<member name="T:UVtools.Core.Objects.NullTerminatedUintStringBigEndian">
<summary>
A string that always end with 0x00 if not null
It contains the string length as uint
</summary>
</member>
<member name="T:UVtools.Core.Objects.UInt24BigEndian">
<summary>
A string that always end with 0x00 if not null
It contains the string length as uint
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ImportedFrom">
<summary>
Gets or sets from where this option got loaded/imported
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.SlicerFile">
<summary>
Gets or sets the parent <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.OriginalBoundingRectangle">
<summary>
Gets the bounding rectangle of the model, preserved from any change during and after execution
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.Tag">
<summary>
Gets or sets any object which is not used internally
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.Id">
<summary>
Gets the ID name of this operation, this comes from class name with "Operation" removed
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.StartLayerRangeSelection">
<summary>
Gets the starting layer selection
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerRangeSelection">
<summary>
Gets the last used layer range selection, returns none if custom
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerRangeString">
<summary>
Gets a string representing the layer range, used with profiles
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerIndexEndEnabled">
<summary>
Gets if the LayerIndexEnd selector is enabled
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.PassActualLayerIndex">
<summary>
Gets if this operation should set layer range to the actual layer index on layer preview
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.CanRunInPartialMode">
<summary>
Gets if this operation can run in a file open as partial mode
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.CanROI">
<summary>
Gets if this operation can make use of ROI
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.CanMask">
<summary>
Gets if this operation can make use maskable areas
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.CanHaveProfiles">
<summary>
Gets if this operation can store profiles
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.CanCancel">
<summary>
Gets if this operation supports cancellation
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.IconClass">
<summary>
Gets the icon class to show on the UI
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.Title">
<summary>
Gets the title of this operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.Description">
<summary>
Gets a descriptive text of this operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ButtonOkText">
<summary>
Gets the Ok button text
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ConfirmationText">
<summary>
Gets the confirmation text for the operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ProgressTitle">
<summary>
Gets the progress window title
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ProgressAction">
<summary>
Gets the progress action name
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.HaveAction">
<summary>
Gets if this operation have a action text
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerIndexStart">
<summary>
Gets the start layer index where operation will starts in
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerIndexEnd">
<summary>
Gets the end layer index where operation will ends in
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerRangeHaveBottoms">
<summary>
Gets if any bottom layer is included in the selected layer range
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerRangeHaveNormals">
<summary>
Gets if any normal layer is included in the selected layer range
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.LayerRangeCount">
<summary>
Gets the number of selected layers
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ProfileName">
<summary>
Gets the name for this profile
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ProfileIsDefault">
<summary>
Gets if this profile is the default to load
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.ROI">
<summary>
Gets or sets an ROI to process this operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.HaveROI">
<summary>
Gets if there is an ROI associated
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.MaskPoints">
<summary>
Gets or sets an Mask to process this operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.HaveMask">
<summary>
Gets if there is masks associated
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.HaveROIorMask">
<summary>
Gets if there is roi or masks associated
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.HaveExecuted">
<summary>
Gets if this operation have been executed once
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.IsValidated">
<summary>
Gets if this operation have validated at least once
</summary>
</member>
<member name="P:UVtools.Core.Operations.Operation.CanSpawn">
<summary>
Gets if the operation can spawn
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.ValidateSpawn">
<summary>
Gets if this operation can spawn under the <see cref="P:UVtools.Core.Operations.Operation.SlicerFile"/>
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.ValidateSpawn(System.String@)">
<summary>
Gets if this operation can spawn under the <see cref="P:UVtools.Core.Operations.Operation.SlicerFile"/>
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.ValidateInternally">
<summary>
Validates the operation, return null or empty if validates
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.Validate">
<summary>
Validates the operation
</summary>
<returns>null or empty if validates, otherwise return a string with error message</returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.CanValidate">
<summary>
Gets if the operation is able to execute
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectAllLayers">
<summary>
Selects all layers from first to last layer
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectCurrentLayer(System.UInt32)">
<summary>
Selects one layer
</summary>
<param name="layerIndex">Layer index to select</param>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectBottomLayers">
<summary>
Selects all bottom layers
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectNormalLayers">
<summary>
Selects all normal layers
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectFirstLayer">
<summary>
Select the first layer (0)
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectLastLayer">
<summary>
Select the last layer
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectFirstToCurrentLayer(System.UInt32)">
<summary>
Selects from first to a layer index
</summary>
<param name="currentLayerIndex">To layer index to select</param>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectCurrentToLastLayer(System.UInt32)">
<summary>
Selects from a layer index to the last layer
</summary>
<param name="currentLayerIndex">From layer index to select</param>
</member>
<member name="M:UVtools.Core.Operations.Operation.SelectLayers(UVtools.Core.LayerRangeSelection)">
<summary>
Selects layer given a range type
</summary>
<param name="range"></param>
<exception cref="T:System.NotImplementedException"></exception>
</member>
<member name="M:UVtools.Core.Operations.Operation.InitWithSlicerFile">
<summary>
Called to init the object when <see cref="P:UVtools.Core.Operations.Operation.SlicerFile"/> changes
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.ClearROI">
<summary>
Clears the ROI and set to empty
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.ClearROIandMasks">
<summary>
Clear <see cref="P:UVtools.Core.Operations.Operation.ROI"/> and <see cref="P:UVtools.Core.Operations.Operation.MaskPoints"/>
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.SetROIIfEmpty(System.Drawing.Rectangle)">
<summary>
Set <see cref="P:UVtools.Core.Operations.Operation.ROI"/> only if not set already
</summary>
<param name="roi">ROI to set</param>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiSizeOrDefault">
<summary>
Gets the <see cref="P:UVtools.Core.Operations.Operation.ROI"/> size, but if empty returns the file resolution size instead
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiSizeOrDefault(Emgu.CV.Mat)">
<summary>
Gets the <see cref="P:UVtools.Core.Operations.Operation.ROI"/> size, but if empty returns <paramref name="src"/> size instead
</summary>
<param name="src"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiSizeOrDefault(System.Drawing.Rectangle)">
<summary>
Gets the <see cref="P:UVtools.Core.Operations.Operation.ROI"/> size, but if empty returns the size from <paramref name="fallbackRectangle"/> instead
</summary>
<param name="fallbackRectangle"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiSizeOrDefault(System.Drawing.Size)">
<summary>
Gets the <see cref="P:UVtools.Core.Operations.Operation.ROI"/> size, but if empty returns the <paramref name="fallbackSize"/> instead
</summary>
<param name="fallbackSize"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiSizeOrVolumeSize">
<summary>
Gets the <see cref="P:UVtools.Core.Operations.Operation.ROI"/> size, but if empty returns the model volume bounds size instead
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiSizeOrVolumeSize(System.Drawing.Size)">
<summary>
Gets the <see cref="P:UVtools.Core.Operations.Operation.ROI"/> size, but if empty returns the <paramref name="fallbackSize"/> instead
</summary>
<param name="fallbackSize"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiOrDefault(Emgu.CV.Mat)">
<summary>
Gets a cropped shared <see cref="T:Emgu.CV.Mat"/> from <paramref name="src"/> by the <see cref="P:UVtools.Core.Operations.Operation.ROI"/>, but if empty return the <paramref name="src"/> instead
</summary>
<param name="src"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiOrDefault(Emgu.CV.Mat,System.Drawing.Rectangle)">
<summary>
Gets a cropped shared <see cref="T:Emgu.CV.Mat"/> from <paramref name="src"/> by the <see cref="P:UVtools.Core.Operations.Operation.ROI"/>, but if empty crop by <paramref name="fallbackRoi"/>
</summary>
<param name="src"></param>
<param name="fallbackRoi"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiOrVolumeBounds(Emgu.CV.Mat)">
<summary>
Gets a cropped shared <see cref="T:Emgu.CV.Mat"/> by the <see cref="P:UVtools.Core.Operations.Operation.ROI"/>, but if empty crop by <see cref="P:UVtools.Core.Operations.Operation.OriginalBoundingRectangle"/>
</summary>
<param name="defaultMat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetRoiOrVolumeBounds">
<summary>
Gets the <see cref="P:UVtools.Core.Operations.Operation.ROI"/>, but if empty returns <see cref="P:UVtools.Core.Operations.Operation.OriginalBoundingRectangle"/>
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.ClearMasks">
<summary>
Clears all masks
</summary>
</member>
<member name="M:UVtools.Core.Operations.Operation.SetMasksIfEmpty(System.Drawing.Point[][])">
<summary>
Sets masks only if they are empty
</summary>
<param name="points"></param>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetMask(Emgu.CV.Mat)">
<summary>
Returns a mask given <see cref="P:UVtools.Core.Operations.Operation.MaskPoints"/>
</summary>
<param name="mat"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.ApplyMask(Emgu.CV.Mat,Emgu.CV.Mat,Emgu.CV.Mat)">
<summary>
Apply a mask to a mat <paramref name="result"/>
</summary>
<param name="original">Original untouched mat</param>
<param name="result">Mat to modify and apply the mask</param>
<param name="mask">Mask</param>
</member>
<member name="M:UVtools.Core.Operations.Operation.ApplyMask(Emgu.CV.Mat,Emgu.CV.Mat)">
<summary>
Gets a mask and apply it
</summary>
<param name="original">Original unmodified image</param>
<param name="result">Result image which will also be modified</param>
</member>
<member name="M:UVtools.Core.Operations.Operation.ExecuteInternally(UVtools.Core.Operations.OperationProgress)">
<summary>
Execute the operation internally, to be override by class
</summary>
<param name="progress"></param>
<returns></returns>
<exception cref="T:System.NotImplementedException"></exception>
</member>
<member name="M:UVtools.Core.Operations.Operation.Execute(UVtools.Core.Operations.OperationProgress)">
<summary>
Execute the operation
</summary>
<param name="progress"></param>
<returns></returns>
<exception cref="T:System.InvalidOperationException"></exception>
</member>
<member name="M:UVtools.Core.Operations.Operation.Execute(Emgu.CV.Mat,System.Object[])">
<summary>
Execute the operation on a given <see cref="T:Emgu.CV.Mat"/>
</summary>
<param name="mat"></param>
<param name="arguments"></param>
<returns></returns>
<exception cref="T:System.NotImplementedException"></exception>
</member>
<member name="M:UVtools.Core.Operations.Operation.GetSelectedLayerRange">
<summary>
Get the selected layer range in a new array, array index will not match layer index when a range is selected
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.CopyConfigurationTo(UVtools.Core.Operations.Operation)">
<summary>
Copy this operation base configuration to another operation.
Layer range, ROI, Masks
</summary>
<param name="operation"></param>
</member>
<member name="M:UVtools.Core.Operations.Operation.Serialize(System.String,System.Boolean)">
<summary>
Serialize class to XML file
</summary>
<param name="path"></param>
<param name="indent"></param>
</member>
<member name="M:UVtools.Core.Operations.Operation.Clone">
<summary>
Clone object
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.Deserialize(System.String)">
<summary>
Deserialize <see cref="T:UVtools.Core.Operations.Operation"/> from a XML file
</summary>
<param name="path">XML file path</param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.Deserialize(System.String,System.Type)">
<summary>
Deserialize <see cref="T:UVtools.Core.Operations.Operation"/> from a XML file
</summary>
<param name="path">XML file path</param>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.Operation.Deserialize(System.String,UVtools.Core.Operations.Operation)">
<summary>
Deserialize <see cref="T:UVtools.Core.Operations.Operation"/> from a XML file
</summary>
<param name="path">XML file path</param>
<param name="operation"></param>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.OperationCalibrateBloomingEffect.GetLayerPreview">
<summary>
Gets the layers
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.OperationCalibrateElephantFoot.GetLayers">
<summary>
Gets the bottom and normal layers, 0 = bottom | 1 = normal
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.Operations.OperationCalibrateExposureFinder.Holes">
<summary>
Gets all holes in pixels and ordered
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationCalibrateExposureFinder.Bars">
<summary>
Gets all holes in pixels and ordered
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationCalibrateExposureFinder.MultipleBrightnessValuesArray">
<summary>
Gets all holes in pixels and ordered
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationCalibrateExposureFinder.BullsEyes">
<summary>
Gets all holes in pixels and ordered
</summary>
</member>
<member name="M:UVtools.Core.Operations.OperationCalibrateGrayscale.GetLayers">
<summary>
Gets the bottom and normal layers, 0 = bottom | 1 = normal
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.OperationCalibrateLiftHeight.GetLayers">
<summary>
Gets the bottom and normal layers, 0 = bottom | 1 = normal
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.Operations.OperationDynamicLayerHeight.ExposureTableDictionary">
<summary>
Gets the exposure table into a dictionary where key is the layer height
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationEditParameters.PerLayerOverride">
<summary>
Gets or sets if parameters are global or per layer inside a layer range
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationEditParameters.SetNumberOfLayer">
<summary>
Gets or sets the number of sequential layers to set the parameters
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationEditParameters.SkipNumberOfLayer">
<summary>
Gets or sets the number of sequential layers to skip after set a layer
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationIPrintedThisFile.Multiplier">
<summary>
Number of times this file has been printed
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationLayerClone.KeepSamePositionZ">
<summary>
Gets or sets if cloned layers will keep same position z or get the height rebuilt
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationLayerClone.Clones">
<summary>
Gets or sets the number of clones
</summary>
</member>
<member name="M:UVtools.Core.Operations.OperationLightBleedCompensation.GetDimMats">
<summary>
Get the cached dim mat's
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Operations.OperationMask.LoadFromFile(System.String,System.Boolean,System.Drawing.Size)">
<summary>
Loads mask from a image file
</summary>
<param name="filePath"></param>
<param name="invertMask"></param>
<param name="maskSize"></param>
</member>
<member name="M:UVtools.Core.Operations.OperationPattern.Fill">
<summary>
Fills the plate with maximum cols and rows
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationPixelDimming.AlternatePatternPerLayers">
<summary>
Use the alternate pattern every <see cref="P:UVtools.Core.Operations.OperationPixelDimming.AlternatePatternPerLayers"/> layers
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.CanCancel">
<summary>
Gets or sets if operation can be cancelled
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.Title">
<summary>
Gets or sets the item name for the operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.ItemName">
<summary>
Gets or sets the item name for the operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.ProcessedItems">
<summary>
Gets or sets the number of processed items
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.ItemCount">
<summary>
Gets or sets the total of item count on this operation
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.Tag">
<summary>
Gets or sets an tag
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.RemainingItems">
<summary>
Gets the remaining items to be processed
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationProgress.ProgressPercent">
<summary>
Gets the progress from 0 to 100%
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationRaiseOnPrintFinish.PositionZ">
<summary>
Gets or sets the Z position to raise to
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationRaiseOnPrintFinish.WaitTime">
<summary>
<para>Gets or sets the ensured wait time to stay still on the desired position.</para>
<para>This is useful if the printer firmware always move to top and you want to stay still on the set position for at least the desired time.</para>
<para>Note: The print time calculation will take this wait into consideration and display a longer print time.</para>
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationRaiseOnPrintFinish.OutputDummyPixel">
<summary>
True to output a dummy pixel on bounding rectangle position to avoid empty layer and blank image, otherwise set to false
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationSolidify.MinimumArea">
<summary>
Gets the minimum required area to solidify it
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationTimelapse.RaisePositionZ">
<summary>
Sets or gets the Z position to raise to
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationTimelapse.OutputDummyPixel">
<summary>
True to output a dummy pixel on bounding rectangle position to avoid empty layer and blank image, otherwise set to false
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationTimelapse.RaiseEachNthHeight">
<summary>
Gets or sets the alternating height in millimeters to raise when, it will raise only at each defined millimeters and skip the same next millimeters
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationTimelapse.RaiseEachNthLayers">
<summary>
Gets or sets the alternating layer count to raise when, it will raise only at each defined layers and skip the same next layers
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationTimelapse.NumberOfLifts">
<summary>
Gets the total number of additional lifts
</summary>
</member>
<member name="P:UVtools.Core.Operations.OperationTimelapse.EnsureLastLayer">
<summary>
Gets or sets if last layer must be ensured in the sequence,
If true, it will generate an obligatory additional layer to cover the last layer
</summary>
</member>
<member name="P:UVtools.Core.PixelEditor.PixelOperation.Index">
<summary>
Gets or sets the index number to show on GUI
</summary>
</member>
<member name="P:UVtools.Core.PixelEditor.PixelOperation.OperationType">
<summary>
Gets the <see cref="T:UVtools.Core.PixelEditor.PixelOperation.PixelOperationType"/>
</summary>
</member>
<member name="P:UVtools.Core.PixelEditor.PixelOperation.LayerIndex">
<summary>
Gets the layer index
</summary>
</member>
<member name="P:UVtools.Core.PixelEditor.PixelOperation.Location">
<summary>
Gets the location of the operation
</summary>
</member>
<member name="P:UVtools.Core.PixelEditor.PixelOperation.LineType">
<summary>
Gets the <see cref="P:UVtools.Core.PixelEditor.PixelOperation.LineType"/> for the draw operation
</summary>
</member>
<member name="P:UVtools.Core.PixelEditor.PixelOperation.Size">
<summary>
Gets the total size of the operation
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.Xppmm">
<summary>
Gets or sets the pixels per mm on X direction
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.Yppmm">
<summary>
Gets or sets the pixels per mm on Y direction
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.Ppmm">
<summary>
Gets or sets the pixels per mm
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PpmmMax">
<summary>
Gets the maximum (Width or Height) pixels per mm
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelWidth">
<summary>
Gets the pixel width in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelHeight">
<summary>
Gets the pixel height in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelSize">
<summary>
Gets the pixel size in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelSizeMax">
<summary>
Gets the maximum pixel between width and height in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelArea">
<summary>
Gets the pixel area in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelWidthMicrons">
<summary>
Gets the pixel width in microns
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelHeightMicrons">
<summary>
Gets the pixel height in microns
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelSizeMicrons">
<summary>
Gets the pixel size in microns
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelSizeMicronsMax">
<summary>
Gets the maximum pixel between width and height in microns
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.PixelAreaMicrons">
<summary>
Gets the pixel area in millimeters
</summary>
</member>
<member name="P:UVtools.Core.Printer.Machine.Machines">
<summary>
Preset list of machines
</summary>
</member>
<member name="M:UVtools.Core.Printer.Machine.GetMachinesFromPrusaSlicer">
<summary>
Gets all machines from PrusaSlicer profiles
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.Scripting.ScriptBaseInput.Label">
<summary>
Gets the input label
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptBaseInput.ToolTip">
<summary>
Gets the hover tooltip for this input
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptBaseInput.Unit">
<summary>
Gets the value representative unit name
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptBaseInput`1.Value">
<summary>
Gets or sets the value for this input
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptConfiguration.Name">
<summary>
Gets the script name
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptConfiguration.Description">
<summary>
Gets the script description of what it does
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptConfiguration.Author">
<summary>
Gets the script author name
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptConfiguration.Version">
<summary>
Gets the script version
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptConfiguration.MinimumVersionToRun">
<summary>
Gets the minimum version able to run this script
Scripts were introduced on v2.8
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptConfiguration.UserInputs">
<summary>
List of user inputs to show on GUI for configuration of the script
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptFileDialogInput.Title">
<summary>
Gets or sets the title for the dialog
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptFileDialogInput.Directory">
<summary>
Gets or sets the default directory to open the dialog in
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptFileDialogInput.InitialFilename">
<summary>
Gets or sets the initial filename to be on the dialog
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptFileDialogInput.Filters">
<summary>
Gets or sets the file filters on the dropdown list
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptGlobals.SlicerFile">
<summary>
Gets the loaded slicer file
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptGlobals.Progress">
<summary>
Gets the progress operation for loading bar
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptGlobals.Operation">
<summary>
Gets the current operation holding the layer range, mask, roi, etc
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptGlobals.Script">
<summary>
Gets the script configuration
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptNumericalInput`1.Minimum">
<summary>
Gets the minimum for this input
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptNumericalInput`1.Maximum">
<summary>
Gets the minimum for this input
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptNumericalInput`1.Increment">
<summary>
Gets the increment value for this
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptNumericalInput`1.DecimalPlates">
<summary>
Gets the number of decimal plates to round the value
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptOpenFileDialogInput.AllowMultiple">
<summary>
Gets or sets if allow multiple file selection
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptOpenFileDialogInput.Files">
<summary>
Gets or sets the selected files
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptOpenFolderDialogInput.Title">
<summary>
Gets the title for the dialog
</summary>
</member>
<member name="M:UVtools.Core.Scripting.ScriptParser.ParseScriptFromText(System.String)">
<summary>
Parse the script and clean forbidden keywords
</summary>
<param name="text">Text to parse</param>
<returns>The parsed text</returns>
</member>
<member name="P:UVtools.Core.Scripting.ScriptSaveFileDialogInput.DefaultExtension">
<summary>
Gets or sets the default extension for the dialog
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptTextBoxInput.MultiLine">
<summary>
Gets if this input accepts multi lines
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptToggleSwitchInput.OffText">
<summary>
Gets or sets the text when the switch is turned off
</summary>
</member>
<member name="P:UVtools.Core.Scripting.ScriptToggleSwitchInput.OnText">
<summary>
Gets or sets the text when the switch is turned on
</summary>
</member>
<member name="P:UVtools.Core.Slicer.Slicer.Resolution">
<summary>
Gets the size of resolution
</summary>
</member>
<member name="P:UVtools.Core.Slicer.Slicer.Display">
<summary>
Gets the size of display
</summary>
</member>
<member name="P:UVtools.Core.Slicer.Slicer.Ppmm">
<summary>
Gets the pixels per millimeters
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.SlicerFile">
<summary>
Gets or sets the <see cref="T:UVtools.Core.FileFormats.FileFormat"/>
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.Enabled">
<summary>
Gets or sets if this suggestion is enabled
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.AutoApply">
<summary>
Gets or sets if this suggestion can be auto applied once file load
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.ApplyWhen">
<summary>
Gets or sets when to apply the suggestion
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.IsInformativeOnly">
<summary>
Gets if this suggestion is informative only and contain no actions to execute
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.IsAvailable">
<summary>
Gets if this suggestion is available given the <see cref="P:UVtools.Core.Suggestions.Suggestion.SlicerFile"/>
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.IsApplied">
<summary>
Gets if this suggestion is already applied given the <see cref="P:UVtools.Core.Suggestions.Suggestion.SlicerFile"/>
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.Title">
<summary>
Gets the title for this suggestion
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.Message">
<summary>
Gets the message for this suggestion
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.ToolTip">
<summary>
Gets the tooltip message
</summary>
</member>
<member name="P:UVtools.Core.Suggestions.Suggestion.ConfirmationMessage">
<summary>
Gets the confirmation message before apply the suggestion
</summary>
</member>
<member name="M:UVtools.Core.Suggestions.Suggestion.Validate">
<summary>
Validates the settings and return a string message if got any error
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.Suggestions.Suggestion.ExecuteInternally">
<summary>
Executes and applies the suggestion
</summary>
<returns></returns>
<exception cref="T:System.NotImplementedException"></exception>
</member>
<member name="M:UVtools.Core.Suggestions.Suggestion.Execute">
<summary>
Executes and applies the suggestion
</summary>
<returns></returns>
<exception cref="T:System.InvalidOperationException"></exception>
</member>
<member name="M:UVtools.Core.Suggestions.Suggestion.ExecuteIfAutoApply">
<summary>
Executes only if this suggestion is marked with <see cref="P:UVtools.Core.Suggestions.Suggestion.AutoApply"/> as true
</summary>
<returns></returns>
</member>
<member name="M:UVtools.Core.SystemOS.SystemAware.IsRunningLinuxAppImage(System.String@)">
<summary>
Gets if is running under Linux and under AppImage format
</summary>
</member>
<member name="M:UVtools.Core.SystemOS.SystemAware.IsRunningLinuxAppImage">
<summary>
Gets if is running under Linux and under AppImage format
</summary>
<returns></returns>
</member>
<member name="P:UVtools.Core.SystemOS.SystemAware.IsRunningMacOSApp">
<summary>
Gets if is running under MacOS and under app format
</summary>
</member>
<member name="P:UVtools.Core.SystemOS.SystemAware.OperatingSystemName">
<summary>
Gets the main name of the operative system
</summary>
</member>
<member name="P:UVtools.Core.SystemOS.SystemAware.OperatingSystemNameWithArch">
<summary>
Gets the main name of the operative system with architecture
</summary>
</member>
<member name="M:UVtools.Core.SystemOS.Windows.USB.GetUSBHandler(System.String)">
<summary>
Get the USB handler
</summary>
<param name="driveLetter">This should be the drive letter. Format: F:/, C:/..</param>
</member>
<member name="M:UVtools.Core.SystemOS.Windows.USB.USBEject(System.String)">
<summary>
Eject an USB drive
</summary>
<param name="driveLetter">This should be the drive letter. Format: F:/, C:/..</param>
</member>
<member name="P:UVtools.WPF.Structures.SuggestionManager.FilePath">
<summary>
Default filepath for store
</summary>
</member>
<member name="P:UVtools.WPF.Structures.SuggestionManager.Suggestions">
<summary>
Gets all suggestions
</summary>
</member>
<member name="P:UVtools.WPF.Structures.SuggestionManager.Instance">
<summary>
Instance (singleton)
</summary>
</member>
<member name="M:UVtools.WPF.Structures.SuggestionManager.Reset(System.Boolean)">
<summary>
Reset to defaults
</summary>
<param name="save">True to save settings on file, otherwise false</param>
</member>
<member name="M:UVtools.WPF.Structures.SuggestionManager.Load">
<summary>
Load settings from file
</summary>
</member>
<member name="M:UVtools.WPF.Structures.SuggestionManager.Save">
<summary>
Save settings to file
</summary>
</member>
<member name="T:System.Collections.ObjectModel.RangeObservableCollection`1">
<summary>
Implementation of a dynamic data collection based on generic Collection&lt;T&gt;,
implementing INotifyCollectionChanged to notify listeners
when items get added, removed or the whole list is refreshed.
</summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.#ctor">
<summary>
Initializes a new instance of ObservableCollection that is empty and has default initial capacity.
</summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
<summary>
Initializes a new instance of the ObservableCollection class that contains
elements copied from the specified collection and has sufficient capacity
to accommodate the number of elements copied.
</summary>
<param name="collection">The collection whose elements are copied to the new list.</param>
<remarks>
The elements are copied onto the ObservableCollection in the
same order they are read by the enumerator of the collection.
</remarks>
<exception cref="T:System.ArgumentNullException"> collection is a null reference </exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.#ctor(System.Collections.Generic.List{`0})">
<summary>
Initializes a new instance of the ObservableCollection class
that contains elements copied from the specified list
</summary>
<param name="list">The list whose elements are copied to the new list.</param>
<remarks>
The elements are copied onto the ObservableCollection in the
same order they are read by the enumerator of the list.
</remarks>
<exception cref="T:System.ArgumentNullException"> list is a null reference </exception>
</member>
<member name="P:System.Collections.ObjectModel.RangeObservableCollection`1.AllowDuplicates">
<summary>
Gets or sets a value indicating whether this collection acts as a <see cref="T:System.Collections.Generic.HashSet`1"/>,
disallowing duplicate items, based on <see cref="P:System.Collections.ObjectModel.RangeObservableCollection`1.Comparer"/>.
This might indeed consume background performance, but in the other hand,
it will pay off in UI performance as less required UI updates are required.
</summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.ReplaceCollection(System.Collections.Generic.IEnumerable{`0})">
<summary>
Clear the list and set a collection in place
</summary>
<param name="collection">
The collection whose elements should be added to the end of the <see cref="T:System.Collections.ObjectModel.ObservableCollection`1"/>.
The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type.
</param>
<exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.AddRange(System.Collections.Generic.IEnumerable{`0})">
<summary>
Adds the elements of the specified collection to the end of the <see cref="T:System.Collections.ObjectModel.ObservableCollection`1"/>.
</summary>
<param name="collection">
The collection whose elements should be added to the end of the <see cref="T:System.Collections.ObjectModel.ObservableCollection`1"/>.
The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type.
</param>
<exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
<summary>
Inserts the elements of a collection into the <see cref="T:System.Collections.ObjectModel.ObservableCollection`1"/> at the specified index.
</summary>
<param name="index">The zero-based index at which the new elements should be inserted.</param>
<param name="collection">The collection whose elements should be inserted into the List{T}.
The collection itself cannot be null, but it can contain elements that are null, if type T is a reference type.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is not in the collection range.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.RemoveRange(System.Collections.Generic.IEnumerable{`0})">
<summary>
Removes the first occurence of each item in the specified collection from the <see cref="T:System.Collections.ObjectModel.ObservableCollection`1"/>.
</summary>
<param name="collection">The items to remove.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.RemoveAll(System.Predicate{`0})">
<summary>
Iterates over the collection and removes all items that satisfy the specified match.
</summary>
<remarks>The complexity is O(n).</remarks>
<param name="match"></param>
<returns>Returns the number of elements that where </returns>
<exception cref="T:System.ArgumentNullException"><paramref name="match"/> is null.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.RemoveAll(System.Int32,System.Int32,System.Predicate{`0})">
<summary>
Iterates over the specified range within the collection and removes all items that satisfy the specified match.
</summary>
<remarks>The complexity is O(n).</remarks>
<param name="index">The index of where to start performing the search.</param>
<param name="count">The number of items to iterate on.</param>
<param name="match"></param>
<returns>Returns the number of elements that where </returns>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is out of range.</exception>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is out of range.</exception>
<exception cref="T:System.ArgumentNullException"><paramref name="match"/> is null.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.RemoveRange(System.Int32,System.Int32)">
<summary>
Removes a range of elements from the <see cref="T:System.Collections.ObjectModel.ObservableCollection`1"/>>.
</summary>
<param name="index">The zero-based starting index of the range of elements to remove.</param>
<param name="count">The number of elements to remove.</param>
<exception cref="T:System.ArgumentOutOfRangeException">The specified range is exceeding the collection.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.ReplaceRange(System.Collections.Generic.IEnumerable{`0})">
<summary>
Clears the current collection and replaces it with the specified collection,
using <see cref="P:System.Collections.ObjectModel.RangeObservableCollection`1.Comparer"/>.
</summary>
<param name="collection">The items to fill the collection with, after clearing it.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.ReplaceRange(System.Int32,System.Int32,System.Collections.Generic.IEnumerable{`0})">
<summary>
Removes the specified range and inserts the specified collection in its position, leaving equal items in equal positions intact.
</summary>
<param name="index">The index of where to start the replacement.</param>
<param name="count">The number of items to be replaced.</param>
<param name="collection">The collection to insert in that location.</param>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is out of range.</exception>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is out of range.</exception>
<exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.ClearItems">
<summary>
Called by base class Collection&lt;T&gt; when the list is being cleared;
raises a CollectionChanged event to any listeners.
</summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.InsertItem(System.Int32,`0)">
<inheritdoc/>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.SetItem(System.Int32,`0)">
<inheritdoc/>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs)">
<summary>
Raise CollectionChanged event to any listeners.
Properties/methods modifying this ObservableCollection will raise
a collection changed event through this virtual method.
</summary>
<remarks>
When overriding this method, either call its base implementation
</remarks>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.OnEssentialPropertiesChanged">
<summary>
Helper to raise Count property and the Indexer property.
</summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.OnIndexerPropertyChanged">
<summary>
/// Helper to raise a PropertyChanged event for the Indexer property
/// </summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedAction,System.Object,System.Object,System.Int32)">
<summary>
Helper to raise CollectionChanged event to any listeners
</summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.OnCollectionReset">
<summary>
Helper to raise CollectionChanged event with action == Reset to any listeners
</summary>
</member>
<member name="M:System.Collections.ObjectModel.RangeObservableCollection`1.OnRangeReplaced(System.Int32,System.Collections.Generic.ICollection{`0},System.Collections.Generic.ICollection{`0})">
<summary>
Helper to raise event for clustered action and clear cluster.
</summary>
<param name="followingItemIndex">The index of the item following the replacement block.</param>
<param name="newCluster"></param>
<param name="oldCluster"></param>
</member>
<member name="T:System.Collections.ObjectModel.EventArgsCache">
<remarks>
To be kept outside <see cref="T:System.Collections.ObjectModel.ObservableCollection`1"/>, since otherwise, a new instance will be created for each generic type used.
</remarks>
</member>
</members>
</doc>