H3Error H3_EXPORT()

in h3_latLng.c [378:399]


H3Error H3_EXPORT(cellAreaRads2)(H3Index cell, double *out) {
    LatLng c;
    CellBoundary cb;
    H3Error err = H3_EXPORT(cellToLatLng)(cell, &c);
    if (err) {
        return err;
    }
    err = H3_EXPORT(cellToBoundary)(cell, &cb);
    if (NEVER(err)) {
        // Uncoverable because cellToLatLng will have returned an error already
        return err;
    }

    double area = 0.0;
    for (int i = 0; i < cb.numVerts; i++) {
        int j = (i + 1) % cb.numVerts;
        area += triangleArea(&cb.verts[i], &cb.verts[j], &c);
    }

    *out = area;
    return E_SUCCESS;
}