I found this question trying to do what I think is the same thing. I wanted it all done via arcpy. Using Linear Referencing wasn't making sense to me because I don't already have the point events (and I couldn't figure out how to use LR to get them). The crux of what I ended up using was
line = arcpy.Polyline(arrayPts)
pt = line.positionAlongLine (0.99, 'True')
This requires Arc 10.1 or higher; I wasn't able to figure out whether this was available below the ArcInfo licensing level I have (OP specified ArcView).
In my example above, I wanted a point not at a fixed distance, but by a percentage of the overall line length. To do this, I supplied the second optional argument to positionAlongLine. You skip the second arg if you just want to specify an absolute distance. Here's the doc.
The fuller code sample is
import numpy
ptsList = list()
id = 0
with arcpy.da.SearchCursor('flFL', ["SHAPE@"]) as cursor:
for row in cursor:
arrayPts = row[0].getPart()
line = arcpy.Polyline(arrayPts)
pt = line.positionAlongLine (0.99, 'True')
ptsList.append((id, (pt.getPart().X, pt.getPart().Y)))
id += 1
array = numpy.array([ptsList], \
numpy.dtype([('idfield',numpy.int32),('XY', '<f8', 2)]))
SR = arcpy.Describe("flFL").spatialReference
arcpy.da.NumPyArrayToFeatureClass(array, 'nsegSamplePts', ['XY'], SR)
'flFL' is my featureLayer of lines on which I want to locate the points. Runs pretty fast. NumPyArrayToFeatureClass was a very nice way to dump all my points back into a featureClass (thanks to my colleague Curtis for that part!). Had been experimenting w/Append_management but that was a fair bit slower.
object.interpolate(distance[, normalized=False]). Is it a method of arcpy? If that is, can you please post the link. I googled it, but didn't find it. – user May 31 '12 at 10:09