PostGIS  3.1.6dev-r@@SVN_REVISION@@

◆ test_rect_tree_distance_tree()

static void test_rect_tree_distance_tree ( void  )
static

Definition at line 584 of file cu_measures.c.

585 {
586  const char *wkt;
587 
588  wkt = "MULTIPOLYGON(((-123.35702791281 48.4232302445918,-123.35689654493 48.4237265810249,-123.354053908057 48.4234039978588,-123.35417179975 48.4229151379279,-123.354369811539 48.4220987102936,-123.355779071731 48.4222571534228,-123.357238860904 48.4224209369449,-123.35702791281 48.4232302445918)))";
589  TDT(wkt, "MULTIPOLYGON(((-123.353452578038 48.4259519079838,-123.35072012771 48.4256699150083,-123.347337809991 48.4254740864963,-123.347469111645 48.4245757659326,-123.349409235923 48.4246224093429,-123.349966167324 48.4246562342604,-123.353650661317 48.4250703224683,-123.353452578038 48.4259519079838)))", 0.0017144228293396);
590 
591  wkt = "POINT(0 0)";
592  TDT(wkt, "MULTIPOINT(0 1.5,0 2,0 2.5)", 1.5);
593  TDT(wkt, "GEOMETRYCOLLECTION(POINT(3 4))", 5.0);
594  TDT(wkt, "GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(3 4)))", 5.0);
595  TDT(wkt, "GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(3 4))))", 5.0);
596  TDT(wkt, "GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(MULTIPOINT(3 4))))", 5.0);
597 
598  TDT("LINESTRING(-2 0, -0.2 0)", "POINT(-2 0)", 0);
599  TDT("LINESTRING(-0.2 0, -2 0)", "POINT(-2 0)", 0);
600  TDT("LINESTRING(-1e-8 0, -0.2 0)", "POINT(-1e-8 0)", 0);
601  TDT("LINESTRING(-0.2 0, -1e-8 0)", "POINT(-1e-8 0)", 0);
602 
603  wkt = "CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(1 6, 6 1, 9 7),(9 7, 3 13, 1 6)),COMPOUNDCURVE((3 6, 5 4, 7 4, 7 6),CIRCULARSTRING(7 6,5 8,3 6)))";
604  TDT(wkt, "POINT(3 14)", 1);
605  TDT(wkt, "POINT(3 8)", 0);
606  TDT(wkt, "POINT(6 5)", 1);
607  TDT(wkt, "POINT(6 4)", 0);
608 
609  wkt = "MULTISURFACE(POLYGON((0 0,0 4,4 4,4 0,0 0)),CURVEPOLYGON(CIRCULARSTRING(8 2,10 4,12 2,10 0,8 2)))";
610  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(5 7,6 8,7 7,6 6,5 7))", 2.60555);
611  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(5 2,6 3,7 2,6 1,5 2))", 1);
612  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(4 2,5 3,6 2,5 1,4 2))", 0);
613  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(5 3,6 2,5 1,4 2,5 3))", 0);
614  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(4.5 3,5.5 2,4.5 1,3.5 2,4.5 3))", 0);
615  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(5.5 3,6.5 2,5.5 1,4.5 2,5.5 3))", 0.5);
616  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(10 3,11 2,10 1,9 2,10 3))", 0);
617  TDT(wkt, "CURVEPOLYGON(CIRCULARSTRING(2 3,3 2,2 1,1 2,2 3))", 0);
618 
619  wkt = "CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(0 0,5 0,0 0)))";
620  TDT(wkt, "POINT(3 0)", 0.0);
621  TDT(wkt, "POINT(5 0)", 0.0);
622  TDT(wkt, "POINT(7 0)", 2.0);
623  TDT(wkt, "POINT(2.5 3.5)", 1.0);
624 
625  wkt = "POINT(0 0)";
626  TDT(wkt, "POINT(0 1)", 1.0);
627  TDT(wkt, "POINT(1 0)", 1.0);
628 
629  wkt = "LINESTRING(0 0,1 0)";
630  TDT(wkt, "LINESTRING(1 0,1 1)", 0.0);
631  TDT(wkt, "LINESTRING(0 1,1 1)", 1.0);
632 
633  wkt = "POLYGON((0 0,0 1,1 1,1 0,0 0))";
634  TDT(wkt, "POINT(2 2)", sqrt(2));
635  TDT(wkt, "POINT(0.5 0.5)", 0);
636  TDT(wkt, "POINT(1 1)", 0);
637 
638  wkt = "POLYGON((0 0,0 10,10 10,10 0,0 0), (4 4,4 6,6 6,6 4,4 4))";
639  TDT(wkt, "POINT(5 5)", 1);
640  TDT(wkt, "POLYGON((5 5,5 5.5,5.5 5.5,5.5 5, 5 5))", 0.5);
641 }
#define TDT(w1, w2, d)
Definition: cu_measures.c:581

References TDT.

Referenced by measures_suite_setup().

Here is the caller graph for this function: