There are multiple approaches using points, line and polygons. First create very small negative buffer of your DEM outline.
arcpy.FeatureToLine_management("BUFFER", "D:/Aerials/jpgs/line.shp")
arcpy.InterpolateShape_3d("dem","line","D:/Aerials/jpgs/line3d.shp")
arcpy.FeatureVerticesToPoints_management("line3d", "D:/Aerials/jpgs/points3d.shp")
arcpy.AddGeometryAttributes_management("points3d","POINT_X_Y_Z_M")
Use expression:
- ( [POINT_Z]-80)
In Extrusion property of the points (80 here is base altitude) to get this:
Alternatively apply this Python field calculator expression on field Shape of pline3D:
def plineZ(shp,base):
arr=[]
part=shp.getPart(0);n=len(part)
for i in xrange(n):
p1=part.getObject(i);X=p1.X+0.05;Y=p1.Y+0.05;Z=base
p2=arcpy.Point (X,Y,Z)
arr.append([p1,p2])
pLine= arcpy.Polyline(arcpy.Array(arr))
return pLine
#-------------------------------------------------
plineZ( !Shape!,80 )
This will give similar output to picture shown above.
Alternatively use script on your points to get this:
In an official answer I got from ESRI, they were stating that ArcScene cannot handle TIN files larger than 2GB. Their advice was to subset the data as @PolyGeo mentioned in his answer.
On the other hand ArcGIS Pro does handle it, so give it a try. I managed to process bigger files then yours and everything was fine.
When getting the error with maximum points I always enter very large number(several orders in magnitude then what I need), just to be sure the number of points wont be and issue.
To answer your question Is my data too big to create a TIN in ArcScene?, the answer is Yes!
Best Answer
You should rather clean or smooth the source point data than generate a TIN or raster and try to clean later.
Using ArcGIS
Note that LAS data handling has greatly improved in ArcGIS 10.2. If 10.2 (with 3D Analyst) is available to you, try the build-in functions:
There is a tool called Locate Outliers (part of 3D Analyst) which works perfectly for removing spikes and such. Judging from the screenshot you provided this will most probably clean your spikes.
As your spikes seem to align, you could also use the Profile tool and carefully cut outliers manually along a swath profile.
For a more sophisticated filtering, you can classify your Lidar Point Cloud data (3D Analyst -> Set LAS Class Codes Using Features) and build your TIN using a subset of points (e.g. only points classified as surface).
Using other tools than ArcGIS
You could use FUSION Lidar Toolkit (open source), SAGA GIS (open source), LasTools (some parts require commercial licensing; ArcGIS Toolbox provided) or GlobalMapper/Lidar (also commercial) to manipulate your Point Cloud data.
If you prefer filtering a raster dataset, you can apply a median filter to eliminate spikes, but I highly recommend to filter your source pont cloud instead. Especially if your points are unevenly distributed, a single outlying point in a less dense area can produce a more widespread error in a corresponding raster dataset.