TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

Geodata Processor

  _______  _                                   ____   _____
 |__   __|(_)                                 |___ \ |  __ \
    | |    _  _ __   _ __ ___    __ _  _ __     __) || |  | |
    | |   | || '_ \ | '_ ` _ \  / _` || '_ \   |__ < | |  | |
    | |   | || | | || | | | | || (_| || | | |  ___) || |__| |
    |_|   |_||_| |_||_| |_| |_| \__,_||_| |_| |____/ |_____/

          http://www.tinman3d.com - info@tinman3d.com

Tinman Processor - v1.0 (C) 2012-2020 Matthias Englert, Fulda

Using logfile path: c:\Users\Tinman3D\tinmanpc.log
Using geo registry: EPSG 9.1 / Tinman 1.0

No command line given, exiting now.

Type 'tinmanpc help' for a quick-start.

The geodata processor is a command-line tool that provides access to the functionality of the Tinman 3D SDK via scripting (see Scripting).

Basically, the user configures one or more Tinman.Operation objects, which are then run by the Processor.

Please refer to the Geodata Examples for more details on how to use the geodata processor.

The executables of the geodata processor can be found in the Tinman 3D SDK package here:

bin/win.*/tinmanpc

System Info

You can dump system information specific to the Tinman 3D SDK with the geodata processor.

This is useful to quickly determine which plugins are available and to find out where each module puts its user data.

> tinmanpc sysinfo

Dumping system information...

Tinman.Core v1.0 - 2020/12/22

  Settings : c:\Users\Tinman3D\AppData\Local\Tinman3D\Tinman.Core

  DatabaseUtil.Cache   : 96 MB
  LowLevel.Is64Bit     : true
  LowLevel.IsDebug     : false
  LowLevel.Language    : C#
  LowLevel.MemoryTotal : 16069 MB
  LowLevel.MemoryUsed  : 56 MB
  LowLevel.Platform    : DOT.NET 4.8/WinAPI
  LowLevel.Processors  : 24
  Path.Home            : c:\Users\Tinman3D
  Path.Temp            : c:\Users\Tinman3D\AppData\Local\Temp\

Tinman.Terrain v1.0 - 2020/12/22

  Settings : c:\Users\Tinman3D\AppData\Local\Tinman3D\Tinman.Terrain

  Heightmap.Cache : 1024 MB
  Pyramid.Cache   : 1024 MB

  ImageFormat

    'Any' : Automatic image format
    'BMP' : Built-in support for BMP
    'DDS' : Built-in support for DDS
    'JPG' : Built-in support for JPEG
    'PNG' : Built-in support for PNG
    'PXB' : Tinman 3D PiXel Buffer
    'TGA' : Built-in support for TGA
    'TIFF' : Built-in support for TIFF, GeoTIFF, BigTIFF
    'TXB' : Tinman 3D TeXel Buffer
    'GDAL' : GDAL 2.4.4, released 2020/01/08
    'GDAL+PROJ' : GDAL 2.4.4, released 2020/01/08

  ShapeFormat

    'Any' : Automatic shape format
    'CSH' : Tinman 3D Compiled SHape
    'SHP' : ESRI Shapefile

Tinman.AddOns.GDAL v1.0 - 2020/12/22

  Settings : c:\Users\Tinman3D\AppData\Local\Tinman3D\Tinman.AddOns.GDAL

Tinman.Engine v1.0 - 2020/12/22

  Settings : c:\Users\Tinman3D\AppData\Local\Tinman3D\Tinman.Engine

  ModelFormat

    'Any' : Automatic model format
    'CMH' : Tinman 3D Compiled Model Hierarchy
    'LAS' : LASer (LAS) File Format 1.3
    'OBJ' : Wavefront OBJ

Tinman.AddOns v1.0 - 2020/12/22

  Settings : c:\Users\Tinman3D\AppData\Local\Tinman3D\Tinman.AddOns

  ConfigValueBrowser:

    'Tinman/AddOns'

Tinman.AddOns.Assimp v1.0 - 2020/12/22

  Settings : c:\Users\Tinman3D\AppData\Local\Tinman3D\Tinman.AddOns.Assimp

Tinman.Processor v1.0 - 2020/12/22

  Settings : c:\Users\Tinman3D\AppData\Local\Tinman3D\Tinman.Processor

Help Browser

Help is built into the Processor tool, just type this to get started:

> tinmanpc help

Command line usage:

help <name>

  Shows information about the config script element <name>.

  Try 'help Tinman' for a start.

whats <path>

  Shows information about the file given by <path>.

grammar

  Displays detailed information about the syntax of the command line.

run <targets> [ with <parameters> ] [ from <path> ]

  Runs action targets that are defined in a config script.

  targets    : Comma-separated list of script expressions that shall be
               evaluated and processed or * to run all suitable variables in
               the script.

  parameters : Optional comma-separated list of <lvalue>=<expr> pairs, where
               <lvalue> is an expression that evaluates to an L-value (e.g. a
               script variable or config object field) and <expr> is the
               expression that gives the value.

  path       : Optional path to the config script file. If not given, the
               config script text is read from standard input.

  The following config types can be run:

  Tinman.Operation

    A background operation, e.g. for importing geodata into heightmaps or
    projecting geodata. A progress bar is displayed for each target.

dump [ @asc | @bmp | @hgt ] <targets>
     [ with <parameters> ]
     [ from <path> ]

  Similar to 'run' command, but prints information about the targets instead of
  processing them.

  Use '@asc' to dump image pixels onto the console as an ASCII art image. This
  can be useful for quickly checking that all parameters are set correctly
  before starting a lengthy import operation.

  Use '@bmp' to dump the image as a bitmap file into the current directory.

  Use '@hgt' to dump the image as a rectangular heightmap dataset file into
  the current directory.

sysinfo

  Dumps some system information.

unlock <file>

  Unlocks a protected content file.

  The unlock key is read from standard input.

The help system includes a copy of the scripting Reference, so you can work with the geodata processor even if you have no access to this manual.

The Workshop Application provides a much more convenient way to work with script files.

Log Messages

A logfile is written to each time the Processor runs (tinmanpc.log). The full path to the logfile is indicated in the console output.

2015-07-01 06:49:40 [C] Tinman Processor started with command line:
                        whats Logo.png                              [Tinman.Tools.Processor.ProcessorApplication]

Errors are indicated with [E], warnings with [W].

During normal operation, neither errors nor warnings should occur.

Inspecting Geodata

You can use the geodata processor to inspect properties of images and datasets:

> tinmanpc whats mega90n000eb.lbl

What is [mega90n000eb.lbl]?

It is a file in the local filesystem:

e:\Hive\svn.tinman\release\data\geo\Mars\MOLA\data\mega90n000eb.lbl

It is an image:

Image.Info
{
  width                = 5760,
  height               = 2880,
  pixelFormat          = [Grayscale, SixteenBits],
  nodata               = -32768,
  pixelRange           = {Vec2: -32768, 32767},
  layer                = Elevation,
  georef               =
  {
    coordSys =
    {
      name           = 'SIMPLE_CYLINDRICAL MARS',
      geographic     = {null, 'D_MARS', {null, 'MARS', 3396000}, {null, 'Reference_Meridian'}},
      projection     = CoordOp
      {
        method    = Equirectangular,
        easting   = {0, {'EPSG::9001/U', 'metre', Length}},
        latitude  = {0, {'EPSG::9102/U', 'degree', Angle, 0.0174532925199433}},
        longitude = {180, {'EPSG::9102/U', 'degree', Angle, 0.0174532925199433}},
        northing  = {0, {'EPSG::9001/U', 'metre', Length}},
        parallel1 = {0, {'EPSG::9102/U', 'degree', Angle, 0.0174532925199433}}
      },
      geographicUnit = {'EPSG::9102/U', 'degree', Angle, 0.0174532925199433},
      projectionUnit = {'EPSG::9001/U', 'metre', Length},
      verticalUnit   = {'EPSG::9001/U', 'metre', Length}
    },
    raster   = {TiepointScale: {0, 0}, {-10674105, 5338905}, {3705, -3705}}
  },
  fileFormat           = 'GDAL',
  filePath             = <e:\Hive\svn.tinman\release\data\geo\Mars\MOLA\data\mega90n000eb.lbl>,
  groundSampleDistance = 3704.9987137777734,
  optimalHeightmapSize = [{1025, 4690.112288108032}, {2049, 2345.054047424423}]
}

Dump image pixels to console (y/n) ? n

Also you can dump image pixels to the console as ASCII art. This is a fun-feature, but can still be helpful for verification and testing.

The feature to output colored text to the console has been dropped from the Tinman 3D SDK. However, for historical reasons, here is a screenshot of a colorful ASCII art dump:

Geodata Processor - ASCII dump

The Workshop Application provides advanced inspection and browsing capabilities.