Licencing and Pricing
This page provides information about licensing from a practical point of view.
If you are interested in the legal aspects, please refer to the Terms and Conditions.
Tinman 3D licences are one-time purchases and do not include any future obligations, which means that there are no subscriptions and no recurring payments. Expired licences may be prolonged at any time by purchasing an update.
In case you are looking for ready-to-use terrain datasets based on commercial geodata sources, please contact sales@tinman3d.com and we will provide you with a quote for the terrain data you need.
If you would like to receive custom services from Tinman 3D, such as consultancy, training or software development, please send a request to sales@tinman3d.com. We will get back to you with a quote that is tailored to your specific requirements.
Overview
The Tinman 3D SDK can be downloaded and evaluated instantly, free of charge, without creating an online account and without time limit.
The following licensing scenarios exist for non-evaluation use:
- Development (User, Site, Academic)
-
A licence key is provided at runtime, temporarily activating all Tinman 3D SDK versions, only for the current user, only on the current machine, for any application/product, only during the licence period.
- Distribution (Product, Company, Full)
-
A licence key is distributed along with a customer product, perpetually activating only those Tinman 3D SDK versions within the update period, for any user, on any machine, only for that product, only in non-debug mode.
- Content (Source)
-
An unlock key is used with
tinmanpc unlock
to decrypt theTinman3D.SDK.Source-*.zip.lic
packages, only for those Tinman 3D SDK versions within the update period.
Customers receive a licence certificate document that contains all purchased licence keys in one place. This self-contained document may be archived in electronic or printed form, preferably both. |
For non-evaluation use, the following SDK components require a valid licence:
- Stand-alone tools
-
The codex, tinmanpc and tinman3d-workshop tools run in feature-locked evaluation mode by default and may be unlocked with a Development licence key.
- Software libraries
-
The Core, Terrain and Engine libraries must be activated with a Development or Distribution licence key during application startup.
- Source code
-
The source code of the Core, Terrain, Engine and Processor libraries must be decrypted with a Content unlock key, separately for each programming language (e.g. C#, C++).
Licence key checking is 100% offline, there is no online activation step involved. |
The following table shows the possible combinations of licences with their practical use:
# | EVAL | DEV | DIST | CONT | |
---|---|---|---|---|---|
1. |
no |
no |
no |
- |
use of SDK not possible |
2. |
yes |
- |
- |
- |
evaluation only, no product development development with full DEBUG[1] capabilities |
3. |
- |
yes |
no |
- |
development with full DEBUG[1] capabilities additional support / training available |
4. |
- |
yes |
yes |
- |
development with full DEBUG[1] capabilities additional support / training available distribution of standard SDK binaries |
5. |
- |
no |
yes |
no |
development without DEBUG[1] capabilities distribution of standard SDK binaries |
6. |
- |
- |
yes |
yes |
development with full DEBUG[1] capabilities distribution of custom SDK binaries |
Order Process
This section explains how to order a licence for the Tinman 3D SDK.
After purchasing a licence key that is bound to metadata, you can request extra licence keys for different metadata free of charge, given that the requested metadata correlates with the licensed product and you as the licence owner.
Please contact sales@tinman3d.com if you have any more questions regarding licensing.
Licence Certificate
A self-contained licence certificate document is provided for your licence purchases, licence updates and extra licence keys. Please archive this document in electronic form or as a hard copy.
To discover the download link of your licence certificate document, please follow this link:
https://licence.tinman3d.com/order/$ORDER$ (1)
1 | Replace $ORDER$ with the Order Number, as it appears on the invoice document. |
Please write to sales@tinman3d.com if you encounter problems or difficulties while accessing your licence certificate document.
Licence Items
The Licence Certificate specifies the licensee, who can either be a legal entity or an individual person.
Each certificate contains a number of licence items, where each item belongs to one of the types that are listed in this section. Each licence item has one or more Licence Keys, which are used to activate the SDK.
Legal entities need to have own licence items for their employees. Although an employee - as an individual person - may have own licence items, these cannot be used for work on behalf of the employer. |
Licence Item | Type | Releases | Keys | Binding[2] |
---|---|---|---|---|
password-protected download |
all |
0 [3] |
none |
|
Allows anyone to evaluate the Tinman 3D SDK. ⇒ Run the Demo Application executable. |
||||
time period |
all |
1 [4] |
||
Allows a single user to use the Tinman 3D SDK during the licence period. ⇒ All SDK releases |
||||
time period |
all |
1 [4] |
||
Allows all users that belong to the licensed company site to use the Tinman 3D SDK during the licence period. ⇒ All SDK releases |
||||
time period |
all |
1 [4] |
||
Allows all users that belong to the licensed academic entity to use the Tinman 3D SDK during the licence period. ⇒ All SDK releases Commercial use is not included in this licence. |
||||
time period |
- |
- |
- |
|
Adds priority email support to existing User, Site or Academic licences. ⇒ Priority email support for designated individuals |
||||
perpetual |
current |
1 [4] |
||
Allows perpetual use of the Tinman 3D SDK in a specific software product. ⇒ All SDK versions released on or before the purchase date |
||||
perpetual |
current |
1 [4] |
||
Allows perpetual use of the Tinman 3D SDK in all products of the licence owner. ⇒ All SDK versions released on or before the purchase date |
||||
perpetual |
current |
1 |
none |
|
Allows perpetual use of the Tinman 3D SDK by the licence owner. ⇒ All SDK versions released on or before the purchase date |
||||
content |
current |
1 |
none |
|
Grants access[5] to the source code of the following components of the Tinman 3D SDK:
Grants access to the binaries of the following components of the Tinman 3D SDK:
⇒ Source code is licensed separately for each programming language: C#, C++. The values for |
||||
Update |
perpetual |
+ X days |
+ 1 |
- |
Prolongs the SDK update period of an existing perpetual licence. ⇒ Product New licence keys will be issued for the prolonged update period. |
||||
content |
+ X days |
+ 1 |
- |
|
Prolongs the SDK update period of an existing content licence. ⇒ Source New unlock keys will be issued for the prolonged update period. |
Licence Keys
Before the Tinman 3D SDK can be used by an application, it must be activated. Activation is done by providing one or more licence keys during application startup.
To provide a licence key from code, call the LicenceKey method on the Tinman domain. This is usually done for perpetual licences.
To avoid that a licence key ends up as a string literal in an application binary, the Licence Bakery tool can be used to generate a source code fragment which generates the licence key value using obfuscated arithmetics. |
As an alternative, a single licence key can be provided by setting an environment variable, which is usually done for Development licences.
TINMAN_3D_LICENCEKEY = ...
Metadata Binding
A licence key is usually bound to specific metadata, using asymmetric encryption.
A licence key will only work if the metadata values found in the current execution context correlate with those that have been used to create the key. |
- Development
-
In addition to having an expiration date, development licence keys are usually bound to the local machine and may only be used there:
-
Machine login user (see LicenceFlags.MachineUser)
-
Machine login domain (see LicenceFlags.MachineDomain)
-
Machine hardware code (see LicenceFlags.MachineCode)
-
- Distribution
-
Although distribution licence keys do not expire, they are bound to the release dates of the Tinman 3D SDK and cannot unlock future releases.
The legal metadata binding associate a distribution licence with a specific product and/or company:
-
Legal product name (see LicenceFlags.LegalProduct)
-
Legal company name (see LicenceFlags.LegalCompany)
-
Legal copyright notice (see LicenceFlags.LegalCopyright)
-
Legal trademark notice (see LicenceFlags.LegalTrademark)
The program metadata binding associates a distribution licence with a program binary file:
-
Program file name (see LicenceFlags.ProgramFile)
-
Program file hash (see LicenceFlags.ProgramHash)
-
Program title (see LicenceFlags.ProgramTitle)
-
Program version (see LicenceFlags.ProgramVersion)
-
A licence key may include any combination of the above metadata bindings.
You can use the Licence Bakery tool to obtain metadata information quickly.
To determine the metadata from code, you can generate a licence request file, see Licence Requests.
Licence Requests
Licence keys are generated from the information found in licence requests. A licence request is a JSON text file in UTF-8 encoding that contains all required information.
Licence requests can be generated using the Licence Bakery tool or from code by calling the LicenceDomain.Request method on the Tinman domain.
{ // ------------------------------------------------------- // Tinman 3D - http://www.tinman3d.com - info@tinman3d.com // ------------------------------------------------------- "FileInfo": { "Format": "Licence Request v1.1", "Name": "tinman_3d.licence-request.machine.id-38720997.json.txt", "Created": "2024-01-17 19:09:09 UTC", "Encoding": "utf-8/bom" }, "LicenceDomain": "tinman_3d", "LicenceInfo": { "Timestamp": 467, "MachineCode": "5BFADA2E-237D-F827-CFE9-881BE11D8681", "MachineDomain": "TINMAN3D-PC", "MachineUser": "Tinman3D" }, "SystemInfo": { "PlatformName": ".NET Framework 4.8.9181.0/WinAPI", "LanguageName": "C#" }, "Checksum": "59596840-C2ED-86BF-B0B7-B3145C382E9D" }
{ // ------------------------------------------------------- // Tinman 3D - http://www.tinman3d.com - info@tinman3d.com // ------------------------------------------------------- "FileInfo": { "Format": "Licence Request v1.1", "Name": "tinman_3d.licence-request.legal.program.id-39D1B819.json.txt", "Created": "2024-01-17 18:57:27 UTC", "Encoding": "utf-8/bom" }, "LicenceDomain": "tinman_3d", "LicenceInfo": { "Timestamp": 467, "LegalCompany": "Tinman 3D - http://www.tinman3d.com", "LegalCopyright": "Copyright (C) 2024 Matthias Englert. All rights reserved.", "LegalProduct": "Tinman 3D SDK", "LegalTrademark": "Tinman 3D (R) is a registered trademark of Matthias Englert.", "ProgramFile": "tinman3d_bakery.exe", "ProgramHash": "740679A6-E47B-B5C6-6728-70BE42DBAFA0", "ProgramTitle": "Tinman.Bakery v1.0 - 2024/01/13", "ProgramVersion": "1.0.2024.113" }, "SystemInfo": { "PlatformName": ".NET Framework 4.8.9181.0/WinAPI", "LanguageName": "C#" }, "Checksum": "C9649207-B1B8-1FE6-55FE-8CB10DCDAC9E" }
Unlock Keys
Unlock keys are used to access locked content of the Tinman 3D SDK, for example:
-
Source code (C++ / C#)
-
Digitally licensed content, such as high-quality commercial raster datasets and texture pyramids.
Use the Geodata Processor / unlock command to apply an unlock key to a locked content archive.
Risk Assessment
This section describes potential risk scenarios that could arise (being caused by higher force, for example) after having spent money for Tinman 3D SDK licensing and having invested development time using the SDK.
- §1 - Unexpected Suspension of Online-Services
-
For whatever reason, the online services of Tinman 3D are no longer available:
-
https://www.tinman3d.com
This is the landing page. It only provides basic information. -
https://manual.tinman3d.com
The Tinman 3D SDK manual can be browsed online here. -
https://download.tinman3d.com
The Tinman 3D SDK packages may be downloaded from here. -
https://data.tinman3d.online
Geodata Examples are provided for streaming and/or download here. -
https://licence.tinman3d.com
Licence Certificate documents may be downloaded from here. -
NuGet Packages
For convenience, the .NET assemblies of the Tinman 3D SDK are hosted here.
-
- §2 - Unexpected Suspension of Licencing
-
For whatever reason, Tinman 3D is no longer able to provide new licence keys for the Tinman 3D SDK.
- §3 - Unexpected Suspension of Support
-
For whatever reason, Tinman 3D is no longer able to provide support via email or to communicate at all.
- §4 - Unexpected Suspension of Custom Services
-
For whatever reason, Tinman 3D is no longer able to provide custom services.
- §5 - Unexpected Suspension of Development
-
For whatever reason, Tinman 3D is no longer able to further develop or maintain the Tinman 3D SDK.
To guard against these risks, we recommend to follow these guidelines:
-
Always download and archive all Tinman 3D SDK packages for the version you are using. This will guard against §1.2, §1.3 and §1.6.
-
Always download and archive your Licence Certificate documents, including printed versions on paper. This will guard against §1.5.
-
Do not rely on being able to access the Geodata Examples online. Instead, download datasets as a whole and host them on your own infrastructure. This will guard against §1.4.
-
Consider having a perpetual Distribution licence in place, to make sure that none of your software development processes break when your Development licence expires (see below). This will guard against §2.
-
Consider having a Source Code licence in place, in order to be able to perform code review, modifications and bug-fixes on your own. This will guard against §3 and §5.
-
Always download and archive your Task Document for the custom services you receive from Tinman 3D and actively communicate with the developer who is responsible for you. This helps to guard against §4.
If you are using one or more tools of the Tinman 3D SDK for your software development processes, please take the following into account:
-
The
tinman3d_workshop
application will run in feature-locked mode when there is no Development licence. Instead of integrating manual steps into your process, consider using scripting to perform automated steps via thetinmanpc
tool. -
The
tinmanpc
tool will run in feature-locked mode when there is no Development licence. By using the API directly, the features oftinmanpc
may be integrated into your own toolset. Consider unlocking that toolset with a Distribution licence. -
The
codex
tool will not run without a Development licence. In this case, the whole workflow must be performed manually, which most likely causes degradation in productivity and code quality. The Code-X Framework is available with a Content licence, which makes it possible to integrate the features ofcodex
into your own toolset. Consider unlocking that toolset with a Distribution licence.