2026-01-26 14:51:28 +09:00

89 lines
3.7 KiB
C#

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;
}
}
}