public void TestTopgisTMultiPatches() { IWorkspace workspace = TestDataUtils.OpenTopgisTlm(); IFeatureClass gebaeude = ((IFeatureWorkspace)workspace).OpenFeatureClass( "TOPGIS_TLM.TLM_GEBAEUDE"); var test = new QaMpVertexNotNearFace( gebaeude, new[] { gebaeude }, 1, 0.2); test.VerifyWithinFeature = true; test.PointCoincidence = 0.1; test.EdgeCoincidence = 0.1; test.IgnoreNonCoplanarFaces = true; test.MinimumSlopeDegrees = 15; var runner = new QaContainerTestRunner(10000, test); runner.LogErrors = false; IFeatureWorkspace ws = TestWorkspaceUtils.CreateTestFgdbWorkspace("QaMpVertexNotNearFaceTest"); var logger = new SimpleErrorWorkspace(ws); runner.TestContainer.QaError += logger.TestContainer_QaError; runner.Execute(); Console.WriteLine(runner.Errors.Count); }
public void CanTestVertexNotNearFaceAboveHorizontal() { IFeatureClass fc = CreateFeatureClass(_testWs, "CanTestVertexNotNearFaceHorizontal"); var construction = new MultiPatchConstruction(); construction.StartOuterRing(0, 0, 10) .Add(0, 10, 10) .Add(10, 10, 10) .Add(10, 0, 10); IFeature row1 = fc.CreateFeature(); row1.Shape = construction.MultiPatch; row1.Store(); construction = new MultiPatchConstruction(); construction.StartOuterRing(5, 5, 10.1) .Add(15, 5, 15.1) .Add(15, 15, 20.1) .Add(5, 15, 15.1); IFeature row2 = fc.CreateFeature(); row2.Shape = construction.MultiPatch; row2.Store(); ((IWorkspaceEdit)_testWs).StopEditing(true); var test = new QaMpVertexNotNearFace(fc, new[] { fc }, 0.2, 0) { VerifyWithinFeature = false, MinimumSlopeDegrees = 0 }; var runner = new QaContainerTestRunner(10000, test); runner.Execute(); Assert.AreEqual(1, runner.Errors.Count); }