public IList <CircleSearchingResult> SearchCircles(HImage image, IList <CircleSearchingDefinition> circleSearchingDefinitions) { var searchingResult = new CircleSearchingResultCollection(); Random random = new Random(); for (int i = 0; i < circleSearchingDefinitions.Count; i++) { var definition = circleSearchingDefinitions[i]; int randomFactor = 0; var csr = new CircleSearchingResult() { Index = i, Name = definition.Name, Circle = new Circle(definition.CenterX + random.NextDouble() * randomFactor, definition.CenterY + random.NextDouble() * randomFactor, (definition.InnerRadius + definition.OuterRadius) / 2.0 + random.NextDouble() * randomFactor), Definition = definition.DeepClone(), }; // if (i == 2) // csr.IsNotFound = true; searchingResult.Add(csr); } return(searchingResult); }
public InspectionResult() { // Coordinate CoordinateCircles = new CircleSearchingResultCollection(); CoordinateEdges = new EdgeSearchingResultCollection(); // Circles = new CircleSearchingResultCollection(); Edges = new EdgeSearchingResultCollection(); DistanceBetweenLinesResults = new DistanceBetweenLinesResultCollection(); DistanceBetweenPointsResults = new DistanceBetweenPointsResultCollection(); RegionDefectResults = new List <RegionDefectResult>(); ClosedRegionResults = new ClosedRegionResultCollection(); Parts = new List <PartSearchingResult>(); RegionTargets = new List <RegionTargetResult>(); }
public static IList <CircleSearchingResult> SearchCircles(this ICircleInspector inspector, HImage image, IList <CircleSearchingDefinition> definitions) { var csrs = new CircleSearchingResultCollection(); int index = 0; foreach (var definition in definitions) { var csr = inspector.SearchCircle(image, definition); csr.Index = index; csrs.Add(csr); index++; } return(csrs); }