in src/main/c/h3-java/src/jniapi.c [659:684]
JNIEXPORT void JNICALL Java_com_uber_h3core_NativeMethods_polygonToCells(
JNIEnv *env, jobject thiz, jdoubleArray verts, jintArray holeSizes,
jdoubleArray holeVerts, jint res, jint flags, jlongArray results) {
GeoPolygon polygon;
if (CreateGeoPolygon(env, verts, holeSizes, holeVerts, &polygon)) {
return;
}
jlong *resultsElements = (**env).GetLongArrayElements(env, results, 0);
H3Error err;
if (resultsElements != NULL) {
// if sz is too small, bad things will happen
err = polygonToCells(&polygon, res, flags, resultsElements);
(**env).ReleaseLongArrayElements(env, results, resultsElements, 0);
} else {
ThrowOutOfMemoryError(env);
}
DestroyGeoPolygon(env, verts, holeSizes, holeVerts, &polygon);
if (err) {
ThrowH3Exception(env, err);
}
}