<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to manage distance between symbols and labels on zoom in and zoom out in arcgis 100.6? in Qt Maps SDK Questions</title>
    <link>https://community.esri.com/t5/qt-maps-sdk-questions/how-to-manage-distance-between-symbols-and-labels/m-p/391253#M1956</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am using arcgis 100.6 and qt 5.12.1 for application development.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to display some text information alongside my symbol(S1) . I have tried 2 methods to do the same and facing issues in both.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;1. Using TextSymbol class&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2. Using labelDefinitions() function of&amp;nbsp;&amp;nbsp;LabelDefinitionListModel class&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. &lt;SPAN&gt;&amp;nbsp;&lt;STRONG&gt;Using TextSymbol class&lt;/STRONG&gt;:&amp;nbsp;&lt;/SPAN&gt;When using TextSymbol to display the data, I first assigned same coordinates as the symbol(S1) to the textSymbol (TS) . Both the symbols overlap as expected&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;IMG alt="" class="jive-emoji image-1 jive-image" height="169" src="https://community.esri.com/legacyfs/online/506856_textsymbol_with_same_coordinates.png" width="210" /&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To avoid the overlap I set the geometry of the TextSymbol with some offset as follows:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;TS&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setGeometry&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Point&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;S1&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;y &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0.01&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; S1&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;x &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0.01&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;4326&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;However I am observing that the distance between both symbols changes when zoomed in or out. Below are images for S1 and TS with same offset (0.01) but different zoom in scales. The distance between S1 and TS increases as I zoom in more. &lt;EM&gt;&lt;STRONG&gt;Is there a way to avoid this??&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="jive-emoji jive-image image-2 j-img-original" src="https://community.esri.com/legacyfs/online/506857_textsymbol_with_offset_zoom1.png" /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;IMG alt="" class="image-3 jive-emoji jive-image" height="128" src="https://community.esri.com/legacyfs/online/506867_textsymbol_with_offset_zoom2.png" width="123" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;===========================================================================================&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2. Using labelDefinitions() function of&amp;nbsp;&amp;nbsp;LabelDefinitionListModel class:&amp;nbsp;&lt;/STRONG&gt;The second way I used was using labelDefinitions(). Here the distance between the symbol (S1) and label (L1) remains constant on zoom in zoom out but the placement of&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;L1&amp;nbsp;&lt;/SPAN&gt;is far from the S1. I tried different labelPlacement options available in labelDefinitions() but all seem to display approximately the same distance.&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="jive-emoji jive-image image-4 j-img-original" src="https://community.esri.com/legacyfs/online/506868_label.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The labeldefinitions() uses the following json string:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;QString mapcode&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;createLabelJsonName&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;const&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 
  &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;QString&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;QStringLiteral&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"{\"labelExpressionInfo\":{\"expression\":\"'I - ' + $feature.NAME\"},"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"labelPlacement\":\"esriServerPointBelowCenter\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"where\":\"NAME &amp;lt;&amp;gt; ' '\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"allowOverlapOflabel\":\"avoid\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"allowOverlapOfFeatureBoundary\":\"avoid\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"maxScale\":\"0\",\"minScale\":\"0\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"symbol\": {\"angle\":0,\"backgroundColor\":[0,0,0,0],"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"borderLineColor\":[0,0,0,0],"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"borderLineSize\":0,\"color\":[0,0,255,255],"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"font\": {\"decoration\":\"none\",\"size\":10,"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"style\":\"normal\",\"weight\":\"normal\"},"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"haloColor\":[255,255,0,255],\"haloSize\":1.5,"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"horizontalAlignment\":\"center\",\"kerning\":false,"&lt;/SPAN&gt;
                          &lt;SPAN class="string token"&gt;"\"type\":\"esriTS\",\"verticalAlignment\":\"middle\",\"xoffset\":0,\"yoffset\":0}}"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want L1 to be placed directly above or below S1. &lt;STRONG&gt;Is there a way to acheive this using labels??&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 17:56:18 GMT</pubDate>
    <dc:creator>AbhijeetSatam</dc:creator>
    <dc:date>2021-12-11T17:56:18Z</dc:date>
    <item>
      <title>How to manage distance between symbols and labels on zoom in and zoom out in arcgis 100.6?</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/how-to-manage-distance-between-symbols-and-labels/m-p/391253#M1956</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am using arcgis 100.6 and qt 5.12.1 for application development.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to display some text information alongside my symbol(S1) . I have tried 2 methods to do the same and facing issues in both.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;1. Using TextSymbol class&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2. Using labelDefinitions() function of&amp;nbsp;&amp;nbsp;LabelDefinitionListModel class&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. &lt;SPAN&gt;&amp;nbsp;&lt;STRONG&gt;Using TextSymbol class&lt;/STRONG&gt;:&amp;nbsp;&lt;/SPAN&gt;When using TextSymbol to display the data, I first assigned same coordinates as the symbol(S1) to the textSymbol (TS) . Both the symbols overlap as expected&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;IMG alt="" class="jive-emoji image-1 jive-image" height="169" src="https://community.esri.com/legacyfs/online/506856_textsymbol_with_same_coordinates.png" width="210" /&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To avoid the overlap I set the geometry of the TextSymbol with some offset as follows:&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;TS&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setGeometry&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Point&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;S1&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;y &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0.01&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; S1&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;x &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0.01&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;4326&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;However I am observing that the distance between both symbols changes when zoomed in or out. Below are images for S1 and TS with same offset (0.01) but different zoom in scales. The distance between S1 and TS increases as I zoom in more. &lt;EM&gt;&lt;STRONG&gt;Is there a way to avoid this??&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="jive-emoji jive-image image-2 j-img-original" src="https://community.esri.com/legacyfs/online/506857_textsymbol_with_offset_zoom1.png" /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;IMG alt="" class="image-3 jive-emoji jive-image" height="128" src="https://community.esri.com/legacyfs/online/506867_textsymbol_with_offset_zoom2.png" width="123" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;===========================================================================================&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2. Using labelDefinitions() function of&amp;nbsp;&amp;nbsp;LabelDefinitionListModel class:&amp;nbsp;&lt;/STRONG&gt;The second way I used was using labelDefinitions(). Here the distance between the symbol (S1) and label (L1) remains constant on zoom in zoom out but the placement of&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;L1&amp;nbsp;&lt;/SPAN&gt;is far from the S1. I tried different labelPlacement options available in labelDefinitions() but all seem to display approximately the same distance.&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="jive-emoji jive-image image-4 j-img-original" src="https://community.esri.com/legacyfs/online/506868_label.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The labeldefinitions() uses the following json string:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;QString mapcode&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;createLabelJsonName&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;const&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 
  &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;QString&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;QStringLiteral&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"{\"labelExpressionInfo\":{\"expression\":\"'I - ' + $feature.NAME\"},"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"labelPlacement\":\"esriServerPointBelowCenter\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"where\":\"NAME &amp;lt;&amp;gt; ' '\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"allowOverlapOflabel\":\"avoid\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"allowOverlapOfFeatureBoundary\":\"avoid\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"maxScale\":\"0\",\"minScale\":\"0\","&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"symbol\": {\"angle\":0,\"backgroundColor\":[0,0,0,0],"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"borderLineColor\":[0,0,0,0],"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"borderLineSize\":0,\"color\":[0,0,255,255],"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"font\": {\"decoration\":\"none\",\"size\":10,"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"style\":\"normal\",\"weight\":\"normal\"},"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"haloColor\":[255,255,0,255],\"haloSize\":1.5,"&lt;/SPAN&gt;
                                &lt;SPAN class="string token"&gt;"\"horizontalAlignment\":\"center\",\"kerning\":false,"&lt;/SPAN&gt;
                          &lt;SPAN class="string token"&gt;"\"type\":\"esriTS\",\"verticalAlignment\":\"middle\",\"xoffset\":0,\"yoffset\":0}}"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want L1 to be placed directly above or below S1. &lt;STRONG&gt;Is there a way to acheive this using labels??&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 17:56:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/how-to-manage-distance-between-symbols-and-labels/m-p/391253#M1956</guid>
      <dc:creator>AbhijeetSatam</dc:creator>
      <dc:date>2021-12-11T17:56:18Z</dc:date>
    </item>
    <item>
      <title>Re: How to manage distance between symbols and labels on zoom in and zoom out in arcgis 100.6?</title>
      <link>https://community.esri.com/t5/qt-maps-sdk-questions/how-to-manage-distance-between-symbols-and-labels/m-p/391254#M1957</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;For the first workflow, I think the problem is that as you zoom in, the added .01 will have a larger effect. The better solution would be to use the exact same geometry as the red symbol, but then adding X and Y offset to the TextSymbol -&amp;nbsp;&lt;A class="link-titled" href="https://developers.arcgis.com/qt/latest/cpp/api-reference/esri-arcgisruntime-markersymbol.html#offsetX" title="https://developers.arcgis.com/qt/latest/cpp/api-reference/esri-arcgisruntime-markersymbol.html#offsetX"&gt;MarkerSymbol Class | ArcGIS for Developers&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Sep 2020 15:32:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/qt-maps-sdk-questions/how-to-manage-distance-between-symbols-and-labels/m-p/391254#M1957</guid>
      <dc:creator>LucasDanzinger</dc:creator>
      <dc:date>2020-09-14T15:32:32Z</dc:date>
    </item>
  </channel>
</rss>

