<?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 Re: Issue with graphicslayer in ArcGIS Runtime SDK for WPF (Retired) Questions</title>
    <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715700#M3647</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Jenny, thanks for your reply, it really helped me. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There were mainly two issues with the code I posted. Firstly, the method of threading, and secondly the magnitude of movement. Adding a value between minus one and one didn't cause much of a noticeable movement. Multiplying by 50000 or so gives more visible results. Heh, such a simple thing to get stuck at.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;By the way after a quick look in the documentation I haven't found any information regarding the used coordinate system. If anyone can direct me to it I'd be grateful.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 24 May 2012 09:28:16 GMT</pubDate>
    <dc:creator>AlexanderMagnusson</dc:creator>
    <dc:date>2012-05-24T09:28:16Z</dc:date>
    <item>
      <title>Issue with graphicslayer</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715698#M3645</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm messing around some and trying things out. One thing I'd like to be able to do is to display a number of symbols, and move them around while the application is running.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've tried implementing this idea with the following code, it doesn't work with the obvious symptom being that the symbols doesn't move. If there's any questions regarding the code I'll gladly answer any questions.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt; private void button2_Click(object sender, RoutedEventArgs e)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; graphicsLayer = new GraphicsLayer();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; symbolList_ = new List&amp;lt;ESRI.ArcGIS.Client.Geometry.MapPoint&amp;gt;();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = new Random();

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; NUM_SYMBOLS; ++i)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; symbolList_.Add(new ESRI.ArcGIS.Client.Geometry.MapPoint() 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { SpatialReference = defaultSpatialReference,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X = 0,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y = 0, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; graphicsLayer.Graphics.Add(new ESRI.ArcGIS.Client.Graphic()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Geometry = symbolList_&lt;I&gt;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Symbol = s,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _mapControl.Layers.Add(graphicsLayer);


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TimerCallback tcb = this.SymbolUpdater;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.Threading.Timer t = new System.Threading.Timer(tcb, null, 1000, Timeout.Infinite); 
&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp; public void SymbolUpdater(Object o)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (true)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (ESRI.ArcGIS.Client.Geometry.MapPoint mp in symbolList_)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp.X += getRandom();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mp.Y += getRandom();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; }

&amp;nbsp;&amp;nbsp;&amp;nbsp; private double getRandom()
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double d = r.NextDouble();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (r.NextDouble() &amp;gt; 0.5)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return d;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -d;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp; }&lt;/I&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Help is much appreciated. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Maybe this post could've gone into this thread: &lt;/SPAN&gt;&lt;A href="http://forums.arcgis.com/threads/48369-Graphics-Layer-inaccessible-by-background-thread" rel="nofollow noopener noreferrer" target="_blank"&gt;http://forums.arcgis.com/threads/48369-Graphics-Layer-inaccessible-by-background-thread&lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;I apologize for any inconvenience if so.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 06:39:28 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715698#M3645</guid>
      <dc:creator>AlexanderMagnusson</dc:creator>
      <dc:date>2021-12-12T06:39:28Z</dc:date>
    </item>
    <item>
      <title>Re: Issue with graphicslayer</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715699#M3646</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You should be able to update Geometry to show movement in GraphicsLayer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can try the following code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;XAML-code&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
xmlns:esri="http://schemas.esri.com/arcgis/client/2009"&amp;gt;
 &amp;lt;Grid&amp;gt;
&amp;nbsp; &amp;lt;Grid.Resources&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;esri:SimpleMarkerSymbol x:Key="MySymbol" Color="Red" Size="10" Style="Circle"/&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;esri:SimpleRenderer x:Key="MyRenderer" Symbol="{StaticResource MySymbol}"/&amp;gt;
&amp;nbsp; &amp;lt;/Grid.Resources&amp;gt;
&amp;nbsp; &amp;lt;esri:Map x:Name="MyMap"&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;esri:ArcGISTiledMapServiceLayer Url="http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;esri:GraphicsLayer ID="MyGraphicsLayer" Renderer="{StaticResource MyRenderer}" /&amp;gt;
&amp;nbsp; &amp;lt;/esri:Map&amp;gt;
 &amp;lt;/Grid&amp;gt;
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;C# Code-behind&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&amp;nbsp; public MainWindow()
&amp;nbsp; {
&amp;nbsp;&amp;nbsp; InitializeComponent();
&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; MyMap.Layers.LayersInitialized += (s, e) =&amp;gt;
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AddGraphics();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MoveGraphics();
&amp;nbsp;&amp;nbsp; };
&amp;nbsp; }

&amp;nbsp; private void AddGraphics()
&amp;nbsp; {
&amp;nbsp;&amp;nbsp; var layer = MyMap.Layers["MyGraphicsLayer"] as GraphicsLayer;
&amp;nbsp;&amp;nbsp; double xmin = MyMap.Layers[0].FullExtent.XMin;
&amp;nbsp;&amp;nbsp; double ymin = MyMap.Layers[0].FullExtent.YMin;
&amp;nbsp;&amp;nbsp; var random = new Random();
&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; 10; i++)
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; double x = xmin + (random.NextDouble() * 40000000);
&amp;nbsp;&amp;nbsp;&amp;nbsp; double y = ymin + (random.NextDouble() * 40000000);
&amp;nbsp;&amp;nbsp;&amp;nbsp; layer.Graphics.Add(new Graphic() { Geometry = new MapPoint(x, y) });
&amp;nbsp;&amp;nbsp; }
&amp;nbsp; }

&amp;nbsp; private void MoveGraphics()
&amp;nbsp; {
&amp;nbsp;&amp;nbsp; var timer = new DispatcherTimer() { Interval = TimeSpan.FromMilliseconds(30)};
&amp;nbsp;&amp;nbsp; DateTime _lastOutput = DateTime.Now;
&amp;nbsp;&amp;nbsp; var layer = MyMap.Layers["MyGraphicsLayer"] as GraphicsLayer;
&amp;nbsp;&amp;nbsp; int moveAmount = 180000;
&amp;nbsp;&amp;nbsp; var random = new Random();
&amp;nbsp;&amp;nbsp; timer.Tick += (s, e) =&amp;gt;
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (var g in layer.Graphics)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MapPoint pt = g.Geometry as MapPoint;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pt.X += (random.NextDouble() - 0.5) * moveAmount;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pt.Y += (random.NextDouble() - 0.5) * moveAmount;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; var now = DateTime.Now;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (now - _lastOutput &amp;gt; TimeSpan.FromSeconds(1))
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _lastOutput = now;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; };
&amp;nbsp;&amp;nbsp; timer.Start();
&amp;nbsp; }
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 06:39:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715699#M3646</guid>
      <dc:creator>JenniferNery</dc:creator>
      <dc:date>2021-12-12T06:39:31Z</dc:date>
    </item>
    <item>
      <title>Re: Issue with graphicslayer</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715700#M3647</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Jenny, thanks for your reply, it really helped me. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There were mainly two issues with the code I posted. Firstly, the method of threading, and secondly the magnitude of movement. Adding a value between minus one and one didn't cause much of a noticeable movement. Multiplying by 50000 or so gives more visible results. Heh, such a simple thing to get stuck at.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;By the way after a quick look in the documentation I haven't found any information regarding the used coordinate system. If anyone can direct me to it I'd be grateful.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 May 2012 09:28:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715700#M3647</guid>
      <dc:creator>AlexanderMagnusson</dc:creator>
      <dc:date>2012-05-24T09:28:16Z</dc:date>
    </item>
    <item>
      <title>Re: Issue with graphicslayer</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715701#M3648</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm not sure if these are what you're looking for: &lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://help.arcgis.com/en/webapi/WPF/apiref/ESRI.ArcGIS.Client~ESRI.ArcGIS.Client.Map.html"&gt;http://help.arcgis.com/en/webapi/WPF/apiref/ESRI.ArcGIS.Client~ESRI.ArcGIS.Client.Map.html&lt;/A&gt;&lt;BR /&gt;&lt;A href="http://help.arcgis.com/en/webapi/WPF/apiref/ESRI.ArcGIS.Client~ESRI.ArcGIS.Client.Map~SpatialReference.html"&gt;http://help.arcgis.com/en/webapi/WPF/apiref/ESRI.ArcGIS.Client~ESRI.ArcGIS.Client.Map~SpatialReference.html&lt;/A&gt;&lt;BR /&gt;&lt;A href="http://help.arcgis.com/en/webapi/WPF/help/index.html#//01n70000000m000000"&gt;http://help.arcgis.com/en/webapi/WPF/help/index.html#//01n70000000m000000&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Basically the map's SpatialReference is set by the first layer unless you specified Map.Extent with SpatialReference.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 May 2012 17:13:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/issue-with-graphicslayer/m-p/715701#M3648</guid>
      <dc:creator>JenniferNery</dc:creator>
      <dc:date>2012-05-24T17:13:56Z</dc:date>
    </item>
  </channel>
</rss>

