protected override TopologyTestCase CloneCore() { OneInputLayerTopologyTestCase newObject = (OneInputLayerTopologyTestCase)Activator.CreateInstance(GetType()); for (int i = 0; i < Layers.Count; i++) { for (int j = 0; j < Layers[i].InternalFeatures.Count; j++) { newObject.Layers[i].InternalFeatures.Add(Layers[i].InternalFeatures[j]); } } return(newObject); }
protected override TopologyTestCase GenerateTestCaseWithinExtentCore(RectangleShape extent) { if (!OutputFeatureLayer.IsOpen) { OutputFeatureLayer.Open(); } Collection <Feature> outputFeatures = OutputFeatureLayer.QueryTools.GetFeaturesInsideBoundingBox(extent, ReturningColumnsType.NoColumns); Collection <Feature> inputFeatures = null; if (!LoadingFromShapeFile) { if (!InputFeatureLayer.IsOpen) { InputFeatureLayer.Open(); } inputFeatures = InputFeatureLayer.QueryTools.GetFeaturesInsideBoundingBox(extent, ReturningColumnsType.NoColumns); } else { ShapeFileFeatureLayer shapeFileFeatureLayer = new ShapeFileFeatureLayer(ShapePathFileName); shapeFileFeatureLayer.Open(); inputFeatures = shapeFileFeatureLayer.QueryTools.GetFeaturesInsideBoundingBox(extent, ReturningColumnsType.NoColumns); shapeFileFeatureLayer.Close(); } OneInputLayerTopologyTestCase topologyTestCase = (OneInputLayerTopologyTestCase)Activator.CreateInstance(GetType()); foreach (Feature feature in outputFeatures) { topologyTestCase.OutputFeatureLayer.InternalFeatures.Add(feature); } foreach (Feature feature in inputFeatures) { topologyTestCase.InputFeatureLayer.InternalFeatures.Add(feature); } return(topologyTestCase); }