Skip to content

[do-not-merge] feat: add additional hillshade color ramp with opacity#1337

Open
blacha wants to merge 2 commits intomasterfrom
feat/igor-opacity
Open

[do-not-merge] feat: add additional hillshade color ramp with opacity#1337
blacha wants to merge 2 commits intomasterfrom
feat/igor-opacity

Conversation

@blacha
Copy link
Copy Markdown
Member

@blacha blacha commented Oct 12, 2025

Motivation

The current igor hillshades are one band uint8 these work great inside of GIS tools like QGIS where users can configure these hillshades to "mulitply" the underlying layers,

For web based tools like maplibre it does not have the same level of layering options and only really allows "overlay" where a one band greyscale image does not work.

The goal here is to convert the one band uint8 into a transparency based layer so it can be overlayed inside maplibre and qgis with a standard overlay function.

To do this the colors are mapped from 0 to RGBA 0,0,0,255 (black) and 255 to 0,0,0,0 (transparent)

0   -> 0 0 0 255
255 -> 0 0 0 0

Using QGIS with the base layer and "multiply" vs QGIS with the opacity output

Multiply Overlay
bq32-multiply bq32-basemaps-simple

Modifications

Adding an additional color ramp for one band hillshades to make a opacity based hillshade

Verification

@github-actions

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@github-actions

This comment was marked as outdated.

@blacha blacha marked this pull request as ready for review October 27, 2025 22:56
@blacha blacha requested review from a team as code owners October 27, 2025 22:56
@blacha blacha changed the title feat: add additional color ramp with opacity [do-not-merge] feat: add additional color ramp with opacity Oct 30, 2025
@github-actions

This comment was marked as outdated.

@blacha blacha changed the title [do-not-merge] feat: add additional color ramp with opacity [do-not-merge] feat: add additional hillshade color ramp with opacity Dec 1, 2025
@blacha blacha force-pushed the feat/igor-opacity branch from 951a5c3 to 9e8a887 Compare February 1, 2026 21:46
@github-actions

This comment was marked as outdated.

@github-actions
Copy link
Copy Markdown
Contributor

Configuration changes detected

Key: ➕ New | 🔄 Updated | 🗑️ Deleted

Tilesets

🔄 Updated

🔄 Hillshade Standard DSM (ts_hillshade-dsm) 🌏 | 🗺️

  • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
  • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • ➕ .outputs.[1]:
{
  "title": "Color ramp (Opacity)",
  "name": "color-ramp-opacity",
  "pipeline": [
    {
      "type": "color-ramp",
      "ramp": "0 0 0 0 255\n255 0 0 0 0"
    }
  ],
  "background": {
    "r": 0,
    "g": 0,
    "b": 0,
    "alpha": 0
  }
}
  • ➕ .outputs.0.default: true
  • 🔄 New Zealand DSM Hillshade Overview (new-zealand_dsm_hillshade_overview) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_01KB3J6SYK2C5JYH0E2P5CPBWQ" -> "im_01KGDTNWQFFWG49N377QT05D51"
  • 🔄 .3857: "im_01KB3J6SZTTJYEKJ8SM5E31P2Y" -> "im_01KGDTN7DVCDD57RSJ25499AEA"
  • 🔄 New Zealand DSM Hillshade (new-zealand_dsm_hillshade) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_9hTeUTojo5AJp9caFLoTyosVzSCrnoajrsPs2xWU4W59" -> "im_01KGDTJB8EEVV0EC0PZFN00122"
  • 🔄 .3857: "im_01KB3J47HJ11CKT12YH7SN3V4Y" -> "im_01KGDTJ9PQS19QZS1YQHB033V4"

🔄 Hillshade Igor DSM (ts_hillshade-igor-dsm) 🌏 | 🗺️

  • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
  • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • ➕ .outputs.[1]:
{
  "title": "Color ramp (Opacity)",
  "name": "color-ramp-opacity",
  "pipeline": [
    {
      "type": "color-ramp",
      "ramp": "0 0 0 0 255\n255 0 0 0 0"
    }
  ],
  "background": {
    "r": 0,
    "g": 0,
    "b": 0,
    "alpha": 0
  }
}
  • ➕ .outputs.0.default: true
  • 🔄 New Zealand DSM Hillshade Igor Overview (new-zealand_dsm_hillshade_igor_overview) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_01KB3J7Q92JGW5WBDQ0TP7897V" -> "im_01KGDTKX1VN1EZES5D3MWYZ5KT"
  • 🔄 .3857: "im_01KB3J7R93HEN0FVS00CRY0BSS" -> "im_01KGDTKXCA47KP2VZ9C2RZMY4P"
  • 🔄 New Zealand DSM Hillshade Igor (new-zealand_dsm_hillshade_igor) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_7Bb5kTZmuzkk2PxaYj5gzov14nsWnPY8HqptQVS1Ddat" -> "im_01KGDTJV2GCYW0FR6ZSG433873"
  • 🔄 .3857: "im_01KB3J3ZRYKCZ9VAHDQ9T4S0ZC" -> "im_01KGDTJT9WD6Z71FRA845S5D4C"

🔄 Hillshade Igor (ts_hillshade-igor) 🌏 | 🗺️

  • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
  • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • ➕ .outputs.[1]:
{
  "title": "Color ramp (Opacity)",
  "name": "color-ramp-opacity",
  "pipeline": [
    {
      "type": "color-ramp",
      "ramp": "0 0 0 0 255\n255 0 0 0 0"
    }
  ],
  "background": {
    "r": 0,
    "g": 0,
    "b": 0,
    "alpha": 0
  }
}
  • ➕ .outputs.0.default: true
  • 🔄 New Zealand DEM Hillshade Igor Overview (new-zealand_dem_hillshade_igor_overview) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_01KB3JBB0YKN1X4H6ARJG4D3M7" -> "im_01KGDTKJNK70X39SZXQFFNBSJX"
  • 🔄 .3857: "im_01KB3JB8GZGD04KJ6232EEFFNN" -> "im_01KGDTKJNFXQ4MRGN39XCK18X3"
  • 🔄 New Zealand DEM Hillshade Igor (new-zealand_dem_hillshade_igor) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_E9EpEudboVNf2X19BDd17V1AdWpRvvsYRuXMzLcbXJUU" -> "im_01KGDTK9WH8SGA44M1MZ7NTQTK"
  • 🔄 .3857: "im_01KB3J3E57VVB65FSE8VX737AS" -> "im_01KGDTK9WJX289ASM4ZSV9D10Q"

🔄 Hillshade Standard (ts_hillshade) 🌏 | 🗺️

  • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
  • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • ➕ .outputs.[1]:
{
  "title": "Color ramp (Opacity)",
  "name": "color-ramp-opacity",
  "pipeline": [
    {
      "type": "color-ramp",
      "ramp": "0 0 0 0 255\n255 0 0 0 0"
    }
  ],
  "background": {
    "r": 0,
    "g": 0,
    "b": 0,
    "alpha": 0
  }
}
  • ➕ .outputs.0.default: true
  • 🔄 New Zealand DEM Hillshade Overview (new-zealand_dem_hillshade_overview) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_01KB3J6F0WWXK118JN1FZ2EA9R" -> "im_01KGDTNMAD5Y2Z8ZTDBGQHPCF6"
  • 🔄 .3857: "im_01KB3J6EM3GZXG25B81SPA9Y0G" -> "im_01KGDTNMA9W3559386XVHPQC5H"
  • 🔄 New Zealand DEM Hillshade (new-zealand_dem_hillshade) 🌏 | 🗺️

    • 🎨⭐ Color ramp (color-ramp): 🌏 | 🗺️
    • 🎨 Color ramp (Opacity) (color-ramp-opacity): 🌏 | 🗺️

  • 🔄 .2193: "im_4RhQEPRRTEVpQf6B21omXB9der4gRuaCvzTwCeWZSrSK" -> "im_01KGDTGXT7E0MSA1YF93KVCTKW"
  • 🔄 .3857: "im_01KB3J4H9TGEQMT527T0K3FG7F" -> "im_01KGDTGXT7QTC2W91QVEV7SNJA"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant