Knowledge Base Search for: Recently modified first: KB10228 - Remove yellow shadow from label presentation. The yellow "shadow" on labels is by design. The shadow can be removed by attaching: LabelColor = LabelFont.Color; Modified: December 18, 2015 KB10203 - Corrupted SHP file generated by another software program does not open in TatukGIS. This problem typically happens when another software is used to convert vector data from some other vector format into a SHP file. One potential problem is if the record fields (which hold the vector attributes) contain a field name more than 10 characters in length. The DBF standard restricts record field names to a maximum of 10 characters, and the DK strictly adheres to the DBF specification. While it is possible some other software programs open the file despite the corruption, best is to clean up ... Modified: December 18, 2015 KB10154 - Procedure to marginally zoom in/out on the map. Drag the mouse cursor in the right-down direction to zoom in for a closer view. Drag the cursor in the left-up direction to zoom out for a wider area view. When zooming in or out, the magnitude of the change is proportional to the size of the temporary rectangle drawn by the dragging operation. Alternative methods for zooming in/out are to use the mouse wheel or the "extended zoom" feature. Modified: December 18, 2015 KB10230 - Set label background to transparent. To eliminate label background: Layer.Params.Labels.Pattern := bsClear; Layer.Params.Labels.OutlineWidth := 0; To eliminate the color shadow around the label text (the halo effect), use: Layer.Params.Labels.Font.Color = Layer.Params.Labels.Color or just set the same color for both items, like this: Layer.Params.Labels.Font.Color = GisSafeColor( mycolor ) Layer.Params.Labels.Color = GisSafeColor( mycolor ) GisSafeColor() will guarantee that color will be properly mapped, i.e., potential tr ... Modified: December 18, 2015 KB10215 - Save or read a shape from the stream with the DK. A shape has two properties, Shape.Geometry and Shape.GeometrySize. The shape can be saved to the stream by: myStream.Write(Shape.Shape.GeometrySize, Sizeof(Shape.Shape.GeometrySize)); myStream.Write(Shape.Geometry, Shape.GeometrySize); A shape can be read from the stream by: myStream.Read(size, Sizeof(Shape.Shape.GeometrySize)); Getmem(ptr, size); myStream.Write(Shape.Geometry, size); shp := TGIS_ShapeArc.Create(nil, ptr, false, uid, myLayer); FreeMem(ptr); Of course you can ... Modified: December 18, 2015 KB10216 - Difference between Layer.Visible and Layer.Active properties. A visible layer can be changed inside a project/configuration file and is tested during the Paint procedure. An active layer property is something more important, as it overrides any configuration file settings. For instance, assigning layer.Active := False would cause the layer processing to turn off at a much earlier stage, which could mean speed improvement in situations involving management of a lot of hidden layers. Modified: December 18, 2015 KB10210 - Set a visible extent based on full extent of a specific layer. To make visible extent the same as the full extent of an individual layer: GIS.VisibleExtent := layer.ProjectedExtent ; Modified: December 18, 2015 KB10240 - Explanation of LabelPosition=FLOW parameter. The parameter FLOW can be applied for ARC and POLYGONS (but not for vector points) and it means the label position can FLOW to a better position when dragging the map. For example, the name of a lake polygon can automatically reposition to remain fully visible when only a portion of the lake remains visible in the map view. (So the label placement does not simply reflect the polygon centroid position). The allowed label position can be specified by mixing several parameters, such as: LabelPosition ... Modified: December 18, 2015 KB10385 - Present two labels for the same point. The normal rule is just one label for one point. So consider these options: Use multi-field labels by embedding HTML code like this: <b>{FIRSTNAME}</b><hr>{LASTNAME} to present two or more items of information (or other complex presentation) in a single label. If two labels are really required for the same object, prepare a second layer with a point in exactly the same location and make the 2nd label for this point, but with a different label position. Modified: December 17, 2015 KB10311 - Force follow-the-road street label presentation regardless of zoom or street segment length. For a street label to appear at any given zoom level, there must be sufficient line length between intersection nodes for the label to fit. One solution for better label presentation is create a layer for roads and streets in which the line vectors are not cut at crossroads and street intersections, i.e., the layer is without line intersection nodes. This means each road in such layer is represented by one long line vector, which allows ample space for label placement. Modified: December 17, 2015 KB10774 - Prioritize visualization of map geometry over labels contained in lower layers. The default behavior is label presentation is prioritized over (appears on top of) geometric features, regardless of the z-order number of the layer(s) containing the labels. This is the behavior most customers prefer in most situations. The default behavior may be modified, to prioritize geometry in the top-most layer(s) over labels in lower layers, by changing the project level setting or by applying the code (LabelsOnTop=FALSE). Modified: December 17, 2015 KB10234 - Make label appear as a callout or speech bubble. Handlers can be assigned to labels, to present the label to look like a callout or speech bubble relative to a marker location, like this: layer.OnPaintShapeLabel := mypaintlabel; or/and layer.OnLabelPos := mylabelpos; Modified: December 17, 2015 KB10391 - Tips on efficiently organizing map data in a TatukGIS project. For best performance, please consider the following guidelines: In situations involving huge vector layers, extract the major roads, or any other major features, to a separate layer(s). This offers the possibility, by turning layers on/off, of presenting large area general map views only from the general layer, without the overhead of parsing the entire detailed data set from original layer. Ensure Query definitions have no syntax errors. Use braces in the Query definitions. For example, instead of ... Modified: December 17, 2015 KB10677 - Change the fill color of a specific polygon. TatukGIS by default does not store colors, etc. with the shape geometry. Instead, we prefer an object model in which important information about objects is stored as attributes and the program renders colors based on attribute values. Therefore, the best way to store object color is create a special attribute field to store some shape designator like an object category and render based on this. It is also possible to store the numeric value (RGB) of the color in an attribute field and just select th ... Modified: December 10, 2015 KB10279 - R-Tree spatial index file. R-tree is a spatial index file used in TatukGIS products to dramatically increase map rendering speed with very large vector layers (such as hundreds of megabytes or more) at relatively closer zoom levels. Upon opening a layer containing vector data with binary representation, such as SHP, TAB, and DGN data, the TatukGIS software tries (if the R-tree feature is enabled) to create an R-Tree (*.rtree) file for future use. In an event R-tree file creation is not possible, such as a read-only situation, th ... Modified: December 10, 2015 KB10782 - Geographic filters (circle, polygon...) to define a search area or search based on geomet... Use the DK layer.Loop enumerator with proper parameters consistent with the DE-9IM mathematical module for geometric relations. The DE-9IM spatial querying features work with both shape layers and SQL database layers, including spatial databases . When used with spatial database layers (Oracle Spatial, PostGIS, ESRI ArcSDE, MSSQL Spatial Server, IBM DB2 Spatial Extender, Geomedia SQQL Server Spatial, etc.), which can perform spatial querying on the server side, the TatukGIS product passes spatial ... Modified: December 10, 2015 KB10801 - Locate source code samples provided with DK trial version. Link to the TatukGIS Developer Kernel should be installed on a Desktop. Links to Samples, Help, etc. can be found under this link. Read the start-up guidance provided in the read-me file included in the DK download package. Modified: December 09, 2015 KB10460 - Supported map layer formats on Oracle database. A number of vector and raster database layer formats can run on the Oracle database engine. A list of all TatukGIS supported SQL database layer formats with compatible database engines is presented in KB10639 . Guidance on setting up a TatukGIS PixelStore image layer on an Oracle database is provided in KB10649 . Guidance on connecting to an Oracle Spatial or Oracle GeoRaster layer on Oracle database is provided in KB10779 . . Modified: December 08, 2015 KB10818 - Customize Editor user interface language translations or add a new language option. Steps to edit the user interface (menu names, messages, and strings) language translations for an already supported language: Use the menu item Tools \ Languages to select a language from the list of supported languages. This will convert the menus, messages, and strings of the program user interface to the selected language. Click on the menu Tools \ Languages \ Edit language to open the Language Editor dialog box. Edit the translations as required. Click on the Save button on the Langu ... Modified: December 08, 2015 KB10914 - Support for DXF named layers. Upon reading/writing a DXF file, the DK interprets the DXF file as a single DK layer. DXF, however, has a assignment between shape and the DXF named layer. Such DXF named layer is interpreted by the DK using an attribute field called DXF_LAYER which, for example, can be used for attribute based rendering. If this attribute field does not exist when layers are exported to DXF, the field will be created and assigned to a DK layer.Name . If you want to perform any custom export: Create a DXF_LAYER ... Modified: December 08, 2015 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 Q&A Frequently Asked Questions Knowledge Base Contact Support