|
POST
|
I have created a temporal mosaic dataset and am able to to use the time slider to run through the images in ArcGIS Pro. However, the display sequence is cumulative, not 'removing' previous versions during playback. I looked at the options on the Time tab and have not been able to find anyway to overcome this. The same mosaic dataset plays properly in ArcMap. I have looked for the ArcGIS Pro equivalent of the ArcMap setting 'Display data cumulatively' in Pro with no luck. I am assuming somehow this setting has been assigned in Pro to show the data cumulatively, which is not what I want. If this is the case, I need to know how to disable the cumulative parameter. If my grief is not associated with a setting, any insight regarding the behavior of mosaic datasets that might cause this issue would be welcome. Any assistance is greatly appreciated.
... View more
09-27-2017
08:24 AM
|
0
|
0
|
606
|
|
POST
|
Thanks for the info Jeff. It definitely helps our rollout plans. I appreciate you responding.
... View more
08-18-2017
01:52 PM
|
0
|
0
|
483
|
|
POST
|
I have started looking at the Pro 2.0 api. While I have not looked closely, it seems new api still does not allow the creation of new layout elements. A response to the initial submission from ESRI said this functionality would not be available at 1.3 or 1.4. I was hoping this might be included in the 2.0 release. I would appreciate any information from ESRI when this will be part of the Pro api. Any information would be welcome.
... View more
08-18-2017
12:58 PM
|
0
|
2
|
483
|
|
POST
|
Thanks so much for the information. Presently, we are upgrading some servers to a new flavor of SQL and I have not been able to get back to this. I'll let you know how I fare. I appreciate your follow up.
... View more
08-08-2017
10:12 AM
|
0
|
0
|
4554
|
|
POST
|
Thanks for your helpful reply. I apologize for not responding sooner but have been away. I have been working with your suggestion with some success. I was successful implementing your workflow interactively in Pro. If I follow your suggested workflow, for my application I will need to programmatically go to the layer's properties and set the "Don't cache any data locally" property to achieve the desired effect. It sounds like you have passed along a number of issues to ESRI, who have identified them as bugs. Do you have any sense from ESRI that they will be resolved in the .1 or .2 releases? Thanks again for your assistance.
... View more
07-28-2017
11:06 AM
|
1
|
1
|
4554
|
|
POST
|
Applying symbology from a .lyr or .lyrx file has been an on-going battle for me. I had an earlier post describing a problem with 1.4. I was able to get past that, but now find a different problem at 2.0. I am in the process of upgrading a couple of applications from 1.4 to 2.0 I have encountered a problem when I attempt to apply the symbology of a .lyr or .lyrx file to a layer brought into the session by the application. This had been working in 1.4 I wanted to see how Pro itself handled this by running the GeoProcessing Tool "Apply Symbology From Layer" interactively through native Pro. I manually brought in a non symbolized grid layer into Pro. I ran the tool and entered the grid layer as the input layer. For the Symbology layer, I navigated to a .lyrx file that is built from a different but identically structured grid. As soon as I finished browsing to this file and selected it, the "ApplySymbology From Layer" tool 'seized up'. Regarding the .lyrx file. I am able to add it directly to a pro-session with no problems and proper symbolization. If I do this, I am able to run the Apply Symboloby From Layer tool interactively, using the just added grid (from the .lyrx) file as the symbol layer and the tool works. It appears the version 2.0 tool only works with fully qualified layers that have been added to the session and not with providing it .lyr or .lyrx files that point to and are symbolized the same way. I have a series of screen captures illustrating this experience with using the tool with a .lyrx file and then with a layer already added to Pro. This image shows a non symbolized grid file added to Pro This image shows trying to run the tool using a .lyrx file as the symbology layer source. This image also shows the output screen from Visual Studio that captures how it behaved after adding the .lyrx file to the Symbology Layer input: It simply seizes up. As a test to make sure the .lyrx file I was using was healthy, I added it to the Pro session through the Add Data button. This image shows it successfully added: The following image shows running the Apply Symboloby From Layer tool using the just added GRID from the .lyrx file. When I populate the Symbology Layer input, the tool does not misbehave: The final image shows the initial non-symbolized grid now with the proper symbology. This seems to confirm that the tool is not properly handling .lyrx files when provided as a the symbology source. Any assistance is appreciated. I will be unable to reply to any responses for a few days. Thanks again.
... View more
07-18-2017
02:52 PM
|
0
|
24
|
9509
|
|
POST
|
Hi Gintautas, I have also used the Geoprocessing tool "ApplySymbologyFromLayer_management" to apply a renderer to a raster layer. It has been a while since I was working with this approach. I believe I recall having some heartburn with it regarding feature layers, probably something glitch on my end. The following worked for me. var gpresult = await Geoprocessing.ExecuteToolAsync("ApplySymbologyFromLayer_management", new string[] { rasterLayer.Name, strPathToLyrFile });
... View more
04-13-2017
08:07 AM
|
0
|
1
|
3301
|
|
POST
|
Hi Gintautas, My apologies for overlooking this. I was hoping someone from ESRI would weigh in. My current work around is a little kludgy. In code I ended up adding a pre-baked .lyrx file to the map that had the symbology I wanted. I then retrieved the feature layer the .lyrx pointed to (even though it was a 'broken' link. I then retrieved the feature layer I wanted to assign the symbology to. I then run the following queued task: public Task SetFeatureLayerRendererFromDiffFeatureLayer(FeatureLayer ftrLayer, FeatureLayer ftrLayerToSet) { return QueuedTask.Run(() => { CIMClassBreaksRenderer classBrakesRend = ftrLayer.GetRenderer() as CIMClassBreaksRenderer; ftrLayerToSet.SetRenderer(classBrakesRend); }); } Following this, I remove the 'intermediate' feature layer. In this case ftrLayer from the map. I keep the contents closed during this process so it is not as visually intrusive. I would like to know if the approach I was initially using does not work because of a 'bug' or I am incorrectly using the api. I am using a class breaks renderer, though I would think it would work with a unique value renderer as well.
... View more
04-11-2017
08:52 AM
|
0
|
3
|
3302
|
|
POST
|
I have an application that allows the user to create various map panes. I am looking for a method that will allow these panes to be 'tiled' on the screen so they can be viewed simultaneously. I have looked at the Pane Class in the API reference and see a comment in the remarks section that states: You can open many panes at the same time and these can be grouped or tiled. I have looked at the PaneCollection class thinking the 'tiling' capability might exist there. Perhaps this tiling ability exists as a command in Pro itself. If it does, I have not been able to locate it. I have included an example of the type of result I am looking for. Any assistance is appreciated.
... View more
03-15-2017
03:14 PM
|
0
|
2
|
1234
|
|
POST
|
Max, Thanks (again!) I appreciate your help. Unfortunately, I still am unable to apply the symbology from the .lyr file in code. This task has become a surprisingly frustrating obstacle. Through my earlier testing, I had built a symbology fields var with the same syntax you provided. However, I assumed I had introduced some error into the bit I built and used the example you kindly provided. As usual, the following error wn: {<msg code="800" type="100">ERROR 000800: The value is not a member of VALUE_FIELD | NORMALIZATION_FIELD | EXCLUSION_CLAUSE_FIELD | CHART_RENDERER_PIE_SIZE_FIELD | ROTATION_XEXPRESSION_FIELD | ROTATION_YEXPRESSION_FIELD | ROTATION_ZEXPRESSION_FIELD | TRANSPARENCY_EXPRESSION_FIELD | TRANSPARENCY_NORMALIZATION_FIELD | SIZE_EXPRESSION_FIELD | COLOR_EXPRESSION_FIELD | PRIMITIVE_OVERRIDE_EXPRESSION_FIELD. ERROR 000309: The value is not a field ERROR 000309: The value is not a field</msg>} var inLayer = pDissFeatLayerTest.Name; var inSymbologyLayer = strPathToLayerFile; var symbologyFields = "[[\"VALUE_FIELD\", \"gridcode\", \"gridcode\"]]"; var parameters = Geoprocessing.MakeValueArray(inLayer, inSymbologyLayer, symbologyFields); var gpResult = await Geoprocessing.ExecuteToolAsync("ApplySymbologyFromLayer_management", parameters, null, CancelableProgressor.None, GPExecuteToolFlags.Default); I have placed breakpoints in the process to examine the values of the arguments. Everything appears in order. I examined the symbologyFields variable in code and it is producing what appears to be correct syntax: [["VALUE_FIELD", "gridcode", "gridcode"]] In code, prior to execution, I test for the existence of the .lyr file used in the inSymbologyLayer argument. So I know my path syntax is correct. I am retrieving the feature layer in code and it is returning the valid feature layer for the inLayer argument. I have included some screen shots from Pro. One shot shows the feature class table along with the ApplySymbologyFromLayer management tool. The second shot shows the successful results of the tool. Any insight or suggestions would be appreciated.
... View more
02-13-2017
12:54 PM
|
0
|
1
|
3302
|
|
POST
|
I hesitate to throw another syntax question out so quickly following a recent similar syntax request. Up until this week I had been able to pretty well navigate syntax required by the various pro tools. However, I am struggling with applying symbology from a manually classified .lyr file to a feature layer. Through the sdk I am attempting to use the tool “ApplySymbologyFromLayer_management”. I have successfully used this tool in code to apply symbology to a raster layer using the following: var gpresult = await Geoprocessing.ExecuteToolAsync("ApplySymbologyFromLayer_management", new string[] { rasterLayer.Name, strPathToLyrFile }); I have interactively used the tool in the Pro session without issue for the feature layer. I noticed that when I specify the target .lyr file interactively, the Type field, the Source Field, and the Target Field are automatically assigned to the correct values. (Displayed in Attachment). This initially led me to believe that I might not need to provide the symbology field arguments. However, when I used the same approach for the feature layer with the classified .lyr file, I received the error: {<msg code="309" type="100">ERROR 000309: The value is not a field ERROR 000309: The value is not a field</msg>} I have looked at various documentation pages such as: http://pro.arcgis.com/en/pro-app/tool-reference/data-management/apply-symbology-from-layer.htm, which provides python syntax examples. Based off the help page, I started by building this: string strTestArgs = "[VALUE_FIELD, gridcode, gridcode]"; var gpresult = await Geoprocessing.ExecuteToolAsync("ApplySymbologyFromLayer_management", new string[] { rasterLayer.Name, strPathToLyrFile, strTestArgs }); I have tried numerous sytax versions of the argument string to pass to the tool in code but can’t seem to find the proper format. All the versions of the argument string I have passed produced either: {<msg code="309" type="100">ERROR 000309: The value is not a field or {<msg code="800" type="100">ERROR 000800: The value is not a member of VALUE_FIELD | NORMALIZATION_FIELD | EXCLUSION_CLAUSE_FIELD | CHART_RENDERER_PIE_SIZE_FIELD | ROTATION_XEXPRESSION_FIELD | ROTATION_YEXPRESSION_FIELD | ROTATION_ZEXPRESSION_FIELD | TRANSPARENCY_EXPRESSION_FIELD | TRANSPARENCY_NORMALIZATION_FIELD | SIZE_EXPRESSION_FIELD | COLOR_EXPRESSION_FIELD | PRIMITIVE_OVERRIDE_EXPRESSION_FIELD. ERROR 000309: The value is not a field Any assistance of how to construct the string for the symbology field arguments would be appreciated.
... View more
02-10-2017
11:54 AM
|
0
|
15
|
6074
|
|
POST
|
Thanks Max. I did not understand the role of the workspace in the process. I thought fully pathing to the source was necessary in the 'expression'. Now that you pointed out the error of my ways, it seems straight forward. Additionally, while I was working on this, with a tip from ESRI, I looked at the "Times" tool and was able to use it to achieve the desired result as well. I appreciate your time and thanks for the assistance.
... View more
02-08-2017
06:37 AM
|
0
|
0
|
2309
|
|
POST
|
Hi Max, Thanks for your help. I appreciate you taking to the time to respond. Yes, I am trying to use the RasterCalc tool from dot net code. I have tried using your syntax as well as using the workspace environment, and am still encountering the same problem. I noticed your example referenced a png file. I don’t know if using esri GRIDS requires a different approach. However, I interactively ran the raster calculator tool in ArcGIS Pro and the syntax it built on the screen appeared to be the same for GRIDs as well as pngs. I noticed your example referenced Band_1 in the expression piece. The GRIDs I am using only contain one band. However, as an experiment, I did try expressions referencing Band_1 with the same results. If you don’t mind taking a look, perhaps you can see the error of my ways. The ‘source’ esri GRID directory is located on one of our network drives. For example the source grid would be: @”\\dom.example\data\snow\sd_20170201” This path points to a GRID directory. With these parameters I have tried the following: var expression = @”\\dom.example\data\snow\sd_20170201” + “ * “ + “10000”; var outputRaster = @”C:\Temp\out_from_rc”; var parameters = Geoprocessing.MakeValueArray(expression, outputRaster); var workspace = @”C:\Temp”; var environments = Geoprocessing.MakeEnvironmentArray(workspace: workspace); var gpResults = await Geoprocessing.ExecuteToolAsycn(“RasterCalculator”, parameters,environments,CancelableProgressor.None); I have tried some variations of syntax for the expression, with no luck. I don’t know if using the GRID format introduces different requirements or having the source data and the results data living in different workspaces creates issues. The interactive tool does not seem to mind any of this. Once again, thanks for responding.
... View more
02-07-2017
09:07 AM
|
0
|
2
|
2309
|
|
POST
|
I would appreciate some syntax assistance regarding how to build in code the map algebra syntax used by RasterCalc tool in ArcGIS Pro. I have successfully implemented other Geoprocessing tools and was able to create the necessary args for required value array without much heartburn. However, doing this for the RasterCalc Geoprocessing through code has proven elusive. I have looked at the native tool in ArcGIS Pro. The tool appears to call for building a map algebra expression using an input raster and whatever calculation you wish to perform. When I interactively use the tool, the desired syntax it produces is: "sd_20170201" * 10000 I am able to run the tool interactively in ArcGIS Pro successfully. I thought this would be simple enough to build in code. Unfortunately, it has proven more involved. I have build numerous versions ( fully qualifying the path to the input raster, various quoting strategies etc ) with no luck. Interestingly, when I returned to running the tool interactively through ArcGIS Pro to revisit this, when I first build the string through the tool interface, I noticed the icon appeared adjacent to the Map Algebra expression label displays a red circle with a white X, when I hover over the icon, it displays a same syntax error message I am encountering through code: "ERROR 000989 Python Syntax Error: Parsing error SyntaxError: invalid syntax ( <string>, line 1)" However, when I click out of the expression textbox, the error icon disappears and the tool now likes the expression. After observing this, I thought that perhaps clicking out of the expression textbox might append a carriage return to the string. I tried the same approach in code, but it still threw the 989 error. If anyone could provide the code version of building this seemingly simple string that the RasterCalc tool would like in code, I would be quite grateful. Thanks for your time. Cheers.
... View more
02-02-2017
08:47 AM
|
0
|
5
|
4038
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 01-06-2017 09:29 AM | |
| 1 | 03-04-2016 08:45 AM | |
| 1 | 08-11-2016 02:39 PM | |
| 3 | 07-16-2018 10:11 AM | |
| 1 | 07-28-2017 11:06 AM |
| Online Status |
Offline
|
| Date Last Visited |
11-11-2020
02:23 AM
|