POST
|
You can't show what isn't there. In other words, there is no builtin facility for giving fields an alias. If your data source does not support it directly then you have to do it. You can implement aliases yourself by saving them in a database table, a file, or as an ArcGIS extension. (I considered developing an extension myself but the down side of that is that the user of your map must have the extension. It seemed much simpler just to store the settings in a file and read them whenever the user needed to select a field.) Hi! Thanks for the fast answer. What I don't understand: When I open the attribute table of a shape file and then open the properties of a field I have a line for "Alias" and I can change ist (and it is saved - so when I open the shape file again, the changed alias is still there and is different from the "name" of the field). So it _is_ there, but you mean there's really no possibility to read it out? Greetings Selda
... View more
03-27-2012
09:55 AM
|
0
|
0
|
497
|
POST
|
Hi everybody, do you now a possibility to show the AliasNames of a shapefiel with vb.net? The IFields Interface does not provide this functionality as the help says: IField.AliasName Property: "This is only supported on fields from object classes and feature classes that are registered with the geodatabase; Personal, File or ArcSDE geodatabases. For fields coming from other data sources (shapefiles, coverages, etc) the AliasName will be the same string as the field name." Any other idea? Thanks for any help Selda
... View more
03-27-2012
05:32 AM
|
0
|
5
|
2259
|
POST
|
Hallo Bianca, falls das Problem noch aktuell sein sollte: Benenne die Spalten um (ohne Sonderzeichen, Leerzeichen, ä,ö etc. und eher kurze Bezeichnung) und achte darauf, dass die Zellinhalte der join-Spalte vom gleichen Typ sind (also sowohl in ArcGIS als auch in Excel z.B. Zahl (gleiches Dezimaltrennzeichen?) oder Text). Ich hoffe, das hilft. Ansonsten kannst du auch mal Join von der Toolbox aus starten, vielleicht ändert das was (Data Management Tools -> Joins). Viel Erfolg! Grü�?e, sinje
... View more
06-26-2011
10:47 PM
|
0
|
0
|
613
|
POST
|
Hi there, I have a stream network as polylines. But it was digitized badly so that the stream sections are not properly connected (some mm too long or too short). I was very happy to find two tools to solve exactly this problem: Trim line and extend line in the Editing Toolbox. But when I apply it nothing happens! I tried extend/trim lengths from mm to 20m but the output is still the same as the input! What is wrong with this tool? Does anybody else has this problem? I use ArcGIS 10 with Service Pack 2. Thanks for any help, Selda
... View more
05-10-2011
01:59 AM
|
0
|
3
|
680
|
POST
|
Weeks of discussion with the tech support did not help, but after the installation of Service pack 2 this problem does not exist anymore... Cheers, Selda
... View more
05-04-2011
12:06 AM
|
0
|
0
|
284
|
POST
|
And you are saying that after the code to create the geometry list that when you loop through the geometry list and process each individually that you get 5 feature classes each with one feature with unique geometry and if you process the whole geometry list you can one feature class with 5 features each with the same geometry? yes, exactly! And it get's even stranger: Although I didn't change anything special in the code (I only replaced some fixed pathnames to scratch pathnames) now it works in the python editor. But when I run it as a tool in ArcGIS with GetParametersAsText for the arguments, then it's the same again: 5 times the first polyline in the list. By the way: It's the same when I use the merge tool instead of CopyFeatures. Also just to verify you might want to try running the code below just to get more of an idea of the geometry in the list. If the extents are different then the geometries you are creating are different and I am not really sure why they would not be outputed that way when passed to Copy Features. Your code gives me the following output, so they seem to be really different...: Min X: 572739.2346, Min Y: 5607458.6527, Max X: 573639.9422, Max Y: 5608326.5093 Min X: 570178.8781, Min Y: 5607424.5708, Max X: 570601.3457, Max Y: 5608190.19 Min X: 571531.150513, Min Y: 5608746.4787, Max X: 572402.529724, Max Y: 5609681.87512 Min X: 569459.7907, Min Y: 5605696.8935, Max X: 569944.0459, Max Y: 5606899.4698 Min X: 569459.7907, Min Y: 5605471.2531, Max X: 569877.6495, Max Y: 5606705.4056 I'm really at a loss... Yes, I will contact the technical support, maybe they have an idea. Thanks for trying to help me! Selda
... View more
03-08-2011
12:31 AM
|
0
|
0
|
284
|
POST
|
this is not the original code as there are many steps inbetween, but it gives the general way I'm doing it. The overall task was to extract the part of a stream upstream of several sampling sites. I'm doing this in several steps with comparing the elevation in a dem at the stream vertices. As the stream contains of several branches, I need every branch of the upstream part. In the end I have a list of objects that contains the x/y coordinates for the vertices of the new polyline feature I want to make. Each branch has its own pointlist. That's the way how I make the polylines: upstream =[] # for each sampling site a polyline shall be added to this list (one stream contains several branches that are dissolved to one polyline with the dissolve tool in the end)
# do for each sampling site:
for streamsegment_list in sampling_list:
lineList = [] # for each branch a polyline shall be added to this list
# do for each branch of the actual stream:
for segmentlist in streamsegment_list: # streamsegment_list contains the points for all branches of one stream, segmentlist gives one branch
pointList = arcpy.Array() # the points for one branch of the stream-polyline shall be added to this list
# do for each point of the actual branch:
for segment in segmentlist: # segmentlist gives one branch of the stream, segment is an object that contains the x/y coordinates
PS_pt = arcpy.Point(segment.firstx, segment.firsty) #firstx and firsty contain the coordinates for the points
pointList.add(PS_pt) # add the point to the list
ln = arcpy.Polyline(pointList) # make a polyline out of the pointlist (one branch)
lineList.append(ln) # append this polyline to the linelist
ln = None
line_geom = arcpy.Geometry()
lines = arcpy.Dissolve_management(lineList, line_geom) # dissolve the branches of one stream to one polyline
upstream.append(lines[0]) # append this polyline to the upstream-list
# make a new geodatabase feature class for the streams:
arcpy.CopyFeatures_management(upstream, "streams") but then instead of 5 different polylines I get five times the first polyline in the upstream list as I described.
... View more
03-03-2011
12:06 AM
|
0
|
0
|
1474
|
POST
|
Ah, thanks, I did not know, that I have to assign the result to a variable! I tried to use 'g' as input to the arcpy.CopyFeatures_management tool! Now it works. But now I have another problem: Inside a loop I append the polylines from the dissolve tool to a list:
line_geom = arcpy.Geometry()
lines = arcpy.Dissolve_management(newline, line_geom)
upstream.append(lines[0]) print upstream gives this: [<Polyline object at 0x107918d0[0x104daaa0]>,
<Polyline object at 0xbebd770[0x104ce278]>,
<Polyline object at 0xbdf6cf0[0xba9c980]>,
<Polyline object at 0xbe0e750[0x104dad58]>,
<Polyline object at 0x573d770[0x104ce338]>] When I now use this list as input to the arcpy.CopyFeatures_management tool I get a shape-file that contains the first polyline in the list 5 times instead of 5 different polylines. But when I make a shapefile out of every single line from the list like this: for i in range (0, len(upstream)):
ln = upstream
arcpy.CopyFeatures_management(ln, "line" +str(i)) then I get the five different lines correctly. So they are there in the list and they are correct. How could that happen? Thank you for your help! Selda
... View more
03-01-2011
11:55 PM
|
0
|
0
|
1474
|
POST
|
Hi Chris, I thought that, too. But what I get is an error message: "Input Data Element: Dataset in_memory\f1F06F212_6D71_42CA_B754_D6EA38AB0E4B does not exist or is not supported" But it's there and it was the output of the dissolve tool, so it should be ok?! Any idea? Selda
... View more
03-01-2011
12:23 AM
|
0
|
0
|
1474
|
POST
|
I was hoping that there is an easier and faster way...
... View more
02-27-2011
11:38 PM
|
0
|
0
|
1474
|
POST
|
Hi there, I'm quite new to arcpy, so maybe this is stupid question: I have a script that produces streams as polylines for every branch one line. I use "unsplit line" to merge them to one line with a geometry object as output. This is done several times (several streams) so in the end I have a list with several geometry objects that contain polylines. Now I want to convert these geometries to a shapefile or geodatabase feature. How can I do this? CopyFeatures_managements needs a shapefile/Feature as input. Is there a similar tool/opportunity for geometry objects? Thanks for any help! Selda
... View more
02-26-2011
09:48 AM
|
0
|
12
|
5017
|
POST
|
Hi Aaron, thanks for your reply. I tried out your suggestion, but what i got was a random 1500m-segment of my stream. But I need it to start at specific point (my sampling site / the starting node of the polyline). So I'm afraid, to create random points doesn't help me. Or did I geht something wrong? Selda
... View more
12-01-2010
10:29 PM
|
0
|
0
|
104
|
POST
|
Hi Chris, sorry, I didn't get your suggestion. What I have is a stream as polyline and a sampling site as point. I split the stream at the sampling site. Then I want to extract the segment of the stream 1500 m upstream of this sampling site. So the stream has many vertices in 1500 m length as it is curving. What I have to find is the segment of the stream that exceeds the 1500m limit. And yes, then I can calculate the right point between the two nodes of this segment for example with the theorem on intersecting lines, or with the angle (don't know, how this would work, yet). But for this I have to "walk" on each segment like I described before, until I come to the 1500m. Or is there an easier solution? Sinje
... View more
12-01-2010
03:36 AM
|
0
|
0
|
619
|
POST
|
Hi there, I have a stream polyline and sampling sites as points. As the points are not accurately located on the stream lines, I want to calculate the correct XY-coordinates with the "near"-Tool. I want to do this in Python with other geoprocessing tasks in a row and every point one by one. My question: Is it generally possible to use this tool on a geometry object instead of a Feature Class? Does a geometry object actually have attributes like in the attribute table of a Feature Class that I can read out afterwards? Maybe this is a stupid question, but I'm quite new to Python and using Geometry objects. My code that I tried looked like this, but I have no idea, how to get now the XY-coordinates from the results...:
def find_PS_XY_on_streams (PS, streams):
g = arcpy.Geometry()
searchRadius = "30 Meters"
location = "true"
near_XY = arcpy.Near_analysis(PS, streams, searchRadius, location)
return near_XY
FC = "points"
stream_FC = "River"
g = arcpy.Geometry()
geometryList = arcpy.CopyFeatures_management(FC, g)
for geometry in geometryList:
PS_XY = find_PS_XY_on_streams (geometry, stream_FC)
Thanks for any help! Selda
... View more
11-30-2010
06:12 AM
|
0
|
0
|
272
|
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:23 AM
|