using System.Windows; using VisionCommon; #if USE_COGNEX using CogUI; #else using MilUI; #endif namespace VisionUI { public class PatternViewUtil { public static Window CreatePatternSettingWindow( PatternAgentBase patternAgent, PatternInfo patternInfo, ICameraDisplay cameraDisplay, FovInfo fovInfo) { Window window = null; #if !USE_COGNEX switch (patternInfo.PatternType) { case ePatternType.ShapeModelFinder: window = new ShapeModelSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.PatternMatching: window = new PatternMatchingSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.EdgeFinder: window = new EdgeSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.Code: window = new CodeSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.Ocr: window = new OcrSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.MultiLineFinder: window = new MultiLineSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.MultiOcr: window = new MultiOcrSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; } #endif switch (patternInfo.PatternType) { case ePatternType.ImageModelFinder: window = new ImageModelSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.LineFinder: window = new LineSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.Blob: window = new BlobSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.Brightness: window = new BrightnessSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.LineIntersection: window = new LineIntersectionSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.LineWidth: window = new LineWidthSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.Caliper: window = new CaliperSettingWindow( patternAgent, patternInfo, cameraDisplay, fovInfo); break; case ePatternType.MachinePattern_A: case ePatternType.MachinePattern_B: case ePatternType.MachinePattern_C: window = EquipAdapter.Instance.MachinePatternManager.GetWindow(patternAgent, patternInfo, cameraDisplay, fovInfo); break; } return window; } } }