MCPcopy Create free account
hub / github.com/MapServer/MapServer / osArcPolygon

Function osArcPolygon

maporaclespatial.c:1480–1504  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1478}
1479
1480static void osArcPolygon(msOracleSpatialHandler *hand, shapeObj *shape, SDOGeometryObj *obj, int start, int end, lineObj arcpoints, int elem_type, int data3d, int data4d)
1481{
1482 int n, i;
1483 lineObj points = {0, NULL};
1484
1485 n = (end - start)/2;
1486 points.point = (pointObj *)malloc( sizeof(pointObj)*n );
1487
1488 if (data3d)
1489 n = msOCIGet3DOrdinates( hand, obj, start, end, points.point );
1490 else if (data4d)
1491 n = msOCIGet4DOrdinates( hand, obj, start, end, points.point );
1492 else
1493 n = msOCIGet2DOrdinates( hand, obj, start, end, points.point );
1494
1495 if (n > 2)
1496 {
1497 shape->type = (elem_type==32) ? MS_SHAPE_POLYGON : MS_SHAPE_LINE;
1498 points.numpoints = n;
1499
1500 for (i = 0; i < n-2; i = i+2)
1501 osGenerateArc(shape, arcpoints, points, i, n, data3d, data4d);
1502 }
1503 free (points.point);
1504}
1505
1506static int osCheck2DGtype(int pIntGtype)
1507{

Callers 1

osGetOrdinatesFunction · 0.85

Calls 4

msOCIGet3DOrdinatesFunction · 0.85
msOCIGet4DOrdinatesFunction · 0.85
msOCIGet2DOrdinatesFunction · 0.85
osGenerateArcFunction · 0.85

Tested by

no test coverage detected