Documentation | Samples
This is a list of source code samples available for Developer Kernel 11 editions for all supported platforms.
A sample can be listed in more than one category.
Samples are typically located at (on Windows platform):
Hydrology | How to use hydrology toolset. |
PaintEvents | How to use events raised upon Paint procedure. |
OnlineServices | Shows how to utilize the TatukGIS online services: forward/reverse geocoding routing, and isochrone. |
JupyterNotebookDKforPython | How to useTatukGIS DK for Python in Jupter Notebook. |
JupyterNotebookPythonAndNumpy | How to useTatukGIS DK for Python in Jupter Notebook. |
BIMViewer | How to create a simple BIM viewer. |
HelloDK | How to create a very basic DK11 application. See step-by-step tutorial. |
Hello.NetCore | How to create WinForms application with .NET Core. |
AddLayer | How to add a layer to the viewer and do few basic operations like zoom in/out or drag a map. |
Zooming | How to perform zooming using mouse movement and mouse wheel. Also how to change a mode of mouse operation: zoom vs drag. |
Locate | How to convert mouse coordinates to map coordinates and use them to locate a shape. |
CGMViewer | How to create a simple symbol viewer, not only for CGM anymore. |
Locate | How to convert mouse coordinates to map coordinates and use them to locate a shape. |
Projections | How to show a map in different coordinate systems (projections). Both vector and pixel (raster) layers are supported. |
Renderer | How to render a map according to the attribute field using sections. Use rendering from the project file. |
SimpleEdit | How to create a basic editor: edit existing or create a new shape and edit its vertices. |
TwoWindows | How to show maps in two windows and synchronize visible extent between them. |
WKT | How to use WKT (Well Known Text) geometry. Edits WKT text and shows the result. |
Legend | How to add a legend control to an application. |
Viewer | How to create a quite complete map viewer with a legend, scale, north arrow (compass rose) and printing capabilities. |
ViewerLite | How to create a very simple viewer. This sample is also available for FMX.Mobile and can be compiled for iOS and Android apps. |
Rotation | How to show map rotated around selected point. |
MiniMap | How to build a small map overview window. |
ShowHint | How to show map hints based on fields from a vector layer. |
Enumerators | How to use “for each” like loops to find all shapes matching DE-9IM topological relationship. |
Zooming | How to perform zooming using mouse movement and mouse wheel. Also how to change a mode of mouse operation: zoom vs drag. |
AddLayer | How to add a layer to the viewer and do few basic operations like zoom in/out or drag a map. |
BitmapFill | How to draw a vector layer, which every polygon is filled with a different bitmap upon drawing time using PaintShapeEvent. |
CGMViewer | How to create a simple symbol viewer, not only for CGM anymore. |
DragLabel | How to implement labels that can be dragged by mouse. |
InMemory | How to create in-memory vector layers. |
Pixel | How to open pixel layer and apply operations like colorize, inversion, histogram enhancement defined in projects files. |
SimpleEdit | How to create a basic editor: edit existing or create a new shape and edit its vertices. |
PixelLocate | How to retrieve image and grid pixel value based on a mouse position. |
Encode | How to implement a very simple content protection of an SHP Layer. |
CuttingPolygon | How to define a visible area of a pixel layer using a polygon shape. |
DirectWrite | How to merge vector layers and how to do this in the most efficient way using direct write. |
DemOperations | How to perform DEM (Digital Elevation Model) analysis operation like slope, hill shade, flow directions, curvature and more. |
PixelOperations | How to use PixelOperationEvent to dynamically alter pixels of pixel layer before displaying them. |
Transform | How to use transformation to rectify a layer. |
CustomPaint | How to do custom drawings in a platform-independent way and how to assign renderer other than default and access its low-level API (like DC, Graphics). |
PixelEdit | How to modify pixels covered by a polygon and calculate terrain profile. |
Interpolation | How to analyze a set of points with measurement data using Kriging, IDW, Spline, and Heatmap. |
IsochroneMap | How to create a Isochrone Map (road isodistances). |
Viewshed | How to use the Viewshed functionality. |
LayerStatistics | How to produce statistics on layer. |
RasterAlgebra | How to perform raster algebra operations. |
GridToVector | How to convert grid to vector. |
InMemory | How to create in-memory vector layers. |
Locate | How to convert mouse coordinates to map coordinates and use them to locate a shape. |
SimpleEdit | How to create a basic editor: edit existing or create a new shape and edit its vertices. |
WKT | How to use WKT (Well Known Text) geometry. Edits WKT text and shows the result. |
MultiSelect | How to implement selection of several shapes at once. |
TrackingTest | How to efficiently implement tracking layer - to update locations of dozens of shapes like vehicles. |
Relate | How to compute the geometrical relationship between two shapes. |
SelectByShape | How to select shapes from a layer by user-defined shape (circle and rectangle in this samples). |
Enumerators | How to use “for each” like loops to find all shapes matching DE-9IM topological relationship. |
Grid | How to open grid layer and colorize it using a configuration file or programmatically. |
DragLabel | How to implement labels that can be dragged by mouse. |
BitmapFill | How to draw a vector layer, which every polygon is filled with a different bitmap upon drawing time using PaintShapeEvent. |
FieldRules | How to use field rules to use predefined field values, field value verification, or value aliases. |
CuttingPolygon | How to define a visible area of a pixel layer using a polygon shape. |
ShapeOperations | How to move, rotate and scale any given shape. |
CustomPaint | How to do custom drawings in a platform-independent way and how to assign renderer other than default and access its low-level API (like DC, Graphics). |
PixelEdit | How to modify pixels covered by a polygon and calculate terrain profile. |
HelloDK | How to create a very basic DK11 application. See step-by-step tutorial. |
Topology | How to calculate union, difference and symmetrical difference of two shapes. |
Buffers1 | How to create a buffer around a shape and what happens to holes when a buffer is positive or negative. |
Buffers2 | How to create a buffer around a shape and use it to select other shapes. |
SplitByArc | How to split polygon using polyline shape. |
Relate | How to compute the geometrical relationship between two shapes. |
GPSSimple | How to connect to a GPS device and display basic parameters. |
GPSTracker | How to connect to a GPS device and record position on a a map. |
Snap | How to snap a vehicle to a road if the known vehicle location is not very precise. Uses a simulated GPS-like position. |
GeoCoding | How to perform simple geocoding and routing. |
TigerGeocoding | How to perform advanced geocoding and reverse-geocoding using address parsing standardization. |
OnlineServices | Shows how to utilize the TatukGIS online services: forward/reverse geocoding routing, and isochrone. |
BitmapFill | How to draw a vector layer, which every polygon is filled with a different bitmap upon drawing time using PaintShapeEvent. |
CustomPaint | How to do custom drawings in a platform-independent way and how to assign renderer other than default and access its low-level API (like DC, Graphics). |
DragLabel | How to implement labels that can be dragged by mouse. |
DynamicAggregation | How to perform dynamic clustering and binning. |
PaintLabel | How to use PaintShapeLabelEvent to dynamically modify labeling. |
Statistic | How to use PaintShapeEvent to dynamically create statistical analysis. |
JoinAndChart | How to join a vector layer to an external database and how to provide charts based on values from a join. |
Classification | How to provide classification feature. |
BitmapFill | How to draw a vector layer, which every polygon is filled with a different bitmap upon drawing time using PaintShapeEvent. |
DynamicAggregation | How to perform dynamic clustering and binning. |
Hydrology | How to use hydrology toolset. |
Interpolation | How to analyze a set of points with measurement data using Kriging, IDW, Spline, and Heatmap. |
IsochroneMap | How to create a Isochrone Map (road isodistances). |
JoinAndChart | How to join a vector layer to an external database and how to provide charts based on values from a join. |
JoinAndRender | How to join a vector layer to an external database and how to render map based on values from a join. |
LayerStatistics | How to produce statistics on layer. |
PixelEdit | How to modify pixels covered by a polygon and calculate terrain profile. |
Pipeline | How to utilize the pipeline functionality. |
PixelFilters | How to perform filter operation. |
Statistic | How to use PaintShapeEvent to dynamically create statistical analysis. |
Triangulation | How to perform Delaunay triangulation and how to generate a Voronoi diagram. |
Viewshed | How to use the Viewshed functionality. |
projectconvert | How to convert project file formats from .ttkgp (an old format) to .ttkproject (a new format). |
Reproject | How to export vector layer changing its coordinate systems (projections). |
any2any | How to create a command-line utility to convert vector layer to another format. |
Project2Sqlite | How a create a command-line utility to convert whole project (including layers) into an SQLite database. |
UDFLayerVector | How to add support to a new layer vector file format using User Defined Layer. |
GridToVector | How to convert grid to vector. |
PrintPreview | How to create a print preview. |
TemplatePrint | How to print a map using print templates. |
Viewer | How to create a quite complete map viewer with a legend, scale, north arrow (compass rose) and printing capabilities. |
SimpleEdit | How to create a basic editor: edit existing or create a new shape and edit its vertices. |
Languages | How to add multi-language support. Demonstrates full Unicode support. |
PrintPreview | How to create a print preview. |
Legend | How to add a legend control to an application. |
DataSet | How to use TGIS_DataSet component to connect layer vector to data aware components. |
Hierarchy | How to create and manage a group of layers in a legend control. |
MiniMap | How to build a small map overview window. |
DragLabel | How to implement labels that can be dragged by mouse. |
PaintLabel | How to use PaintShapeLabelEvent to dynamically modify labeling. |
TrackingTest | How to efficiently implement tracking layer - to update locations of dozens of shapes like vehicles. |
InMemory | How to create in-memory vector layers. |
SimpleEdit | How to create a basic editor: edit existing or create a new shape and edit its vertices. |
PaintEvents | How to use events raised upon Paint procedure. |
SimpleEdit | How to create a basic editor: edit existing or create a new shape and edit its vertices. |
WKT | How to use WKT (Well Known Text) geometry. Edits WKT text and shows the result. |
Fields | How to access fields (properties) of a layer, and how to use field values in map rendering. |
Grid | How to open grid layer and colorize it using a configuration file or programmatically. |
ExportToImage | How to export pixel layer to another format. |
Reproject | How to export vector layer changing its coordinate systems (projections). |
any2any | How to create a command-line utility to convert vector layer to another format. |
Project2Sqlite | How a create a command-line utility to convert whole project (including layers) into an SQLite database. |
SQLLayer | How to open layer which resides in SQL database. |
SQLWizard | How to create a wizard for SQL connection: to select a database, a layer, and a layer format. |
SQLLayerAdvanced | How to open export layer to a new SQL Layer and get familiar with .ttkls connector files. |
CuttingPolygon | How to define a visible area of a pixel layer using a polygon shape. |
SimpleEdit | How to create a basic editor: edit existing or create a new shape and edit its vertices. |
ClientServer | How to create a basic client-server solution. |
ViewerLite | How to create a very simple viewer. This sample is also available for FMX.Mobile and can be compiled for iOS and Android apps. |
Measure | How to provide measurement; draw a measurement line and a measurement polygon. |
HelloDK | How to create a very basic DK11 application. See step-by-step tutorial. |
View3D | How to create simple 3D viewer. |
WFSManager | How to query server map server for available WFS layers and select layer to be added to a map. |
WMTSManager | How to query server map server for available WMTS layers and select layer to be added to a map. |
SQLWizard | How to create a wizard for SQL connection: to select a database, a layer, and a layer format. |