Files
pbf/navsea_build_land_area_z4_9.py

59 lines
1.7 KiB
Python

#!/usr/bin/env python3
from __future__ import annotations
import argparse
from pathlib import Path
from navsea_tile_builder import (
SOURCE_TILE_ROOT,
DbConfig,
NavSeaFidCodec,
NavSeaTileBuilder,
)
DEFAULT_OUTPUT_ROOT = Path("/home/wwwroot/pbf-delivery-land-area-z4-9")
DEFAULT_FID_KEY = "thisMyWorld@2026"
DEFAULT_FID_KEY_ID = "navsea-fid-key-v1"
DEFAULT_BUNDLE_ID = "navsea-core"
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(description="Build a dedicated P陸域-only z4-z9 PBF tileset.")
parser.add_argument("--output", type=Path, default=DEFAULT_OUTPUT_ROOT)
parser.add_argument("--source-root", type=Path, default=SOURCE_TILE_ROOT)
parser.add_argument("--workers", type=int, default=4)
parser.add_argument("--fid-key", default=DEFAULT_FID_KEY)
parser.add_argument("--fid-key-id", default=DEFAULT_FID_KEY_ID)
parser.add_argument("--bundle-id", default=DEFAULT_BUNDLE_ID)
return parser.parse_args()
def main() -> None:
args = parse_args()
builder = NavSeaTileBuilder(
db_config=DbConfig(),
source_root=args.source_root,
output_root=args.output,
center_lat=0.0,
center_lon=0.0,
radius_nm=0.0,
zmin=4,
zmax=9,
workers=max(1, args.workers),
all_tiles=True,
reference_tile_root=None,
engineering_mode=False,
strip_legacy_japanese_delivery=True,
release_minimal=False,
fid_codec=NavSeaFidCodec(args.fid_key.encode("utf-8")),
fid_key_id=args.fid_key_id,
bundle_id=args.bundle_id,
source_layer_includes=frozenset({"P陸域"}),
)
builder.build()
if __name__ == "__main__":
main()