public static GerberFile GetNewGerber(string ID, string Path, float DPI, Size FOV) { if (Path == null) { return(null); } GerberFile gerber = new GerberFile(); FileInfo fi = new FileInfo(Path); SPI_AOI.Utils.GerberRenderResult renderResults = SPI_AOI.Utils.GerberUtils.Render(fi.FullName, DPI, Color.White, Color.Black); if (renderResults.Status == SPI_AOI.Utils.ActionStatus.Fail) { return(null); } gerber.ModelID = ID; gerber.GerberID = Utils.GetNewID(); gerber.FileName = fi.Name; gerber.FilePath = fi.FullName; gerber.Color = Color.FromArgb(255, 0, 0); gerber.Visible = true; gerber.Angle = 0; gerber.OrgGerberImage = renderResults.GerberImage; gerber.ProcessingGerberImage = gerber.OrgGerberImage.Copy(); gerber.FileData = File.ReadAllBytes(fi.FullName); gerber.ROI = new Rectangle(); gerber.SelectPad = Rectangle.Empty; gerber.MarkPoint = new Mark(gerber.GerberID); gerber.ResetMark(); gerber.StartPoint = SPI_AOI.Utils.StartPoint.TOP_LEFT; gerber.UpdatePadItems(); gerber.UpdateFOV(FOV); gerber.LinkPadWidthFov(FOV); return(gerber); }
public int GetNewGerber(string Path) { GerberFile gerber = GerberFile.GetNewGerber(this.ID, Path, this.DPI, this.FOV); this.Gerber = gerber; if (gerber == null) { return(-1); } else { return(0); } }