void CleanMatchingRows(SignatureCounterDataSet.SignatureRow row_signature) { var query_matching = from matching in tables.MatchingTableAdapter.GetData() where matching.SignatureID == row_signature.ID select matching; foreach (var matching in query_matching) tables.MatchingTableAdapter.Delete(matching.ID); }
void AddSignature(SignatureCounterDataSet.ImageFileRow row_image, SignatureCounterDataSet.TypeRow row_type) { var query_ids = from signature in tables.SignatureTableAdapter.GetData() select signature.ID; int id = query_ids.Any() ? query_ids.Max() + 1 : 0; var query_last_added = from signature in tables.SignatureTableAdapter.GetData() join trimming in tables.TrimTableAdapter.GetData() on signature.TrimID equals trimming.ID where signature.TypeID == row_type.ID orderby signature.ID select new { Signature = signature, Trimming = trimming }; int trim_id; if (query_last_added.Any()) { SignatureCounterDataSet.TrimRow t = query_last_added.Last().Trimming; signatureCounterDataSet1.Signature.Clear(); trim_id = AddTrimming(t.x, t.y, t.w, t.h); } else { signatureCounterDataSet1.Signature.Clear(); trim_id = AddTrimming(10, 10, 100, 100); } tables.SignatureTableAdapter.Insert(id, row_image.ID, trim_id, row_type.ID, null, false); }
public GuessRowForDataGridView(SignatureCounterDataSet.SignatureRow signature, SignatureCounterDataSet.TrimRow trimming, SignatureCounterDataSet.ImageFileRow image) { try { System.Drawing.Image original_image = System.Drawing.Image.FromFile(image.FullPath); double zoom = new double[] { max_width / trimming.w, max_height / trimming.h }.Min(); Bitmap trimmed = new Bitmap((int)(trimming.w * zoom), (int)(trimming.h * zoom)); Graphics g = Graphics.FromImage(trimmed); g.DrawImage(original_image, new Rectangle(new Point(0, 0), trimmed.Size), (Rectangle)trimming, GraphicsUnit.Pixel); SignatureImage = trimmed; } catch (Exception e) { //TODO } ApplyToTrailer = false; Assessments = new List<AssessmentCapsule>(); SignatureID = signature.ID; ImageFileID = image.ID; TrimID = trimming.ID; }