<?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 Multi Ring Buffer in ArcGIS Pro SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-pro-sdk-questions/multi-ring-buffer/m-p/819874#M2773</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Creating a multi ring buffer tool - it doesn't seem to be presenting with the layer at the end?&lt;/P&gt;&lt;P&gt;Has anyone else had this? Does anyone have a working example they can share?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have even gone back to the basic buffer example in the samples and amended the two lines of code and I still get no layer:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt; protected override async Task&amp;lt;bool&amp;gt; OnSketchCompleteAsync(Geometry geometry)
 {
 var valueArray = await QueuedTask.Run(() =&amp;gt;
 {
 var g = new List&amp;lt;object&amp;gt;() { geometry, }; 
&lt;STRONG&gt; return Geoprocessing.MakeValueArray(g,"C:\ArcGIS\Projects\MyProject1\MyProject1.gdb\Annotation",@"500,1000,2000","Meters","Distance","All","None");&lt;/STRONG&gt;
 });
await Geoprocessing.ExecuteToolAsync("Analysis.MultipleRingBuffer", valueArray); 
return true;
 }&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I have tried this in the new 2.1 SDK also to no avail.&lt;/P&gt;&lt;P&gt;I have a sneaky suspicion it has something to do with the buffer value syntax. Annotation is a feature class for polygons.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Buffer works absolutely fine and I have got it working in arcpy. However I want the user to be able to use the cursor to pick a point on the screen rather than have a feature class with points in to "multibuffer".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TIA&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Dec 2021 16:57:21 GMT</pubDate>
    <dc:creator>SamanthaHughes</dc:creator>
    <dc:date>2021-12-12T16:57:21Z</dc:date>
    <item>
      <title>Multi Ring Buffer</title>
      <link>https://community.esri.com/t5/arcgis-pro-sdk-questions/multi-ring-buffer/m-p/819874#M2773</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Creating a multi ring buffer tool - it doesn't seem to be presenting with the layer at the end?&lt;/P&gt;&lt;P&gt;Has anyone else had this? Does anyone have a working example they can share?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have even gone back to the basic buffer example in the samples and amended the two lines of code and I still get no layer:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt; protected override async Task&amp;lt;bool&amp;gt; OnSketchCompleteAsync(Geometry geometry)
 {
 var valueArray = await QueuedTask.Run(() =&amp;gt;
 {
 var g = new List&amp;lt;object&amp;gt;() { geometry, }; 
&lt;STRONG&gt; return Geoprocessing.MakeValueArray(g,"C:\ArcGIS\Projects\MyProject1\MyProject1.gdb\Annotation",@"500,1000,2000","Meters","Distance","All","None");&lt;/STRONG&gt;
 });
await Geoprocessing.ExecuteToolAsync("Analysis.MultipleRingBuffer", valueArray); 
return true;
 }&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I have tried this in the new 2.1 SDK also to no avail.&lt;/P&gt;&lt;P&gt;I have a sneaky suspicion it has something to do with the buffer value syntax. Annotation is a feature class for polygons.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Buffer works absolutely fine and I have got it working in arcpy. However I want the user to be able to use the cursor to pick a point on the screen rather than have a feature class with points in to "multibuffer".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TIA&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 16:57:21 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-pro-sdk-questions/multi-ring-buffer/m-p/819874#M2773</guid>
      <dc:creator>SamanthaHughes</dc:creator>
      <dc:date>2021-12-12T16:57:21Z</dc:date>
    </item>
    <item>
      <title>Re: Multi Ring Buffer</title>
      <link>https://community.esri.com/t5/arcgis-pro-sdk-questions/multi-ring-buffer/m-p/819875#M2774</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Samantha,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As you guessed, your syntax for the MultipleRingBuffer tool is not completely correct.&amp;nbsp; &amp;nbsp;Here's a quick way to work out the correct syntax when you get stuck.&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Run the tool in Pro over a sample dataset with the required parameters.&amp;nbsp; Then go to the History tab in the Catalog window and hover over the GP tool that you submitted.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG __jive_id="395640" class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/395640_pastedImage_377.png" style="width: 620px; height: 461px;" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can see that the Distances are separated by semi-colons rather than commas.&amp;nbsp; And the final parameter should be OUTSIDE_ONLY or FULL.&amp;nbsp; &amp;nbsp; You can&amp;nbsp;also see a lot of this information by looking at the syntax section of help page for the tool&amp;nbsp; &amp;nbsp;(&lt;A href="http://pro.arcgis.com/en/pro-app/tool-reference/analysis/multiple-ring-buffer.htm" title="http://pro.arcgis.com/en/pro-app/tool-reference/analysis/multiple-ring-buffer.htm"&gt;Multiple Ring Buffer—Help | ArcGIS Desktop&lt;/A&gt;).&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thus your example should look&amp;nbsp;something like this.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;protected override async void OnClick()&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;var featureLayer = MapView.Active.Map.GetLayersAsFlattenedList().OfType&amp;lt;FeatureLayer&amp;gt;().FirstOrDefault();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;var valueArray = await QueuedTask.Run(() =&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;return Geoprocessing.MakeValueArray(featureLayer, @"D:\Data\Anno\SampleAnno.gdb\SampleAnno_MultipleRingBuffer3", @"50;100;150", "Meters", "distance", "All", "FULL");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;});&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;await Geoprocessing.ExecuteToolAsync("Analysis.MultipleRingBuffer", valueArray);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;With regards to your last statement about&amp;nbsp;wanting the user to be able to pick a point on the screen rather than a feature class with points, that is not possible.&amp;nbsp; &amp;nbsp;Again looking at the syntax section on the help page for the tool you can see that the first parameter must be of type FeatureLayer;&amp;nbsp; meaning that the tool will only accept&amp;nbsp;existing features in a featurelayer or a selection set of features in a featurelayer.&amp;nbsp;&amp;nbsp; You&amp;nbsp;can use the sketch geometry to select existing features in the appropriate layer before calling the tool but you cannot pass a geometry itself.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Narelle&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 02 Feb 2018 19:50:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-pro-sdk-questions/multi-ring-buffer/m-p/819875#M2774</guid>
      <dc:creator>NarelleChedzey</dc:creator>
      <dc:date>2018-02-02T19:50:26Z</dc:date>
    </item>
    <item>
      <title>Re: Multi Ring Buffer</title>
      <link>https://community.esri.com/t5/arcgis-pro-sdk-questions/multi-ring-buffer/m-p/819876#M2775</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Samantha,&lt;/P&gt;&lt;P&gt;&amp;nbsp;I tried this as well and came up with a solution that works.&amp;nbsp; The problem was in the parameters that the tool supports.&amp;nbsp; In essence the first parameter turns out to be a 'map member'.&amp;nbsp; In essence Mapmember is a feature layer in your active map.&amp;nbsp; In my sample I am still using the construction tool to add a point (line or polygon).&amp;nbsp; I am using the 'CurrentTemplate' property of the&amp;nbsp;MapTool base class to get the MapMember for which I just added my point (adding a new construction tool gives you the code for adding a new feature out-of-box for that).&amp;nbsp; After the point has been added to the feature class (make sure it's an empty feature class) I call the code snippet below to add the rings.&amp;nbsp; If you run the Multiple Ring Buffer tool manually and you add a simple point, you will see (via the content pane) that the GP tool create and then added a new Mapmember to you map's content.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;IMG alt="" class="image-1 jive-image j-img-original" src="https://community.esri.com/legacyfs/online/395672_MultipleRingBuffers.png" style="width: 620px; height: 516px;" /&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It then uses the scratch feature class that as the input for the tool.&amp;nbsp; Also some of your other parameters needed some adjustment as well.&amp;nbsp; The sample below also shows how to view the result message (or errors).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;protected&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;async&lt;/SPAN&gt; Task&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;string&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;CreateRings&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;EditingTemplate currentTemplate&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="keyword token"&gt;var&lt;/SPAN&gt; valueArray &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;await&lt;/SPAN&gt; QueuedTask&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Run&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="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; Geoprocessing&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;MakeValueArray&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;currentTemplate&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;MapMember&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Name&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; 
&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;&lt;SPAN class="string token"&gt;@"C:\Data\FeatureTest\FeatureTest.gdb\Points_MultipleRingBuffer"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
&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;&lt;SPAN class="keyword token"&gt;new&lt;/SPAN&gt; &lt;SPAN class="token class-name"&gt;List&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;string&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"1000"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"2000"&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Meters"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Distance"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; 
&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;&lt;SPAN class="string token"&gt;"ALL"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"FULL"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IGPResult gpResult &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;await&lt;/SPAN&gt; Geoprocessing&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;ExecuteToolAsync&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"Analysis.MultipleRingBuffer"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; valueArray&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;string&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;IsNullOrEmpty&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;gpResult&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ReturnValue&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="operator token"&gt;?&lt;/SPAN&gt; $&lt;SPAN class="string token"&gt;@"Error in gp tool: {gpResult.ErrorMessages}"&lt;/SPAN&gt; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; $&lt;SPAN class="string token"&gt;@"Ok: {gpResult.ReturnValue}"&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;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I used the sample snippet on the sample data 'FeatureTest' and got this result:&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="image-2 jive-image j-img-original" src="https://community.esri.com/legacyfs/online/395673_MultipleRingBuffersSample.png" style="width: 620px; height: 429px;" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 09:43:17 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-pro-sdk-questions/multi-ring-buffer/m-p/819876#M2775</guid>
      <dc:creator>Wolf</dc:creator>
      <dc:date>2021-12-12T09:43:17Z</dc:date>
    </item>
  </channel>
</rss>

