_____ _______ ____ _____ ,-:` \;',`'-, |__ _(_) |___ \ | __ \ .'-;_,; ':-;_,'. | | _ _ __ _ __ ___ __ _ _ __ __) || | | | /; '/ , _`.-\ | || || '_ \ | '_ ` _ \ / _` || '_ \ |__ < | | | | | '`. (` /` ` \`| | || || | | || | | | | || (_| || | | | ___) || |__| | |:. `\`-. \_ / | |_||_||_| |_||_| |_| |_| \__,_||_| |_| |____/ |_____/ | ( `, .`\ ;'| \ | .' `-'/ Realtime terrain processing, rendering and analysis `. ;/ .' `'-._____.-'` http://www.tinman3d.com - info@tinman3d.com
Welcome to the Tinman 3D Software Development Kit. You are reading the user manual.
The current version of the Tinman 3D SDK can be downloaded from the Release Notes page:
Tinman 3D SDK - v1.0 - Release Candidate 3 - 2017/10/06
The download packages are password protected; the password can be found by reading the Terms and Conditions.
Download and evaluation of the Tinman 3D SDK is free.
If you have any questions or comments, please write to
To obtain technical support, please refer to Support or write to
For questions about licensing, please refer to Licensing and Pricing or write to
You can find our online bug-tracking system (YouTrack) here:
|
Tinman 3D Demo / NED 1/9" + GoogleMaps |
Tinman 3D is a collection of software libraries and stand-alone tools. Its purpose is to analyze, process and visualize 3D terrain data.
The stand-alone tools can be used by end-users to explore and use the features of Tinman 3D:
The software libraries can be used by developers to incorporate features of Tinman 3D into existing applications. They are available in separate editions, which can be used independently:
Tinman 3D makes use of a compact platform abstraction layer (PAL), and contains ready-to-use implementations for popular computing environments:
Availability Matrix | C# SDK | C++ SDK | Processor | Demo | Workshop |
---|---|---|---|---|---|
Windows Desktop 1) | yes 2) | yes | yes | yes | yes |
Windows Mobile | v1.0 RC6 | v1.0 RC6 | - | v1.0 RC6 | - |
Linux Desktop | v1.0 RC53) | v1.0 RC5 | v1.0 RC5 | v1.0 RC5 | - |
Android | v1.0 RC6 3) | v1.0 RC6 | - | v1.0 RC6 | - |
iOS Desktop | v1.0 RC5 3) | v1.0 RC5 | v1.0 RC5 | v1.0 RC5 | - |
iOS Mobile | v1.0 RC6 3) | v1.0 RC6 | - | v1.0 RC6 | - |
1) Requires Windows XP or newer, 32-bit / 64-bit
2) Requires DOT.NET Framework 4.5.1 or newer
3) Requires Mono Framework
You are not limited to the provided PAL implementations; it is possible to implement your own ones or to modify the existing ones (see Source Code Licence).
Tinman 3D routes all rendering through a slim graphics abstraction layer (GAL, see IGraphicsContext). The SDK contains ready-to-use implementations for popular rendering APIs:
Render API Matrix | DirectX 9 | DirectX 11 | DirectX 12 | OpenGL | OpenGLES | Vulkan |
---|---|---|---|---|---|---|
Windows Desktop | yes | yes | planned | v1.0 RC5 | - | planned |
Windows Mobile | v1.0 RC6 | v1.0 RC6 | planned | - | - | planned |
Linux Desktop | - | - | - | v1.0 RC5 | - | planned |
Android | - | - | - | - | v1.0 RC6 | planned |
iOS Desktop | - | - | - | v1.0 RC5 | - | planned |
iOS Mobile | - | - | - | - | v1.0 RC6 | planned |
You are not limited to the provided GAL implementations; it is possible to implement your own ones or to modify the existing ones (see Source Code Licence).
Tinman 3D includes an application framework (see IApplication), which is used by several plug-and-play application widgets (see IWidget). These components are built upon the low-level API of Tinman 3D and implement commonly used functionality.
The following ready-to-use adapters to popular GUI systems are included in the SDK:
GUI Matrix | Tinman 1) | WinForms | WPF | MFC | Qt |
---|---|---|---|---|---|
C# | yes | yes | yes | - | - |
C++ | yes | - | - | yes | v1.0 RC5 |
1) Built-in application window for stand-alone use (see ApplicationWindow).
You are not limited to the provided implementations; it is possible to implement your own ones or to modify the existing ones (see Source Code Licence).
Tinman 3D has a strong interface-centric design (for example 2D images and 3D models). Custom implementations of these interfaces can be created in order to extend the functionality of the SDK, without having to modify existing binaries. The following ready-to-use plugins are included in the SDK:
Plugin Matrix | C# | C++ | Purpose |
---|---|---|---|
Assimp 3.3 / 4.0 | yes | yes | 3D Model Import |
Bullet 2.86 | v1.0 RC4 | v1.0 RC4 | Physics Simulation |
FreeImage 3.17 | v1.0 RC6 | v1.0 RC6 | Image Import |
GDAL 1.11 / 2.0 / 2.1 / 2.2 | yes | yes | Geodata Import |
PhysX 3.4 | v1.0 RC4 | v1.0 RC4 | Physics Simulation |
Tinman 3D offers a unique set of Features. Here are some of them:
The Tinman 3D SDK is composed of several components.
Library | C# | C++ | Platform |
---|---|---|---|
Tinman.Licence | Binary 1) | Binary | any |
Implements asymmetric decryption for licence keys, performs licence checks and unlocks initialization data which is required by other SDK components. This component is provided as a separate binary and cannot be embedded into applications. |
|||
CodeX.System | Binary | Source 2) | any |
A concise bootstrap library that provides common runtime semantics for the C# and C++ editions of Tinman 3D. | |||
Tinman.Core | Binary | Obfuscated 3) | any |
The Core library contains provides general-purpose functionality and PAL wrappers for system-specific APIs. | |||
Tinman.Terrain | Binary | Obfuscated | any |
The Terrain library is is the heart of Tinman 3D. It provides all terrain-specific features. | |||
Tinman.AddOns | Source | Source | any |
The Add-Ons library provides additional functionality for developing applications with Tinman 3D. It contains a real-time application engine and some ready-to-use widgets that are built on top of it. Use of the Add-Ons library is optional. |
|||
Tinman.AddOns.Assimp | Source | Source | any |
This is a plugin for using the Open Asset Import Library (http://assimp.sourceforge.net) from within Tinman 3D. | |||
Tinman.AddOns.DirectX | Source | Source |
Windows |
Plugin for using the DirectX rendering API with Tinman 3D. | |||
Tinman.AddOns.GDAL | Source | Source | any |
This is a plugin for using the Geospatial Data Abstraction Library (http://www.gdal.org) from within Tinman 3D. | |||
Tinman.AddOns.MFC | - |
Source |
Windows |
An MFC control that hosts an IApplication object. | |||
Tinman.AddOns.OpenGL |
Source 5) |
Source 5) |
any |
Plugin for using the OpenGL rendering API with Tinman 3D. | |||
Tinman.AddOns.Qt | - |
Source 5) |
any |
A Qt widget that hosts an IApplication object. | |||
Tinman.AddOns.WinForms | Source | - | any |
A DOT.NET WinForms control that hosts an IApplication object. | |||
Tinman.AddOns.WPF | Source | - | Windows |
A DOT.NET WPF control that hosts an IApplication object. | |||
Tinman.Demo | Source | Source | any |
The Demo Application showcases many features of the Tinman 3D SDK. |
|||
Tinman.Demo.StandAlone | Source | Source | any |
Runs the Demo Application in a stand-alone window. The (re-)compiled application requires a licence key to run (User, Site or Academic). |
|||
Tinman.Demo.MFC | - | Source | Windows |
Runs the Demo Application in an MFC window. The (re-)compiled application requires a licence key to run (User, Site or Academic). |
|||
Tinman.Demo.Qt | - | Source 5) | any |
Runs the Demo Application in a Qt window. The (re-)compiled application requires a licence key to run (User, Site or Academic). |
|||
Tinman.Demo.WinForms | Source | - | Windows |
Runs the Demo Application in a DOT.NET WinForms window. The (re-)compiled application requires a licence key to run (User, Site or Academic). |
|||
Tinman.Demo.WPF | Source | - | Windows |
Runs the Demo Application in a DOT.NET WPF window. The (re-)compiled application requires a licence key to run (User, Site or Academic). |
|||
Application | C# | C++ | Platform |
tinman3d_demo | Executable 4) | Executable | any |
The Demo Application showcases many features of the Tinman 3D SDK. This application does not require a licence key to run. |
|||
tinman3d_workshop |
Executable | - | Windows |
The Workshop Application is a GUI application that exposes many features of Tinman 3D interactively.
This application requires a licence key to run (User, Site or Academic). |
|||
tinman3d_bakery | Executable | - | Windows |
The Licence baKErY tool for generating licence key requests. This application does not require a licence key to run. |
|||
tinmanpc | Executable | Executable | any |
The Geodata Processor is a command-line utility for importing geodata into Tinman 3D. This application requires a licence key to run (User, Site or Academic).
To unlock a content archive (e.g. Source Code), the unlock key is sufficient to run tinmanpc, no other keys are required in this case. |
1) Provided as a dynamic link library (e.g. DLL on Windows).
2) Provided as human-readable source code.
3) Provided as obfuscated source code (see Source Code Licence).
4) Provided as an executable (e.g. EXE on Windows).
5) Not yet available, see Availability Matrix for details.