glgrib-egl(1)
β¨ NAME β¨
okay so bestie, welcome to the glgrib-egl(1) manual page β yes, the EGL one, batch processing mode, no X11 required π
glgrib β Display GRIB edition fields using OpenGL
π οΈ SYNOPSIS π οΈ
Review (use PageUp/PageDown) :
$ glgrib share/data/diff/ICMSHFCST+0001
Single field :
$ glgrib share/data/diff/ICMSHFCST+0001%PROFTEMPERATURE
$ glgrib share/data/ecmwf/ecmf_0_1_0_ml_137_q.grib2
Diff :
$ glgrib --diff share/data/diff/ICMSHFCST+0001 share/data/diff/ICMSHFCST+0002
With full options :
$ glgrib --field[0].path share/data/ecmwf/ecmf_0_1_0_ml_137_q.grib2 --coast.on
Use option --help-long to get full help.
π DESCRIPTION π
glgrib is an application to display fields encoded in GRIB edition 2 using OpenGL.
Features : raster, contour, vector, colorbar, mapscale, coastlines, borders. Lat/lon, lambert, gaussian grid. GLFW backend for interactive display (glgrib-glfw), EGL backend (glgrib-egl) for batch processing without X11 display.
Tested on :
VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller (rev 06)VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Wani [Radeon R5/R6/R7 Graphics] (rev c8)3D controller: NVIDIA Corporation GV100GL [Tesla V100S PCIe 32GB] (rev a1)
π OPTIONS π
--border.countries.onβ Type:"BOOLEAN"Β· Default:"TRUE"Β· Description: display countries--border.lines.colorβ Type:"COLOR"Β· Default:"#ffffffff"Β· Description: coastlines color--border.lines.formatβ Type:"STRING"Β· Default:"gshhg"Β· Description: input format--border.lines.latmaxβ Type:"FLOAT"Β· Default:0Β· Description: maximum latitude--border.lines.latminβ Type:"FLOAT"Β· Default:0Β· Description: minimum latitude--border.lines.lonmaxβ Type:"FLOAT"Β· Default:0Β· Description: maximum longitude--border.lines.lonminβ Type:"FLOAT"Β· Default:0Β· Description: minimum longitude--border.lines.pathβ Type:"STRING"Β· Default:"coastlines/gshhg/WDBII_bin/wdb_borders_f.b"Β· Description: path to lines file--border.lines.scaleβ Type:"SCALE"Β· Default:1.005Β· Description: coastlines scale--border.lines.selectorβ Type:"STRING"Β· Default:""Β· Description: selector--border.lines.visible.onβ Type:"BOOLEAN"Β· Default:"TRUE"Β· Description: lines are visible--border.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: display borders--border.regions.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: display regions--border.sea.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: display sea borders--cities.labels.font.bitmap.pathβ Type:"PATH"Β· Default:"fonts/08.bmp"Β· Description: bitmap path--cities.labels.font.bitmap.scaleβ Type:"FLOAT"Β· Default:0.05Β· Description: bitmap scale--cities.labels.font.color.backgroundβ Type:"COLOR"Β· Default:"#00000000"Β· Description: background color--cities.labels.font.color.foregroundβ Type:"COLOR"Β· Default:"#ffffffff"Β· Description: foreground color--cities.labels.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: enable city names display--cities.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: display cities--cities.points.colorβ Type:"COLOR"Β· Default:"#ffffffff"Β· Description: point color--cities.points.palette.colorsβ Type:"COLOR-LIST"Β· Default:""Β· Description: palette colors--cities.points.palette.fixed.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: fixed palette--cities.points.palette.generate.levelsβ Type:"INTEGER"Β· Default:10Β· Description: number of values to generate--cities.points.palette.generate.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: generate values--cities.points.palette.linear.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: linear colorbar display--cities.points.palette.maxβ Type:"FLOAT"Β· Default:-3.40282e+38Β· Description: palette max value--cities.points.palette.minβ Type:"FLOAT"Β· Default:3.40282e+38Β· Description: palette min value--cities.points.palette.nameβ Type:"PALETTE-NAME"Β· Default:"none"Β· Description: palette name--cities.points.palette.ncolorsβ Type:"INTEGER"Β· Default:256Β· Description: number of colors--cities.points.palette.offsetβ Type:"FLOAT"Β· Default:0Β· Description: offset for colorbar figures--cities.points.palette.rainbow.direct.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: direct/indirect rainbow--cities.points.palette.rainbow.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: generate rainbow palette--cities.points.palette.scaleβ Type:"FLOAT"Β· Default:1Β· Description: scale for colorbar figures--cities.points.palette.valuesβ Type:"FLOAT-LIST"Β· Default:""Β· Description: palette values--cities.points.scaleβ Type:"SCALE"Β· Default:1Β· Description: scale--cities.points.size.valueβ Type:"FLOAT"Β· Default:1Β· Description: point size--cities.points.size.variable.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: enable variable point size--cities.points.visible.onβ Type:"BOOLEAN"Β· Default:"TRUE"Β· Description: points are visible--coast.lakes.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: display lakes coastlines--coast.lines.colorβ Type:"COLOR"Β· Default:"#ffffffff"Β· Description: coastlines color--coast.lines.formatβ Type:"STRING"Β· Default:"gshhg"Β· Description: input format--coast.lines.latmaxβ Type:"FLOAT"Β· Default:0Β· Description: maximum latitude--coast.lines.latminβ Type:"FLOAT"Β· Default:0Β· Description: minimum latitude--coast.lines.lonmaxβ Type:"FLOAT"Β· Default:0Β· Description: maximum longitude--coast.lines.lonminβ Type:"FLOAT"Β· Default:0Β· Description: minimum longitude--coast.lines.pathβ Type:"STRING"Β· Default:"coastlines/gshhg/GSHHS_bin/gshhs_h.b"Β· Description: path to lines file--coast.lines.scaleβ Type:"SCALE"Β· Default:1.005Β· Description: coastlines scale--coast.lines.selectorβ Type:"STRING"Β· Default:""Β· Description: selector--coast.lines.visible.onβ Type:"BOOLEAN"Β· Default:"TRUE"Β· Description: lines are visible--coast.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: display coastlines--colorbar.font.bitmap.pathβ Type:"PATH"Β· Default:"fonts/16.bmp"Β· Description: bitmap path--colorbar.font.bitmap.scaleβ Type:"FLOAT"Β· Default:0.02Β· Description: bitmap scale--colorbar.font.color.backgroundβ Type:"COLOR"Β· Default:"#00000000"Β· Description: background color--colorbar.font.color.foregroundβ Type:"COLOR"Β· Default:"#ffffffff"Β· Description: foreground color--colorbar.formatβ Type:"STRING"Β· Default:"%6.4g"Β· Description: format (sprintf) use to display numbers--colorbar.levels.numberβ Type:"INTEGER"Β· Default:11Β· Description: colorbar number of levels--colorbar.levels.valuesβ Type:"FLOAT-LIST"Β· Default:""Β· Description: colorbar level values--colorbar.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: activate colorbar--colorbar.position.xmaxβ Type:"FLOAT"Β· Default:0.18Β· Description: colorbar xmax--colorbar.position.xminβ Type:"FLOAT"Β· Default:0.08Β· Description: colorbar xmin--colorbar.position.ymaxβ Type:"FLOAT"Β· Default:0.95Β· Description: colorbar ymax--colorbar.position.yminβ Type:"FLOAT"Β· Default:0.05Β· Description: colorbar ymin--departements.lines.colorβ Type:"COLOR"Β· Default:"#ffffffff"Β· Description: coastlines color--departements.lines.formatβ Type:"STRING"Β· Default:"shapeline"Β· Description: input format--departements.lines.latmaxβ Type:"FLOAT"Β· Default:0Β· Description: maximum latitude--departements.lines.latminβ Type:"FLOAT"Β· Default:0Β· Description: minimum latitude--departements.lines.lonmaxβ Type:"FLOAT"Β· Default:0Β· Description: maximum longitude--departements.lines.lonminβ Type:"FLOAT"Β· Default:0Β· Description: minimum longitude--departements.lines.pathβ Type:"STRING"Β· Default:"coastlines/departements/departements-20180101.shp"Β· Description: path to lines file--departements.lines.scaleβ Type:"SCALE"Β· Default:1.005Β· Description: coastlines scale--departements.lines.selectorβ Type:"STRING"Β· Default:""Β· Description: selector--departements.lines.visible.onβ Type:"BOOLEAN"Β· Default:"TRUE"Β· Description: lines are visible--departements.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: display departements--diff.onβ Type:"BOOLEAN"Β· Default:"FALSE"Β· Description: enable difference mode--diff.pathβ Type:"STRING-LIST"Β· Default:""Β· Description: files to show in diff mode--field[0].contour.labels.distminβ Type:"FLOAT"Β· Default:3
Minimal length in degrees for labelled lines β that's the vibe for that last one, bestie. Don't forget it! π
--field[0].contour.labels.font.bitmap.path(PATH, defaultfonts/08.bmp) β bitmap path, aka where your font bitmap lives. It's giving font file realness π--field[0].contour.labels.font.bitmap.scale(FLOAT, default0.05) β bitmap scale. Adjust that size, bestie β¨--field[0].contour.labels.font.color.background(COLOR, default#00000000) β background color. Yes, that's fully transparent by default π--field[0].contour.labels.font.color.foreground(COLOR, default#ffffffff) β foreground color. White and opaque, slay π--field[0].contour.labels.format(STRING, default%12.2f) β format to print labels. That's your printf-style formatting, no cap π―--field[0].contour.labels.on(BOOLEAN, defaultFALSE) β enable labels. Flip it toTRUEif you want them to show up π--field[0].contour.lengths(FLOAT-LIST, default"") β list of dash lengths. For your contour lines, bestie π¦--field[0].contour.levels(FLOAT-LIST, default"") β list of levels. The contour levels you want, periodt π--field[0].contour.max(FLOAT, default-3.40282e+38) β max level. That's a tiny number, lowkey wild π--field[0].contour.min(FLOAT, default3.40282e+38) β min level. Huge number, highkey iconic π--field[0].contour.number(INTEGER, default10) β number of levels. Ten levels by default, cute π--field[0].contour.patterns(STRING-LIST, default"") β list of dash patterns. Get those patterns, bestie πΈ--field[0].contour.widths(FLOAT-LIST, default"") β list of widths. For your contour lines, slay π--field[0].diff.on(BOOLEAN, defaultFALSE) β show field difference. Turn it on to see the diff β¨--field[0].fatal.on(BOOLEAN, defaultFALSE) β fatal error if field fails to be created. Make it dramatic π--field[0].geometry.check.on(BOOLEAN, defaultFALSE) β check geometry. Verify that geometry, bestie π¦--field[0].geometry.frame.color1(COLOR, default#ffffffff) β first frame color. White, iconic π--field[0].geometry.frame.color2(COLOR, default#505050ff) β second frame color. A nice gray, periodt π--field[0].geometry.frame.dlat(FLOAT, default10) β latitude interval. Ten degrees, no cap π--field[0].geometry.frame.dlon(FLOAT, default10) β longitude interval. Also ten, bestie β¨--field[0].geometry.frame.on(BOOLEAN, defaultFALSE) β draw frame around domain. Frame it up π--field[0].geometry.frame.width(FLOAT, default0) β frame width. Zero width by default, so no frame unless you change it π--field[0].geometry.gaussian.apply_norm_scale.on(BOOLEAN, defaultTRUE) β apply norm scaling. It's on by default, slay π--field[0].geometry.gaussian.fit.on(BOOLEAN, defaultFALSE) β fit Gaussian latitude retrieval. Turn it on to fit, bestie π§--field[0].geometry.gencoords.on(BOOLEAN, defaultFALSE) β generate coordinates on GPU when possible. GPU go brrr π--field[0].geometry.height.on(BOOLEAN, defaultFALSE) β enable height. Get that height, queen π--field[0].geometry.height.path(FIELD-REF, default"") β height field path. Path to your height field, bestie π¦--field[0].geometry.height.scale(FLOAT, default0.05) β scale to apply to height field. Tiny scale, cute πΈ--field[0].geometry.subgrid.on(BOOLEAN, defaultFALSE) β create subgrid. Subgrid time, periodt π--field[0].geometry.triangle_strip.on(BOOLEAN, defaultTRUE) β enable use of triangle strip. On by default, iconic π--field[0].hilo.font.bitmap.path(PATH, defaultfonts/08.bmp) β bitmap path. Same font, different section π--field[0].hilo.font.bitmap.scale(FLOAT, default0.05) β bitmap scale. Scale it, bestie β¨--field[0].hilo.font.color.background(COLOR, default#00000000) β background color. Transparent by default, no cap π--field[0].hilo.font.color.foreground(COLOR, default#ffffffff) β foreground color. White, slay π--field[0].hilo.on(BOOLEAN, defaultFALSE) β display low & high. Show the lows and highs, bestie π--field[0].hilo.radius(FLOAT, default10) β high/low radius in degrees. Ten degrees, periodt π--field[0].isofill.levels(FLOAT-LIST, default"") β list of levels. Isofill levels, cute π--field[0].isofill.max(FLOAT, default-3.40282e+38) β max level. Tiny again, wild π--field[0].isofill.min(FLOAT, default3.40282e+38) β min level. Huge again, iconic π--field[0].isofill.number(INTEGER, default10) β number of levels. Ten, bestie β¨--field[0].mpiview.on(BOOLEAN, defaultFALSE) β enable MPI view. MPI vibes, slay π--field[0].mpiview.path(FIELD-REF, default"") β path to MPI distribution field. Path to the MPI field, bestie π¦--field[0].mpiview.scale(FLOAT, default0.1) β displacement scale. Point one, cute πΈ--field[0].no_value_pointer.on(BOOLEAN, defaultFALSE) β do not keep field values in memory. Save that RAM, queen π--field[0].palette.colors(COLOR-LIST, default"") β palette colors. Your colors, bestie π--field[0].palette.fixed.on(BOOLEAN, defaultFALSE) β fixed palette. Fix it, periodt π--field[0].palette.generate.levels(INTEGER, default10) β number of values to generate. Ten values, no cap β¨--field[0].palette.generate.on(BOOLEAN, defaultFALSE) β generate values. Generate them, bestie π§--field[0].palette.linear.on(BOOLEAN, defaultFALSE) β linear colorbar display. Linear vibes, slay π--field[0].palette.max(FLOAT, default-3.40282e+38) β palette max value. Tiny, wild π--field[0].palette.min(FLOAT, default3.40282e+38) β palette min value. Huge, iconic π--field[0].palette.name(PALETTE-NAME, default"default") β palette name. Default is"default", cute π--field[0].palette.ncolors(INTEGER, default256) β number of colors. 256 colors, bestie β¨--field[0].palette.offset(FLOAT, default0) β offset for colorbar figures. Zero offset, periodt π--field[0].palette.rainbow.direct.on(BOOLEAN, defaultFALSE) β direct/indirect rainbow. Rainbow direction, slay π--field[0].palette.rainbow.on(BOOLEAN, defaultFALSE) β generate rainbow palette. Rainbow time, bestie π¦--field[0].palette.scale(FLOAT, default1) β scale for colorbar figures. Scale of one, iconic π--field[0].palette.values(FLOAT-LIST, default"") β palette values. Your values, cutie π--field[0].path(FIELD-REF-LIST, default"") β list of GRIB files. GRIB files go here, bestie π--field[0].scalar.discrete.integer.on(BOOLEAN, defaultFALSE) β values are integers. Integers only, no cap β¨--field[0].scalar.discrete.missing_color(COLOR, default#00000000) β color for missing values. Transparent missing color, periodt π--field[0].scalar.discrete.on(BOOLEAN, defaultFALSE) β plot as a discrete field. Discrete vibes, slay π--field[0].scalar.light.reverse.b(FLOAT, default0.2) β reverse light coefficient. Point two, cute πΈ--field[0].scalar.light.reverse.c(FLOAT, default15) β reverse light coefficient. Fifteen, bestie β¨--field[0].scalar.light.reverse.on(BOOLEAN, defaultFALSE) β reverse light. Reverse it, queen π--field[0].scalar.pack.bits(INTEGER, default8) β number of bytes used to pack field. Eight bytes, bestie π--field[0].scalar.points.on(BOOLEAN, defaultFALSE) β display field as points. Points, not lines, periodt π--field[0].scalar.points.size.factor.on(BOOLEAN, defaultTRUE) β apply scale factor to point size. On by default, slay β¨--field[0].scalar.points.size.value(FLOAT, default1) β field point size. Size one, cute π--field[0].scalar.points.size.variable.on(BOOLEAN, defaultFALSE) β variable field point size. Variable size, bestie π¦--field[0].scalar.smooth.on(BOOLEAN, defaultFALSE) β smooth scalar fields. Smooth it out, queen π--field[0].scalar.widen.merge.on(BOOLEAN, defaultFALSE) β merge other regions. Merge them, periodt π--field[0].scalar.widen.merge.value(FLOAT, default3.40282e+38) β merge value. Huge value, iconic π--field[0].scalar.widen.on(BOOLEAN, defaultFALSE) β enable region widening. Widen those regions, bestie πΈ--field[0].scalar.widen.radius(INTEGER-LIST, default0) β radius for regions. Zero radius, cute β¨--field[0].scalar.widen.values(FLOAT-LIST, default0) β values for regions. Zero values, slay π--field[0].scalar.wireframe.on(BOOLEAN, defaultFALSE) β display field as wireframe. Wireframe mode, no cap π--field[0].scale(SCALE, default1) β scales to be applied to fields. Scale of one, periodt β¨--field[0].stream.density(FLOAT, default1) β stream lines density. Density one, bestie π¦--field[0].stream.motion.nwaves(FLOAT, default10) β number of waves over 1000km. Ten waves, slay π--field[0].stream.motion.on(BOOLEAN, defaultFALSE) β enable stream lines motion. Motion on, queen π--field[0].stream.motion.timeaccel(FLOAT, default10000) β time acceleration. Ten thousand, iconic π--field[0].stream.width(FLOAT, default0) β stream lines width. Zero width, cute π--field[0].typeβ what kind of field are we even doing here, bestie? Your options areSCALAR,VECTOR,STREAM, orCONTOURπ- Type:
FIELD-TYPEΒ· Default:SCALAR
- Type:
--field[0].user_pref.onβ go look up this field's settings in the database, girl, they're saved there π«Ά- Type:
BOOLEANΒ· Default:TRUE
- Type:
--field[0].vector.arrow.colorβ the color for your arrows, obviously β¨- Type:
COLORΒ· Default:#ffffffff
- Type:
--field[0].vector.arrow.fill.onβ fill the arrow in (solid vibes) π- Type:
BOOLEANΒ· Default:FALSE
- Type:
--field[0].vector.arrow.fixed.onβ arrows that stay one size no matter what, iconic and stable β- Type:
BOOLEANΒ· Default:FALSE
- Type:
--field[0].vector.arrow.head_sizeβ how big the arrow heads get, no cap πΈ- Type:
FLOATΒ· Default:0.1
- Type:
--field[0].vector.arrow.kindβ which kind of arrow you want, pick your fighter π- Type:
INTEGERΒ· Default:0
- Type:
--field[0].vector.arrow.minβ the minimum value for the vectors- Type:
FLOATΒ· Default:0
- Type:
--field[0].vector.arrow.onβ show the arrows, let them slay πΉ- Type:
BOOLEANΒ· Default:TRUE
- Type:
--field[0].vector.barb.angleβ the angle of the barbs- Type:
FLOATΒ· Default:60
- Type:
--field[0].vector.barb.circle.levelβ anything under this value gets a little circle drawn on it, cute π¦- Type:
FLOATΒ· Default:1
- Type:
--field[0].vector.barb.colorβ barbs color, pick your fave π- Type:
COLORΒ· Default:#ffffffff
- Type:
--field[0].vector.barb.dlengβ barbs length (thedone, don't ask, just set it)- Type:
FLOATΒ· Default:0.1
- Type:
--field[0].vector.barb.lengthβ barbs length, the regular one π- Type:
FLOATΒ· Default:0.25
- Type:
--field[0].vector.barb.levelsβ the barbs levels, a whole lil list- Type:
FLOAT-LISTΒ· Default:0 5 10 15 20 25
- Type:
--field[0].vector.barb.onβ turn barbs ON, they're off by default bestie π- Type:
BOOLEANΒ· Default:FALSE
- Type:
--field[0].vector.barb.pennant.levelsβ pennants levels, flags on flags π©- Type:
FLOAT-LISTΒ· Default:0 25 50 75
- Type:
--field[0].vector.densityβ how thicc the vector field is, how many you're drawing per area- Type:
FLOATΒ· Default:50
- Type:
--field[0].vector.norm.onβ show the norm field too, why not β¨- Type:
BOOLEANΒ· Default:TRUE
- Type:
--field[0].vector.scaleβ scale those vectors up or down- Type:
FLOATΒ· Default:1
- Type:
--field[0].visible.onβ is the field visible? Yes queen, show it π- Type:
BOOLEANΒ· Default:TRUE
- Type:
--geopoints.latβ the name of your latitude field- Type:
STRINGΒ· Default:""
- Type:
--geopoints.lonβ the name of your longitude field- Type:
STRINGΒ· Default:""
- Type:
--geopoints.onβ display your geopoints, off by default ngl- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.pathβ where they live, the path π£οΈ- Type:
PATHΒ· Default:""
- Type:
--geopoints.points.colorβ what color the points are π- Type:
COLORΒ· Default:#ffffffff
- Type:
--geopoints.points.palette.colorsβ a whole list of palette colors, custom curate it bestie π- Type:
COLOR-LISTΒ· Default:""
- Type:
--geopoints.points.palette.fixed.onβ lock the palette so it doesn't wiggle around- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.points.palette.generate.levelsβ how many values to generate for it- Type:
INTEGERΒ· Default:10
- Type:
--geopoints.points.palette.generate.onβ actually generate those values β¨- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.points.palette.linear.onβ linear colorbar display, smooth and gradient-y- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.points.palette.maxβ the max value for your palette- Type:
FLOATΒ· Default:-3.40282e+38
- Type:
--geopoints.points.palette.minβ the min value for your palette- Type:
FLOATΒ· Default:3.40282e+38
- Type:
--geopoints.points.palette.nameβ what your palette is called- Type:
PALETTE-NAMEΒ· Default:none
- Type:
--geopoints.points.palette.ncolorsβ how many colors total- Type:
INTEGERΒ· Default:256
- Type:
--geopoints.points.palette.offsetβ nudge the colorbar figures over a bit- Type:
FLOATΒ· Default:0
- Type:
--geopoints.points.palette.rainbow.direct.onβ direct vs indirect rainbow, the eternal question π- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.points.palette.rainbow.onβ generate the whole rainbow palette, gorgeous- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.points.palette.scaleβ scale for the colorbar figures- Type:
FLOATΒ· Default:1
- Type:
--geopoints.points.palette.valuesβ your palette values, as a list π- Type:
FLOAT-LISTΒ· Default:""
- Type:
--geopoints.points.scaleβ scale, the general one- Type:
SCALEΒ· Default:1
- Type:
--geopoints.points.size.valueβ how big each point is- Type:
FLOATΒ· Default:1
- Type:
--geopoints.points.size.variable.onβ let the point size vary, let them have range π¦- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.points.visible.onβ are the points visible? Yes babe π- Type:
BOOLEANΒ· Default:TRUE
- Type:
--geopoints.time.onβ make the points show up over time, dramatic reveal energy β³- Type:
BOOLEANΒ· Default:FALSE
- Type:
--geopoints.time.rateβ how many points get added each new frame- Type:
INTEGERΒ· Default:1
- Type:
--geopoints.valβ the name of your value field- Type:
STRINGΒ· Default:""
- Type:
--grid.colorβ the grid color, it's giving lime green by default π- Type:
COLORΒ· Default:#00ff00ff
- Type:
--grid.dash_lengthβ length of the dashes, measured in degrees- Type:
FLOATΒ· Default:4
- Type:
--grid.intervalβ how many lines apart the non-dashed lines are- Type:
INTEGERΒ· Default:2
- Type:
--grid.labels.angleβ angle your labels sit at- Type:
FLOATΒ· Default:0
- Type:
--grid.labels.font.bitmap.pathβ where the bitmap font lives- Type:
PATHΒ· Default:fonts/08.bmp
- Type:
--grid.labels.font.bitmap.scaleβ scale of the bitmap- Type:
FLOATΒ· Default:0.05
- Type:
--grid.labels.font.color.backgroundβ background color behind the label text- Type:
COLORΒ· Default:#00000000
- Type:
--grid.labels.font.color.foregroundβ the text color itself β¨- Type:
COLORΒ· Default:#ffffffff
- Type:
--grid.labels.latβ latitude where your longitude labels go- Type:
LATITUDEΒ· Default:0
- Type:
--grid.labels.lonβ longitude where your latitude labels go- Type:
LONGITUDEΒ· Default:0
- Type:
--grid.labels.onβ turn on the labels (default is a sad littleFALSEbestie) π- Type:
BOOLEANΒ· Default:FALSE
- Type:
--grid.onβ display that grid! AlsoFALSEby default π- Type:
BOOLEANΒ· Default:FALSE
- Type:
--grid.pointsβ how many points along a parallel- Type:
INTEGERΒ· Default:200
- Type:
--grid.resolutionβ grid resolution, higher = more detail- Type:
INTEGERΒ· Default:9
- Type:
--grid.scaleβ grid scale- Type:
SCALEΒ· Default:1.005
- Type:
--grid.visible.onβ is the grid visible? Yup π«Ά- Type:
BOOLEANΒ· Default:TRUE
- Type:
--land.layers[0].colorβ the land color, sandy lil default ποΈ- Type:
COLORΒ· Default:#ffe2abff
- Type:
--land.layers[0].onβ enable this layer- Type:
BOOLEANΒ· Default:TRUE
- Type:
--land.layers[0].pathβ path to your coastlines- Type:
PATHΒ· Default:coastlines/shp/GSHHS_c_L1.shp
- Type:
--land.layers[0].scaleβ scale- Type:
SCALEΒ· Default:1
- Type:
--land.layers[0].selectorβ shape selection, pick your shape π- Type:
STRINGΒ· Default:""
- Type:
--land.layers[0].subdivision.angleβ max angle for subdivision- Type:
FLOATΒ· Default:1
- Type:
--land.layers[0].subdivision.onβ enable subdivision- Type:
BOOLEANΒ· Default:TRUE
- Type:
--land.onβ enable land itself. It'sFALSEby default, so go turn it on π- Type:
BOOLEANΒ· Default:FALSE
- Type:
--land.visible.onβ is the land visible? Yes queen π- Type:
BOOLEANΒ· Default:TRUE
- Type:
--landscape.colorβ color for the landscape- Type:
COLORΒ· Default:#00000000
- Type:
--landscape.flat.onβ make the Earth FLAT, bestie, flat-earth mode is on by default π- Type:
BOOLEANΒ· Default:TRUE
- Type:
--landscape.geometry.check.onβ check the geometry, be thorough- Type:
BOOLEANΒ· Default:FALSE
- Type:
--landscape.geometry.frame.color1β first frame color- Type:
COLORΒ· Default:#ffffffff
- Type:
--landscape.geometry.frame.color2β second frame color- Type:
COLORΒ· Default:#505050ff
- Type:
--landscape.geometry.frame.dlatβ latitude interval for the frame- Type:
FLOATΒ· Default:10
- Type:
--landscape.geometry.frame.dlonβ longitude interval for the frame- Type:
FLOATΒ· Default:10
- Type:
--landscape.geometry.frame.onβ draw a frame around the domain, frame it like a pic πΌοΈ- Type:
BOOLEANΒ· Default:FALSE
- Type:
--landscape.geometry.frame.widthβ how wide the frame is- Type:
FLOATΒ· Default:0
- Type:
--landscape.geometry.gaussian.apply_norm_scale.onβ apply norm scaling- Type:
BOOLEANΒ· Default:TRUE
- Type:
--landscape.geometry.gaussian.fit.onβ fit the Gaussian latitude retrieval- Type:
BOOLEANΒ· Default:FALSE
- Type:
--landscape.geometry.gencoords.onβ generate coordinates on the GPU when possible, speed demon behavior π₯- Type:
BOOLEANΒ· Default:FALSE
- Type:
--landscape.geometry.height.onβ enable height- Type:
BOOLEANΒ· Default:FALSE
- Type:
--landscape.geometry.height.pathβ the height field path- Type:
FIELD-REFΒ· Default:""
- Type:
--landscape.geometry.height.scaleβ scale the height- Type:
FLOATΒ· Default:0.05
- Type:
- (page-break casualty π β this is the tail end of the option that started on the previous page) β the description is: scale to apply to height field.
--landscape.geometry.subgrid.onβ type:BOOLEAN, default:FALSE. It creates a subgrid β¨--landscape.geometry.triangle_strip.onβ type:BOOLEAN, default:TRUE. Turns on the use of triangle strip π--landscape.grid.number_of_latitudesβ type:INTEGER, default:500. How many latitudes, bestie π--landscape.grid.pathβ type:STRING, default:""(empty). Grab the geometry from this file π--landscape.lonlat.position.lat1β type:FLOAT, default:-90. First latitude of the display π--landscape.lonlat.position.lat2β type:FLOAT, default:90. Last latitude of the display π--landscape.lonlat.position.lon1β type:FLOAT, default:-180. First longitude of the display π--landscape.lonlat.position.lon2β type:FLOAT, default:180. Last longitude of the display π--landscape.onβ type:BOOLEAN, default:FALSE. Enables the landscape, periodt ποΈ--landscape.pathβ type:STRING, default:landscape/Whole_world_-_land_and_oceans_08000.png. Path to the landscape image, in BMP format πΌοΈ--landscape.projectionβ type:STRING, default:LONLAT. The projection: eitherLONLATorWEBMERCATORπΊοΈ--landscape.scaleβ type:SCALE, default:1. Scale β¨--landscape.visible.onβ type:BOOLEAN, default:TRUE. The landscape is visible π--landscape.wireframe.onβ type:BOOLEAN, default:FALSE. Draws the landscape in wireframe mode π₯
okay next up, the mapscale crew π
--mapscale.color1β type:COLOR, default:#ffffffff. First color π¨--mapscale.color2β type:COLOR, default:#505050ff. Second color π¨--mapscale.font.bitmap.pathβ type:PATH, default:fonts/16.bmp. Bitmap path π€--mapscale.font.bitmap.scaleβ type:FLOAT, default:0.02. Bitmap scale π€--mapscale.font.color.backgroundβ type:COLOR, default:#00000000. Background color π¨--mapscale.font.color.foregroundβ type:COLOR, default:#ffffffff. Foreground color π¨--mapscale.onβ type:BOOLEAN, default:FALSE. Activates the mapscale β--mapscale.position.xmaxβ type:FLOAT, default:0.25. Mapscalexmaxπ--mapscale.position.xminβ type:FLOAT, default:0.05. Mapscalexminπ--mapscale.position.ymaxβ type:FLOAT, default:0.07. Mapscaleymaxπ--mapscale.position.yminβ type:FLOAT, default:0.05. Mapscaleyminπ
now the render cluster, aka the glow-up department β¨π₯οΈ
--render.antialiasing.onβ type:BOOLEAN, default:TRUE. Enables antialiasing β smooth those edges πΈ--render.antialiasing.samplesβ type:INTEGER, default:4. How many samples for the antialiasing πΈ--render.debug.onβ type:BOOLEAN, default:FALSE. Enables OpenGL debugging π--render.egl.deviceβ type:INTEGER, default:-1. Device rank ποΈ--render.fullscreen.onβ type:BOOLEAN, default:FALSE. Window in fullscreen mode π₯οΈ--render.fullscreen.x.onβ type:BOOLEAN, default:FALSE. Window in fullscreen mode in the X direction βοΈ--render.fullscreen.y.onβ type:BOOLEAN, default:FALSE. Window in fullscreen mode in the Y direction βοΈ--render.heightβ type:INTEGER, default:800. Window height π--render.info.onβ type:BOOLEAN, default:FALSE. Shows hardware info π»--render.offscreen.formatβ type:STRING, default:snapshot_%N.png. The PNG format output πΌοΈ--render.offscreen.framesβ type:INTEGER, default:1. Number of frames to issue in offline mode ποΈ--render.offscreen.onβ type:BOOLEAN, default:FALSE. Runs in offline mode ποΈ--render.opengl.versionβ type:FLOAT, default:4.3. The OpenGL version π₯--render.position.xβ type:INTEGER, default:-1. Window x position π--render.position.yβ type:INTEGER, default:-1. Window y position π--render.statistics.onβ type:BOOLEAN, default:FALSE. Issues statistics when the window is closed π--render.titleβ type:STRING, default:""(empty). Window title π¬--render.widthβ type:INTEGER, default:800. Window width π
--review.onβ type:BOOLEAN, default:FALSE. Enables review mode π--review.pathβ type:PATH, default:""(empty). The file to review π
and now rivers ποΈπ§ (yes the descriptions still say "coastlines", no I did not make that up, that's literally what's written π)
--rivers.lines.colorβ type:COLOR, default:#ffffffff. Coastlines color π¨--rivers.lines.formatβ type:STRING, default:gshhg. Input format π₯--rivers.lines.latmaxβ type:FLOAT, default:0. Maximum latitude π--rivers.lines.latminβ type:FLOAT, default:0. Minimum latitude π--rivers.lines.lonmaxβ type:FLOAT, default:0. Maximum longitude π--rivers.lines.lonminβ type:FLOAT, default:0. Minimum longitude π--rivers.lines.pathβ type:STRING, default:coastlines/gshhg/WDBII_bin/wdb_rivers_f.b. Path to the lines file π--rivers.lines.scaleβ type:SCALE, default:1.005. Coastlines scale π--rivers.lines.selectorβ type:STRING, default:""(empty). Selector π―--rivers.lines.visible.onβ type:BOOLEAN, default:TRUE. The lines are visible π--rivers.onβ type:BOOLEAN, default:FALSE. Displays rivers π§
okay the scene gang, this one's long, stay with me π«Ά
--scene.center.gridpointβ type:INTEGER, default:-1. Rank of the grid point to set focus on π―--scene.center.onβ type:BOOLEAN, default:FALSE. Centers on the first field π―--scene.date.font.bitmap.pathβ type:PATH, default:fonts/08.bmp. Bitmap path π€--scene.date.font.bitmap.scaleβ type:FLOAT, default:0.05. Bitmap scale π€--scene.date.font.color.backgroundβ type:COLOR, default:#00000000. Background color π¨--scene.date.font.color.foregroundβ type:COLOR, default:#ffffffff. Foreground color π¨--scene.date.onβ type:BOOLEAN, default:FALSE. Displays the date π--scene.image.alignβ type:STRING, default:""(empty). Image alignment π--scene.image.onβ type:BOOLEAN, default:FALSE. Enables image display πΌοΈ--scene.image.pathβ type:PATH, default:""(empty). Path to the image π--scene.image.x0β type:FLOAT, default:0. Left abscissa β¬ οΈ--scene.image.x1β type:FLOAT, default:1. Right abscissa β‘οΈ--scene.image.y0β type:FLOAT, default:0. Lower ordinate β¬οΈ--scene.image.y1β type:FLOAT, default:1. Upper ordinate β¬οΈ--scene.interpolation.framesβ type:INTEGER, default:10. Number of frames ποΈ--scene.interpolation.onβ type:BOOLEAN, default:FALSE. Enables interpolation ποΈ--scene.light.dateβ type:DATE, default:0000/00/00_00:00:00. Date for the sunlight position βοΈ--scene.light.date_from_grib.onβ type:BOOLEAN, default:FALSE. Calculates the light position from the GRIB date βοΈ--scene.light.latβ type:LATITUDE, default:0. Light latitude π--scene.light.lonβ type:LONGITUDE, default:0. Light longitude π--scene.light.nightβ type:FLOAT, default:0.1. Fraction of light during for night π (yes, "during for night", that's the original wording, I do not edit the source bestie π)--scene.light.onβ type:BOOLEAN, default:FALSE. Enables light π‘--scene.light.rotate.onβ type:BOOLEAN, default:FALSE. Makes the sunlight move π--scene.light.rotate.rateβ type:FLOAT, default:1. Rate of rotation: angle/frame π--scene.lon_at_hourβ type:FLOAT, default:-1. Sets the longitude at solar time π--scene.rotate_earth.onβ type:BOOLEAN, default:FALSE. Makes the earth rotate π--scene.rotate_earth.rateβ type:FLOAT, default:1. Rate of rotation: angle/frame π--scene.select.field_rankβ type:INTEGER, default:0. Rank of the field to select π―--scene.text.aβ type:STRING-LIST, default:""(empty). Text alignment π¬--scene.text.font.bitmap.pathβ type:PATH, default:fonts/08.bmp. Bitmap path π€--scene.text.font.bitmap.scaleβ type:FLOAT, default:0.05. Bitmap scale π€--scene.text.font.color.backgroundβ type:COLOR, default:#00000000. Background color π¨--scene.text.font.color.foregroundβ Type:COLORΒ· Default:#ffffffffΒ· the foreground colour, bestie, the actual ink of your text π--scene.text.font.color.background... no wait, we're on foreground β okay continuing smoothly: next up is--scene.text.onβ Type:BOOLEANΒ· Default:FALSEΒ· turn text on. Wow, a switch that says what it means, iconic behaviour honestly β¨--scene.text.sβ Type:STRING-LISTΒ· Default:""Β· the actual strings you want displayed. It's a list, so yes you can stack them, go off π--scene.text.xβ Type:FLOAT-LISTΒ· Default:""Β· x coordinates of those strings π--scene.text.yβ Type:FLOAT-LISTΒ· Default:""Β· y coordinates of those strings π pairs with the x ones, they're a matched set, soulmates literally π
The title stuff β¨ (still --scene.title.*)
--scene.title.aβ Type:STRINGΒ· Default:"NW"Β· the alignment, and yes it defaults to northwest like a little compass baby π§--scene.title.font.bitmap.pathβ Type:PATHΒ· Default:"fonts/08.bmp"Β· where the bitmap font lives ποΈ--scene.title.font.bitmap.scaleβ Type:FLOATΒ· Default:0.05Β· how big that bitmap gets scaled to π--scene.title.font.color.backgroundβ Type:COLORΒ· Default:#00000000Β· background colour (fully transparent by default, sneaky π)--scene.title.font.color.foregroundβ Type:COLORΒ· Default:#ffffffffΒ· foreground colour, the main character ink π--scene.title.onβ Type:BOOLEANΒ· Default:FALSEΒ· enable the title. Off by default, she's shy π--scene.title.textβ Type:STRINGΒ· Default:""Β· the title itself, put something slay in there π--scene.title.xβ Type:FLOATΒ· Default:0Β· coordinates π--scene.title.yβ Type:FLOATΒ· Default:1Β· coordinates π
Travelling π (the camera go zoom-zoom through space)
--scene.travelling.framesβ Type:INTEGERΒ· Default:100Β· number of frames for the little journey ποΈ--scene.travelling.onβ Type:BOOLEANΒ· Default:FALSEΒ· enable travelling, camera main character energy π--scene.travelling.pos1.fovβ Type:FLOATΒ· Default:0Β· field of view at position 1--scene.travelling.pos1.latβ Type:LATITUDEΒ· Default:0Β· latitude at position 1--scene.travelling.pos1.lonβ Type:LONGITUDEΒ· Default:0Β· longitude at position 1--scene.travelling.pos2.fovβ Type:FLOATΒ· Default:0Β· field of view at position 2--scene.travelling.pos2.latβ Type:LATITUDEΒ· Default:0Β· latitude at position 2--scene.travelling.pos2.lonβ Type:LONGITUDEΒ· Default:0Β· longitude at position 2
It glides from pos1 to pos2, that's the whole vibe, ok? π¦
The shell π
--shell.onβ Type:BOOLEANΒ· Default:FALSEΒ· run command line π₯οΈ--shell.prompt.onβ Type:BOOLEANΒ· Default:FALSEΒ· start an interactive session after the batch script finishes. So it hands you the keys back when the script's done, generous fr fr π«Ά
Ticks π― (N, S, E, W β we love a grid)
Every side has the same little family of options, so here's the whole squad. Each one has dlat (latitude interval), dlon (longitude interval), nswe.on (show North/South/West/East labels instead of +/-) and on (enable that side).
--ticks.E.dlatβ Type:FLOATΒ· Default:10Β· latitude interval for the East side--ticks.E.dlonβ Type:FLOATΒ· Default:10Β· longitude interval for the East side--ticks.E.nswe.onβ Type:BOOLEANΒ· Default:FALSEΒ· North/South/West/East labels instead of+/---ticks.E.onβ Type:BOOLEANΒ· Default:TRUEΒ· enable the East side--ticks.N.dlatβ Type:FLOATΒ· Default:10Β· latitude interval for the North side--ticks.N.dlonβ Type:FLOATΒ· Default:10Β· longitude interval for the North side--ticks.N.nswe.onβ Type:BOOLEANΒ· Default:FALSEΒ· North/South/West/East labels instead of+/---ticks.N.onβ Type:BOOLEANΒ· Default:TRUEΒ· enable the North side--ticks.S.dlatβ Type:FLOATΒ· Default:10Β· latitude interval for the South side--ticks.S.dlonβ Type:FLOATΒ· Default:10Β· longitude interval for the South side--ticks.S.nswe.onβ Type:BOOLEANΒ· Default:FALSEΒ· North/South/West/East labels instead of+/---ticks.S.onβ Type:BOOLEANΒ· Default:TRUEΒ· enable the South side--ticks.W.dlatβ Type:FLOATΒ· Default:10Β· latitude interval for the West side--ticks.W.dlonβ Type:FLOATΒ· Default:10Β· longitude interval for the West side--ticks.W.nswe.onβ Type:BOOLEANΒ· Default:FALSEΒ· North/South/West/East labels instead of+/---ticks.W.onβ Type:BOOLEANΒ· Default:TRUEΒ· enable the West side
The tick frame, ticks themselves and their labels π
--ticks.frame.colorβ Type:COLORΒ· Default:#ff0000ffΒ· frame colour (red default, she's bold π€)--ticks.frame.onβ Type:BOOLEANΒ· Default:FALSEΒ· enable the frame--ticks.frame.widthβ Type:FLOATΒ· Default:0.01Β· frame width--ticks.labels.font.bitmap.pathβ Type:PATHΒ· Default:"fonts/08.bmp"Β· bitmap path ποΈ--ticks.labels.font.bitmap.scaleβ Type:FLOATΒ· Default:0.02Β· bitmap scale--ticks.labels.font.color.backgroundβ Type:COLORΒ· Default:#00000000Β· background colour--ticks.labels.font.color.foregroundβ Type:COLORΒ· Default:#ffffffffΒ· foreground colour--ticks.labels.formatβ Type:STRINGΒ· Default:"%+06.2f"Β· the format used for tick labels, printf-core π--ticks.labels.onβ Type:BOOLEANΒ· Default:FALSEΒ· display tick labels--ticks.lines.colorβ Type:COLORΒ· Default:#ffffffffΒ· tick colour--ticks.lines.kindβ Type:INTEGERΒ· Default:0Β· tick kind--ticks.lines.lengthβ Type:FLOATΒ· Default:0.025Β· tick length--ticks.lines.onβ Type:BOOLEANΒ· Default:FALSEΒ· display the ticks--ticks.lines.widthβ Type:FLOATΒ· Default:0.01Β· tick width--ticks.visible.onβ Type:BOOLEANΒ· Default:TRUEΒ· are the ticks visible. She said yes by default π
The view π (camera, projection, all of it)
--view.center.onβ Type:BOOLEANΒ· Default:TRUEΒ· centre the view--view.clip.dlatβ Type:FLOATΒ· Default:5Β· how much latitude to clip βοΈ--view.clip.dlonβ Type:FLOATΒ· Default:10Β· how much longitude to clip βοΈ--view.clip.onβ Type:BOOLEANΒ· Default:TRUEΒ· enable Mercator and lat/lon clipping--view.clip.xmaxβ Type:FLOATΒ· Default:1Β· max viewport x coordinate--view.clip.xminβ Type:FLOATΒ· Default:0Β· min viewport x coordinate--view.clip.ymaxβ Type:FLOATΒ· Default:1Β· max viewport y coordinate--view.clip.yminβ Type:FLOATΒ· Default:0Β· min viewport y coordinate--view.distanceβ Type:FLOATΒ· Default:6Β· camera distance π·--view.fovβ Type:ANGLEΒ· Default:20Β· camera field of view--view.latβ Type:LATITUDEΒ· Default:0Β· camera latitude--view.lonβ Type:LONGITUDEΒ· Default:0Β· camera longitude--view.pitchβ Type:ANGLEΒ· Default:0Β· camera pitch--view.projectionβ Type:PROJECTIONΒ· Default:"XYZ"Β· the options areMercator,XYZ,latlon,polar_north,polar_southπ--view.rollβ Type:ANGLEΒ· Default:0Β· camera roll--view.trans.matrixβ Type:FLOAT-LISTΒ· Default:""Β· transformation matrix values π’--view.trans.onβ Type:BOOLEANΒ· Default:FALSEΒ· enable the transformation matrix--view.transformationβ Type:TRANSFORMATIONΒ· Default:"PERSPECTIVE"Β·Perspectiveororthographicβ¨--view.yawβ Type:ANGLEΒ· Default:0Β· camera yaw--view.zoom.latβ Type:LATITUDEΒ· Default:46.7Β· latitude of the zoom--view.zoom.lonβ Type:LONGITUDEΒ· Default:2Β· longitude of the zoom--view.zoom.onβ Type:BOOLEANΒ· Default:FALSEΒ· enable zoom with the Schmidt transform π§--view.zoom.stretchβ Type:FLOATΒ· Default:0.5Β· the stretching factor π«
β¨ SEE ALSO β¨
Go touch grass on the internet, bestie, here's where the lore lives πΈ
- The
glgribpage ongithub.com:
https://github.com/pmarguinaud/glgrib
- OpenGL:
https://www.opengl.org/
- GRIB edition 2:
https://community.wmo.int/activity-areas/wis/latest-version
β¨ AUTHORS β¨
Philippe Marguinaud (pmarguinaud@hotmail.com) β thank you for your service, king ππ
and that's the whole page, babe π this was glgrib-egl(1), dated 2026-07-03, and it lives in the glgrib source/version family. read it, love it, no cap π
β¨
π¦ where this page comes from
- ubuntu stonking: glgrib-egl 1.0-6build2 Β· GPL-3.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms