23 char const* opts[] = {
"SPATIALITE=YES",
nullptr};
24 auto drv = GDALGetDriverByName(
driver);
25 boat::check(!!drv, error_or(concat(
"GDALGetDriverByName ",
driver)));
26 auto ret = dataset_ptr{GDALCreate(drv, file, 0, 0, 0, GDT_Unknown, opts)};
27 boat::check(!!ret, error_or(concat(
"GDALCreate ", file)));
38 auto drv = GDALGetDriverByName(
driver);
39 boat::check(!!drv, error_or(concat(
"GDALGetDriverByName ",
driver)));
40 auto ret = dataset_ptr{GDALCreate(
45 static_cast<int>(rast.
bands.size()),
46 GDALGetDataTypeByName(rast.
bands.at(0).type_name.data()),
48 boat::check(!!ret, error_or(concat(
"GDALCreate ", file)));
57 check(GDALSetGeoTransform(ret.get(), a.data()));
59 check(GDALSetSpatialRef(ret.get(), crs.get()));
60 for (
int i{}, n =
static_cast<int>(rast.
bands.size()); i < n; ++i) {
61 auto b = GDALGetRasterBand(ret.get(), i + 1);
63 GDALGetColorInterpretationByName(rast.
bands[i].color_name.data());
64 boat::check(ci != GCI_Undefined, rast.
bands[i].color_name);
65 check(GDALSetRasterColorInterpretation(b, ci));