From: Paul Ramsey Date: Tue, 23 Oct 2012 04:56:12 +0000 (+0000) Subject: Future test case for when we've solved p-i-p in generality X-Git-Tag: 2.1.0beta2~482 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f60d0da7d09a8edc39c1c0e0931fc40716781370;p=postgis Future test case for when we've solved p-i-p in generality git-svn-id: http://svn.osgeo.org/postgis/trunk@10524 b70326c6-7e19-0410-871a-916f4a2858ee --- diff --git a/liblwgeom/cunit/cu_geodetic.c b/liblwgeom/cunit/cu_geodetic.c index ae41d6b77..27e02dcf4 100644 --- a/liblwgeom/cunit/cu_geodetic.c +++ b/liblwgeom/cunit/cu_geodetic.c @@ -810,6 +810,22 @@ static void test_ptarray_point_in_ring(void) CU_ASSERT_EQUAL(result, LW_TRUE); lwgeom_free(lwg); +#if 0 + /* Less Simple containment case. */ + /* Interior point quite close to boundary and stab line going through bottom edge vertex */ + /* This breaks the "extend-it" trick of handling vertex crossings */ + /* It should also break the "lowest end" trick. */ + lwg = lwgeom_from_wkt("POLYGON((1.0 1.0, 1.0 1.1, 1.1 1.1, 1.1 1.0, 1.05 0.95, 1.0 1.0))", LW_PARSER_CHECK_NONE); + poly = (LWPOLY*)lwg; + pt_to_test.x = 1.05; + pt_to_test.y = 1.00; + pt_outside.x = 1.05; + pt_outside.y = 0.5; + result = ptarray_point_in_ring(poly->rings[0], &pt_outside, &pt_to_test); + CU_ASSERT_EQUAL(result, LW_TRUE); + lwgeom_free(lwg); +#endif + #if 0 /* Small polygon and huge distance between outside point and close-but-not-quite-inside point. Should return LW_FALSE. Pretty degenerate case. */ lwg = lwgeom_from_wkt("0103000020E61000000100000025000000ACAD6F91DDB65EC03F84A86D57264540CCABC279DDB65EC0FCE6926B57264540B6DEAA62DDB65EC0A79F6B63572645402E0BE84CDDB65EC065677155572645405D0B1D39DDB65EC0316310425726454082B5DB27DDB65EC060A4E12957264540798BB619DDB65EC0C393A10D57264540D4BC160FDDB65EC0BD0320EE56264540D7AC4E08DDB65EC096C862CC56264540AFD29205DDB65EC02A1F68A956264540363AFA06DDB65EC0722E418656264540B63A780CDDB65EC06E9B0064562645409614E215DDB65EC0E09DA84356264540FF71EF22DDB65EC0B48145265626454036033F33DDB65EC081B8A60C5626454066FB4546DDB65EC08A47A6F7552645409061785BDDB65EC0F05AE0E755264540D4B63772DDB65EC05C86CEDD55264540D2E4C689DDB65EC09B6EBFD95526454082E573A1DDB65EC0C90BD5DB552645401ABE85B8DDB65EC06692FCE35526454039844ECEDDB65EC04D8AF6F155264540928319E2DDB65EC0AD8D570556264540D31055F3DDB65EC02D618F1D56264540343B7A01DEB65EC0EB70CF3956264540920A1A0CDEB65EC03B00515956264540911BE212DEB65EC0E43A0E7B56264540E3F69D15DEB65EC017E4089E562645408D903614DEB65EC0F0D42FC1562645402191B80EDEB65EC0586870E35626454012B84E05DEB65EC09166C80357264540215B41F8DDB65EC08F832B21572645408392F7E7DDB65EC01138C13A57264540F999F0D4DDB65EC0E4A9C14F57264540AC3FB8BFDDB65EC0EED6875F57264540D3DCFEA8DDB65EC04F6C996957264540ACAD6F91DDB65EC03F84A86D57264540", LW_PARSER_CHECK_NONE);