|
POST
|
LOL! I was not making this logical leap! You can paste the image right into the doc in the conditional statement the same way you enter a text string. No calling of external media required. And you can get the format/size perfect without having to guess at pixel width. That is better than publishing the image as an item in ArcGIS. Thanks for pointing this out! I'll mark this as the solution with the clarification that the answer is "No, you can't access the Media folder from the form, but you CAN do this."
... View more
02-20-2024
11:24 AM
|
2
|
0
|
3064
|
|
POST
|
I have looked at that section. My current, less than optimal, solution is to call the $image | src: expression within my IF statement. This works for now with a small number of users, but is not very scalable. I have to load the images to BOTH the Media Folder in Survey123 connect and update the survey choices with the media::image name, AND I have to publish the images as items in our ArcGIS Online organization, then update the Report code to use the generated item URL. It would be preferable if I could just call the media::image file in the report, since it has already been published to ArcGIS Online along with the form. I just don't know where the Media folder files get hosted when you publish a Survey123 form. Should I make this an enhancement request? Are we sure there is no way to access the Media folder files in ArcGIS Online?
... View more
02-20-2024
09:34 AM
|
0
|
1
|
3074
|
|
POST
|
I'm trying to place images stored in the Media folder on my Report template. The image would be displayed if the inspector chose that displayed image from a select_one choice question. (I am using the media::image field in my choice list to specify the image file). All of the examples I am finding are for placing the attached image from an image question in the report. Does the Survey123 Report have access to the Media folder for a form? I'm thinking the syntax in the word document template for my report should be something like: ${if Inspector | selected: "Hancock"} ${ Inspector | get{media::image} | size:400:0} ${/} Or maybe I can call the media file name directly from the folder? I tried this: ${if Inspector | selected: "Hancock"} ${JohnHancock.png | size:400:0} ${/} But I get: Failed to parse ${JohnHancock.png | size:400:0} since png cannot be found in the current parsing scope. FYI: I am sideloading higher resolution image files of my inspector's signatures to the form for use in the report, as they find the appearance of the Signature question to be too sloppy when it appears on our final reports.
... View more
02-15-2024
03:48 PM
|
1
|
4
|
3204
|
|
POST
|
Hi Russ - at what version of ArcGIS Enterprise is this issue fixed? We are still on 10.9 as we are still supporting ArcMap alongside ArcGIS Pro.
... View more
01-25-2024
09:05 AM
|
1
|
0
|
3292
|
|
POST
|
It's the end of 2023... any update on this from Adobe? Should we assume that exporting PDFs will always be an issue in ArcGIS Pro?
... View more
12-05-2023
11:30 AM
|
2
|
0
|
3882
|
|
POST
|
# Python script to create upstream and downstream line segments
# based on the first and last segment of lines with multiple vertices
import arcpy
# Set your workspace and feature class paths
workspace = r"C:\path\to\your\geodatabase.gdb"
input_feature_class = "your_input_feature_class"
output_upstream_feature_class = "upstream_lines"
output_downstream_feature_class = "downstream_lines"
# Set Unique ID field name from input feature class
ID = "CSDFeatureID"
# Get the spatial reference of the input feature class
spatial_reference = arcpy.Describe(input_feature_class).spatialReference
# Create feature classes with the same spatial reference
# arcpy.CreateFeatureclass_management(workspace, output_upstream_feature_class, "POLYLINE", spatial_reference=spatial_reference)
# arcpy.CreateFeatureclass_management(workspace, output_downstream_feature_class, "POLYLINE", spatial_reference=spatial_reference)
# Add Facility ID field to the result feature classes
# arcpy.AddField_management(output_upstream_feature_class, ID, "TEXT")
# arcpy.AddField_management(output_downstream_feature_class, ID, "TEXT")
# Start an edit session
edit = arcpy.da.Editor(workspace)
edit.startEditing(False, True)
edit.startOperation()
# Open a search cursor to iterate through the input feature class
with arcpy.da.SearchCursor(input_feature_class, ["SHAPE@", ID]) as cursor:
for row in cursor:
line_id = row[1] # ID of line
geom = row[0] # A polyline geometry object
arr =geom.getPart(0) # the vertices as an array of arrays of points
p1 = arr[0] # first vertex as an array of points
p2 = arr[1] # second
p3 = arr[-2] # second from last
p4 = arr[-1] # last
# Create arrays to hold vertex coordinates
upstream_array = arcpy.Array([p1, p2])
downstream_array = arcpy.Array([p3, p4])
# Create new features from the upstream and downstream arrays
with arcpy.da.InsertCursor(output_upstream_feature_class, ["SHAPE@", ID]) as up_cursor:
up_line = arcpy.Polyline(upstream_array)
up_cursor.insertRow((up_line, line_id))
with arcpy.da.InsertCursor(output_downstream_feature_class, ["SHAPE@", ID]) as down_cursor:
down_line = arcpy.Polyline(downstream_array)
down_cursor.insertRow((down_line, line_id))
# Stop the edit session
edit.stopOperation()
edit.stopEditing(True)
print("Script completed.") Thanks for the input @DanPatterson and @DuncanHornby I was able to achieve success today. To answer my original question, indexing from the end does work with arcpy.Array. Instead of using NumPy as Dan suggests, I used the arcpy.Array class as Duncan shows, but without the 4 point requirement. I still had trouble with which elements needed to be arrays versus lists (I could still benefit from some general object hierarchy education on this, as I indicated above). There was no need to convert to string or create a list. My main takeaway is that an arcpy geometry object for a polyline is an array of arrays of point coordinate pairs. And you need an array to create the new polylines, not a list. Here is the script I got to work:
... View more
11-16-2023
03:16 PM
|
0
|
0
|
5383
|
|
POST
|
I have not been able to figure out the syntax for retrieving the vertex points in a polyline in the proper format to index them and get their XY coordinates. I will try to adapt Dan's example above when I'm able. It sounds like converting the Search Cursor row to an array may be what I'm looking for? Then I have to index not only the "part", but the vertex? I almost need a flowchart of the hierarchy I'm trying to follow down to the coordinate pair level.
... View more
11-09-2023
08:54 AM
|
0
|
0
|
5449
|
|
POST
|
Hi, I'm trying create 2 new line feature classes based on just the first vertex to vertex line segment and last vertex to vertex segment of an existing line feature class. This is for calculating upstream and downstream gravity main horizontal angles for manhole turbulence modelling. Some of the existing lines are a single straight segment (just 2 vertices), but most have multiple vertices. I've already densified the true curves and none of the lines are multipart. If the new upstream and downstream line segments are identical for straight lines, that is ok. I will be joining the calculated horizontal angle back to new upstream and downstream horizontal angle fields in the original gravity main line feature class. How do I return the coordinate geometry of the first and second vertex in one pass, and then the last and second to last vertex in another pass using Python in the ArcPy pane in ArcGIS Pro (3.1). Everything I've seen only returns the first and last, or the centroid coordinates of the feature. Can I use some sort of indexing of the vertices (i.e: [0] and [1], then [-1] and [-2])? Here is the code I have so far that returns ALL of the vertex coordinates for each row and part. I need to create the upstream and downstream array objects from the 2 coordinates at each end. # Python script to create upstream and downstream line segments
# based on the first and last segment of lines with multiple vertices
import arcpy
# Set your workspace and feature class paths
workspace = r"C:\path\to\your\geodatabase.gdb"
input_feature_class = "your_input_feature_class"
output_upstream_feature_class = "upstream_lines"
output_downstream_feature_class = "downstream_lines"
# Set Unique ID field name from input feature class
ID = "CSDFeatureID"
# Get the spatial reference of the input feature class
spatial_reference = arcpy.Describe(input_feature_class).spatialReference
# Create feature classes with the same spatial reference
arcpy.CreateFeatureclass_management(workspace, output_upstream_feature_class, "POLYLINE", spatial_reference=spatial_reference)
arcpy.CreateFeatureclass_management(workspace, output_downstream_feature_class, "POLYLINE", spatial_reference=spatial_reference)
# Add Facility ID field to the result feature classes
arcpy.AddField_management(output_upstream_feature_class, ID, "TEXT")
arcpy.AddField_management(output_downstream_feature_class, ID, "TEXT")
# Start an edit session
edit = arcpy.da.Editor(workspace)
edit.startEditing(False, True)
edit.startOperation()
# Open a search cursor to iterate through the input feature class
with arcpy.da.SearchCursor(input_feature_class, [ID, "SHAPE@"]) as cursor:
for row in cursor:
print("Line Feature {}:".format(row[0]))
for part in row[1]:
for pnt in part:
print("Vertex coordinates: {}, {}".format(pnt.X, pnt.Y))
# Get the first two vertex coordinates and store in upstream_array
# Get the last two vertex coordinates and store in downstream_array
# Create new features from the upstream and downstream array coordinates
with arcpy.da.InsertCursor(output_upstream_feature_class, ["SHAPE@", ID]) as up_cursor:
up_line = arcpy.Polyline(upstream_array)
up_cursor.insertRow((up_line, line_id))
with arcpy.da.InsertCursor(output_downstream_feature_class, ["SHAPE@", ID]) as down_cursor:
down_line = arcpy.Polyline(downstream_array)
down_cursor.insertRow((down_line, line_id))
# Stop the edit session
edit.stopOperation()
edit.stopEditing(True)
print("Script completed.")
... View more
11-08-2023
11:10 AM
|
0
|
8
|
5601
|
|
IDEA
|
I'm up-voting this idea. As Randy mentions, I can't think of a scenario where I wouldn't want this enabled by default. As a consultant, the data we work with often get's transferred back and forth and invariably someone will forget to go to Environments and turn this on before exporting a dataset. I would have much more peace of mind if I could default enable this across my entire organization so my users don't have to remember.
... View more
11-06-2023
05:13 PM
|
0
|
0
|
4134
|
|
IDEA
|
Another upvote to fix this issue ASAP! It looks very bad when you are developing dashboards for a large organization that has invested heavily in ESRI software to have to use a third party solution outside of ArcGIS to achieve simple join filtering for Power BI. Lots of promise, but currently un-usable.
... View more
10-31-2023
01:52 PM
|
0
|
0
|
3145
|
|
POST
|
Thanks for the reply, Clay. Could you define what you mean by "complex"? Does that mean multiple symbology layers? Cartographic lines (dots and dashes)?
... View more
09-06-2023
02:14 PM
|
0
|
0
|
1611
|
|
POST
|
I am publishing features from ArcGIS Pro 3.1.2 as a web feature layer (NOT a web map). My sewer lines need to show the digitized direction with an arrow to indicate flow. I have these symbols setup in Pro, and I would like their symbology to be retained when they are added to a Map Viewer web map and used in ArcGIS Field Maps. Un-checking the Configuration Settings check box "Use symbol types compatible with all clients" does NOT preserve my symbology when viewing the feature layer in Map Viewer or Field Maps. The Help icon says "When unchecked, some symbols are preserved as ArcGIS Pro symbols. Use this option if the web layer will be used in client applications that support rendering ArcGIS Pro symbols." (italics mine) How can you determine which ArcGIS Pro symbols are supported in Field Maps, if any?
... View more
08-29-2023
11:04 AM
|
0
|
2
|
1697
|
|
IDEA
|
Another up-vote from another sewer line web map author here. I'll add that in ArcGIS Pro 3.1 you can choose to "Use symbol types compatible with all clients" when you publish a web feature layer. Checking this box downgrades directional arrow symbols on lines. If you don't check the box, the symbol may work in the new Map Viewer, but it does NOT seem to work in ArcGIS Field Maps.
... View more
08-29-2023
10:38 AM
|
0
|
0
|
1426
|
|
IDEA
|
Came here to post this same idea AFTER searching around and not finding documentation for this shortcut. Please make more documentation for this feature AND include it in the ArcGIS Pro Tips And Tricks presentations, such as at the User Conference. That said, I am glad this exists. But it WOULD be useful if a 'Duplicate' option appeared in the menu when you right-click a layer. Most people know how to use Ctrl+C and Ctrl+V, but Copy and Paste are still listed as part of the right-click menu.
... View more
08-29-2023
09:49 AM
|
0
|
0
|
2484
|
|
IDEA
|
YES! If I add a type to the domain I want the create feature template in Field Maps to see the change and allow me to add that type as a new template. Currently I have to create a new map, which is a pain.
... View more
08-22-2023
08:52 AM
|
0
|
0
|
1979
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 03-12-2026 02:09 PM | |
| 1 | 03-21-2025 03:07 PM | |
| 1 | 12-04-2025 04:57 PM | |
| 1 | 10-23-2025 04:54 PM | |
| 9 | 10-01-2025 12:20 PM |