Build exact-crop TIFF background maps for MOOS-IvP
Project description
MOOS Map Builder
Build cropped TIFF background maps for MOOS-IvP through a local browser UI or
the moos-map command. Both interfaces use the same map sources, crop logic,
cache, and MOOS compatibility checks.
Install
MOOS Map requires Python 3.11 or newer and pipx. On macOS, install pipx and add its application directory to your shell path once:
brew install pipx
pipx ensurepath
Then install MOOS Map in its own managed environment:
pipx install moos-map
Then launch the UI:
moos-map ui
UI
Click any two diagonally opposite corners to select a region. Click-hold-drag pans the map; another single click starts a replacement selection. Review the summary and choose Build Map.
Esri World Imagery and zoom 17 are the defaults. The origin defaults to the
map center. For an existing mission, open 04 Advanced placement and enter
its LatOrigin and LongOrigin, or drag the red origin dot.
CLI
Build with the same defaults by supplying any two diagonal corners as
latitude longitude pairs:
moos-map build \
--corners 42.358 -71.088 42.359 -71.087 \
--name harbor
For an existing mission, supply its origin:
moos-map build \
--corners 42.358 -71.088 42.359 -71.087 \
--origin 42.358436 -71.087448 \
--name harbor
Useful commands:
moos-map sources
moos-map plan --corners 42.358 -71.088 42.359 -71.087
moos-map verify ~/moos-maps/harbor/harbor.tif
moos-map build -h
build downloads immediately; running sources or plan first is optional.
Use --zoom, --source, or --output-dir to override defaults. Builds include
a .moos snippet and replace same-named bundles safely by default. See
moos-map build -h for opt-out and cache controls.
Output
Each map gets its own directory:
~/moos-maps/harbor/
├── harbor.tif
├── harbor.info
└── harbor.moos
Copy the .tif and .info files into a mission directory, or add that exact
map directory to IVP_IMAGE_DIRS. Then add the generated harbor.moos settings
to the mission. pMarineViewer does not recursively search ~/moos-maps.
The TIFF is cropped to the selected coordinates; extra downloaded tile margins
are discarded. Source and requested-bound provenance is kept as ignored //
comments in the .info; no JSON sidecar is created.
Sources
Built-ins include Esri World Imagery, Google Satellite, Google Hybrid, Google Maps, and Esri World Topographic. Local MBTiles and custom XYZ services are also supported. Native detail varies by location. A listed provider is not a grant of export rights; check its current terms before downloading hosted imagery.
The tile cache is ${XDG_CACHE_HOME:-~/.cache}/moos-map/tiles.
Development
git clone https://github.com/cbenjamin23/moos-map.git
cd moos-map
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e '.[test]'
python -m pytest
See docs/architecture.md for module boundaries, docs/validation.md for the MIT pMarineViewer comparison, and TODO.md for deferred work.
License
GPL-3.0-only. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file moos_map-1.0.1.tar.gz.
File metadata
- Download URL: moos_map-1.0.1.tar.gz
- Upload date:
- Size: 55.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
33e3f0f05fc9b8206b873deee9581556317cd1aa607687f617dbe36d295ac8b2
|
|
| MD5 |
d1fccc91aeadecb5e1d499eec8d12ddc
|
|
| BLAKE2b-256 |
c4f1e784294fad9ba24301a3fb452ede9fce956ea2d63b80668847f3d96e4b6d
|
Provenance
The following attestation bundles were made for moos_map-1.0.1.tar.gz:
Publisher:
release.yml on cbenjamin23/moos-map
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
moos_map-1.0.1.tar.gz -
Subject digest:
33e3f0f05fc9b8206b873deee9581556317cd1aa607687f617dbe36d295ac8b2 - Sigstore transparency entry: 2165537787
- Sigstore integration time:
-
Permalink:
cbenjamin23/moos-map@7e8193162eef46237267c82fe7b81ed90a55892f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/cbenjamin23
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@7e8193162eef46237267c82fe7b81ed90a55892f -
Trigger Event:
release
-
Statement type:
File details
Details for the file moos_map-1.0.1-py3-none-any.whl.
File metadata
- Download URL: moos_map-1.0.1-py3-none-any.whl
- Upload date:
- Size: 53.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e271cfe0fa4e4051b5fb62d4539dcac80da2c721f4f9597f7b4a682d847129d6
|
|
| MD5 |
fd641573ae7fc60d9b8d177ed9672bb8
|
|
| BLAKE2b-256 |
619b7695c4d65f47e718dd2e0f37a5c2bc0036aed18f7f33d2e2287f721fe213
|
Provenance
The following attestation bundles were made for moos_map-1.0.1-py3-none-any.whl:
Publisher:
release.yml on cbenjamin23/moos-map
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
moos_map-1.0.1-py3-none-any.whl -
Subject digest:
e271cfe0fa4e4051b5fb62d4539dcac80da2c721f4f9597f7b4a682d847129d6 - Sigstore transparency entry: 2165537795
- Sigstore integration time:
-
Permalink:
cbenjamin23/moos-map@7e8193162eef46237267c82fe7b81ed90a55892f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/cbenjamin23
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@7e8193162eef46237267c82fe7b81ed90a55892f -
Trigger Event:
release
-
Statement type: