rl2tool(1)

πŸ’– rl2tool πŸ’–

okay bestie, so this is the manual for rl2tool, aka the CLI tool for RasterLite2, from section (1) of the manual pages. pull up a chair, grab a strawberry πŸ“, and let's get into it.


✨ NAME ✨

rl2tool β€” CLI tool for RasterLite2


🫢 SYNOPSIS 🫢

rl2tool mode [ARGLIST]

so yeah, you pick a mode, you hand it some args, and it does the thing. that's the whole vibe ✨


🌸 DESCRIPTION 🌸

rl2tool is a CLI tool for RasterLite2. short, sweet, iconic. no notes. πŸ‘‘


πŸ’… OPTIONS πŸ’…

every mode has its own little arglist, so let's go mode by mode, bestie. buckle up. 🌈

πŸŽ€ Mode: CREATE πŸŽ€

will create a new RasterLite2 Raster Coverage. brand new baby coverage, obsessed.

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -smp keyword, --sample-type keyword β€” Sample Type keyword (go check the list below πŸ‘‡)
  • -pxl keyword, --pixel-type keyword β€” Pixel Type keyword (also on the list πŸ‘‡)
  • -bds integer, --num-bands integer β€” Number of Bands
  • -cpr keyword, --compression keyword β€” Compression keyword (yeah you guessed it, list below πŸ‘‡)
  • -qty integer, --quality integer β€” Compression Quality [0-100]
  • -tlw integer, --tile-width integer β€” Tile Width, in [pixels]
  • -tlh integer, --tile-height integer β€” Tile Height, in [pixels]
  • -srid integer, --srid integer β€” SRID value
  • -nosrid, --no-srid β€” No SRID
  • -res number, --resolution number β€” pixel resolution (X and Y)
  • -xres number, --x-resol number β€” pixel resolution (X specific)
  • -yres number, --y-resol number β€” pixel resolution (Y specific)
  • -nd pixel, --no-data pixel β€” NO-DATA pixel value

SampleType Keywords:

1-BIT 2-BIT 4-BIT INT8 UINT8 INT16 UINT16 INT32 UINT32 FLOAT DOUBLE

PixelType Keywords:

MONOCHROME PALETTE GRAYSCALE RGB MULTIBAND DATAGRID

Compression Keywords:

NONE DEFLATE LZMA GIF PNG JPEG WEBP LL_WEBP FAX3 FAX4

πŸ¦‹ Mode: DROP πŸ¦‹

will drop an existing RasterLite2 Raster Coverage. bye boo πŸ‘‹

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name

🌟 Mode: IMPORT 🌟

will create a new Raster Section by importing an external image or raster file. bringing outside content into the group chat, love that for us.

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -src pathname, --src-path pathname β€” input Image/Raster path
  • -dir pathname, --dir-path pathname β€” input directory path
  • -ext string, --file-ext string β€” extension file extension (e.g. .tif)
  • -cov string, --coverage string β€” the Coverage's name
  • -srid integer, --srid integer β€” optional: force SRID value
  • -wf>, --worldfile β€” requires a Worldfile
  • -pyr, --pyramidize β€” immediately build Pyramid levels
ok bestie yes, that one flag is literally printed as -wf> in the original page πŸ’€ i did not make that up, i promise. no cap.

🧚 Mode: EXPORT 🧚

will export an external image from a Coverage. sending it out into the world, main character departure ✈️

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -dst pathname, --dst-path pathname β€” output Image/Raster path
  • -cov string, --coverage string β€” the Coverage's name
  • -res number, --resolution number β€” pixel resolution (X and Y)
  • -xres number, --x-resol number β€” pixel resolution (X specific)
  • -yres number, --y-resol number β€” pixel resolution (Y specific)
  • -minx number, --min-x number β€” X coordinate (lower-left corner)
  • -miny number, --min-y number β€” Y coordinate (lower-left corner)
  • -maxx number, --max-x number β€” X coordinate (upper-right corner)
  • -maxy number, --max-y number β€” Y coordinate (upper-left corner)
  • -cx number, --center-x number β€” X coordinate (center)
  • -cy number, --center-y number β€” Y coordinate (center)
  • -outw number, --out-width number β€” image width (in pixels)
  • -outh number, --out-height number β€” image height (in pixels)

In order to export a raster you are expected to specify:

  • the intended resolution (-res OR -xres AND -yres)
  • the output image size (-outw AND -outh)
  • a single tie-point, defined as one of:
    • Output Image Center point: -cx AND -cy
    • Output Image LowerLeft corner: -minx AND -miny
    • Output Image LowerRight corner: -maxx AND -miny
    • Output Image UpperLeft corner: -minx AND -maxy
    • Output Image UpperRight corner: -maxx AND -maxy
fr fr, read that checklist twice. it's giving "required", because it is. 🚨

πŸ“ Mode: DELETE πŸ“

will delete a Raster Section. not me removing things 😭

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -sec string, --section string β€” the Section's name

πŸ‘‘ Mode: PYRAMIDIZE πŸ‘‘

will (re)build all Pyramid levels supporting a Coverage. glow-up time, building levels on levels ✨

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -sec string, --section string β€” optional: the Section's name β€” default is "All Sections"
  • -f, --force β€” optional: rebuilds from scratch

πŸ’œ Mode: PYRAMIDIZE-MONOLITHIC πŸ’œ

will (re)build all Pyramid levels (Monolithic) supporting a Coverage. same energy, monolithic edition πŸ—Ώ

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -lev number, --virt-levels number β€” number of virt-levels β€” could be one of: 1, 2 or 3

πŸŽ€ Mode: DE-PYRAMIDIZE πŸŽ€

will delete Pyramid levels. de-influencing the pyramid levels, honestly iconic of it.

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -sec string, --section string β€” optional: the Section's name β€” default is "All Sections"

⭐ Mode: LIST ⭐

will list Raster Sections within a Coverage. show me the roster bestie πŸ“‹

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -sec string, --section string β€” optional: the Section's name β€” default is "All Sections"

🌈 Mode: MAP 🌈

will output a PNG Map representing all Raster Sections within a Coverage. a whole map!! aesthetic πŸ—ΊοΈβœ¨

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -dst pathname, --dst-path pathname β€” output Image/Raster path
  • -outw number, --out-width number β€” image width (in pixels)
  • -outh number, --out-height number β€” image height (in pixels)

πŸ”₯ Mode: CATALOG πŸ”₯

will list all Coverages from within a RasterLite2 DB. the full guest list, no one left out πŸ’…

  • -db pathname, --db-path pathname β€” RasterLite2 DB path

πŸ’– Mode: HISTOGRAM πŸ’–

will create a PNG showing a band Histogram. data visualization that ate fr πŸ“Š

  • -db pathname, --db-path pathname β€” RasterLite2 DB path
  • -cov string, --coverage string β€” the Coverage's name
  • -sec string, --section string β€” optional: the Section's name β€” default is "All Sections"
  • -bnd integer, --band-index integer β€” a valid band index β€” default is band index 0
  • -dst pathname, --dst-path pathname β€” output PNG path β€” default is ./hist_cov_sec_idx.png

optional DB specific settings:

  • -cs num, --cache-size num β€” DB cache size (how many pages)
  • -m, --in-memory β€” using IN-MEMORY database
  • -jo, --journal-off β€” unsafe [but faster] mode
⚠️ bestie, do not gloss over that last one. -jo / --journal-off is literally described as unsafe [but faster] mode. faster is cute, unsafe is not. know what you're signing up for. 🚩

and that's the whole page, top to bottom, nothing skipped, everything kept. periodt. πŸ’œ

this little love letter lives in the rl2tool(1) manual page, dated 06 February 2026 πŸŽ€βœ¨ slay, read it, use it, hydrate 🫢🌈

πŸ“¦ where this page comes from