I have a set of CSV files with lat/long for points spaced every 500 meters apart. There are several files that collectively span a huge area across the Nevada/Utah border.

I need to create a topologically-consistent square around every point (so, square sides are nominally 500-m by 500-m).

With a very small subset, I tried the ArcGIS Generate Tessellation (Data Management) tool, but it appears there is no way to specify the point lat/long as the center; it just uses the SHP--made from CSV--input extent, so the squares are not centered on the points. Regardless, I fear this tool is too inefficient for 1,000,000+ points.

Considering the massive size of the area/dataset, what tool(s) could I try in ArcGIS (arcpy) or GDAL (via Python)? I have ArcMap 10.8.1 with an Advanced level license and would use ArcPy. I am a novice at GDAL.

How to create a squared buffer around a point with Python GDAL? looks like a reasonable GDAL approach, but it is not clear to me that the polygons will be topologically-consistent.

I hope this question doesn't get flagged as opinion-based or something else; I am stuck and just need one or two pointers on tool names and how to work with a dataset this large so that I can start some test codes.

  • @BERA over 5 mil; the CSVs are split up and vary from ~500,000 points to about 2 mil
    – a11
    Sep 29, 2022 at 17:16
  • @BERA unfortunately no, irregular convex hull
    – a11
    Sep 29, 2022 at 17:20
  • @BERA (1) I tried Thiessen polygons in ArcGIS, but it fails (not a square) at the dataset perimeter (because area is irregular); (2) will the buffers in second link be topologically consistent along edges?; (3) I assume I can use non-QGIS equivalent tools (arpy or gdal), but will these handle such a huge dataset? Thx for your help btw!
    – a11
    Sep 29, 2022 at 17:25
  • 1
    This sounds more appropriate for Create Fishnet (Data Management) - ArcGIS Pro rather than Generate Tessellation (Data Management) - ArcGIS Pro
    – bixb0012
    Sep 29, 2022 at 17:51

1 Answer 1


There are several ways to do this conversion, I would try the Create Fishnet first as suggested by @bixb0012. You could also try converting them all to points with unique ID's, rasterize by ID with the desired cell size and then convert back to polygons.

But a more immediately issue is that you explicitly stated your coordinates are in lat/long. Latitude changes length as you move away from the equator, so your desire to have exactly 500m by 500m cell sizes is not possible. You need to firstly project your data into a coordinate system where the units are in metres. You can use a website like spatial reference or epsg to identify an appropriate coordinate system

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.