8 import fields2cover
as f2c
10 def near(a, b, error = 1e-7):
11 assert abs(a - b) < error
15 poly = f2c.Cell(f2c.LinearRing(f2c.VectorPoint([
16 f2c.Point(6.062131843297665, 51.51238564279176, 0),
17 f2c.Point(6.062215149507296, 51.51204470468504, 0),
18 f2c.Point(6.062232423018175, 51.51197104647852, 0),
19 f2c.Point(6.062259746209906, 51.51187606814959, 0),
20 f2c.Point(6.062131843297665, 51.51238564279176, 0),
22 poly_to_transform = poly;
23 assert (poly == poly_to_transform);
24 field = f2c.Field(f2c.Cells(poly_to_transform));
25 field.setEPSGCoordSystem(4326);
27 near(field.getField().getCellBorder(0).startPoint().getX(), 0);
28 near(field.getField().getCellBorder(0).startPoint().getY(), 0);
29 near(field.getField().getCellBorder(0).startPoint().getZ(), 0);
30 assert (field.getCRS() ==
"EPSG:28992");
33 near(ref_gps_point.getX(), 6.062131843297665, 1e-3);
34 near(ref_gps_point.getY(), 51.51238564279176, 1e-3);
35 near(ref_gps_point.getZ(), 0, 1e-3);
38 final_field = field.getCellsAbsPosition().getCellBorder(0);
39 for i
in range(final_field.size()):
40 near(final_field.getGeometry(i).getX(),
41 poly.getGeometry(0).getGeometry(i).getX(), 1e-3);
42 near(final_field.getGeometry(i).getY(),
43 poly.getGeometry(0).getGeometry(i).getY(), 1e-3);
44 near(final_field.getGeometry(i).getZ(),
45 poly.getGeometry(0).getGeometry(i).getZ(), 1e-3);