С чего начать? Использование данных x, y, z для отображения участка здания - PullRequest
0 голосов
/ 04 декабря 2011

Я использовал уровень строителей, чтобы получить координаты x, y, z на участке размером 110 на 150.Они не находятся в одинаково разнесенных строках и столбцах, а расположены случайным образом.

Я нашел много информации о картографировании, и я с нетерпением жду возможности узнать о ГИС.И как использовать множество бесплатных программных утилит.

С чего мне начать?

Теперь данные представлены в формате файла CSV, но я могу это изменить.

Кажется, я хочу получить имеющуюся у меня информацию в "шейп-файл" или в растровом формате.

Я полагаю, что могу посмотреть форматы и сделать это, но, похоже, я не нашелправильная утилита для этой части процесса.

Спасибо, Питер

Ответы [ 2 ]

3 голосов
/ 05 декабря 2011

Вы можете преобразовать ваши координаты в шейп-файл, чтобы отобразить их в QGIS, ArcMAP или аналогичных ГИС-программах.Вам, вероятно, нужен шейп-файл многоугольника.

Один простой способ сделать это с помощью PySAL

>>> import pysal
>>> coords = [(0,0), (10,0), (10,10), (0,10), (0,0)]
>>> pts = map(pysal.cg.Point, coords)
>>> polygon = pysal.cg.Polygon(pts)
>>> shp = pysal.open('myPolygon.shp','w')
>>> shp.write(polygon)
>>> shp.close()

Примечание: в настоящее время pysal не поддерживает (координаты Z), но существует множество похожих библиотек, которые поддерживают.

Также обратите внимание, что первая и последняя точки совпадают, что указывает на замкнутый многоугольник.

Если ваши координаты X, Y, Z являются GPS-координатами, вы сможете легко выровнять свои данные с другими данными ГИС.сообщая ГИС, в какой проекции находятся ваши данные (WGS84, UTM Zone # и т. д.).Если ваши координаты находятся в локальных координатах (не привязаны к сетке, такой как UTM и т. Д.), Вам нужно «привязать» ваши координаты, чтобы выровнять их с другими данными.

Наконец, используя команду ogr2ogr, вы можетеeasilly экспортирует ваши данные из шейп-файла в другие форматы, такие как KML,

ogr2ogr -f KML myPolygon.kml myPolygon.shp
0 голосов
/ 09 января 2012

Вы можете конвертировать файл CSV в любой поддерживаемый формат OGR.Все, что вам нужно, это заголовочный файл для файла CSV.Вот вам пример:

 <ogrvrtdatasource>
 <ogrvrtlayer name="bars">
    <srcdatasource>bars.csv</srcdatasource>
    <geometrytype>wkbPoint</geometrytype>
    <layersrs>EPSG:4326</layersrs>
    <geometryfield encoding="PointFromColumns" x="longitude" y="latitude">
    </geometryfield>
 </ogrvrtlayer>
 </ogrvrtdatasource>

В поле источника данных вы задаете имя файла CSV.В вашем случае у вас есть очки, так что пример в порядке.Поле слоев указывает на проекцию координат.Если у вас есть долгота и широта, это нормально.Геометрические поля должны содержать свойства x и y, которые определяют столбцы в CSV-файле, содержащие координаты.Файл CSV должен иметь первую строку, определяющую имена полей.Сохраните файл с расширением .vrt .

Получив его, используйте программу ogr2ogr, которая есть у вас, если установлен GDAL.Если вы хотите преобразовать файл в Shapefile, просто наберите в консоли:

ogr2ogr -f "ESRI Shapefile" bars.shp bars.vrt

Если ваш вопрос заключается в том, что делать с данными, вы можете проверить служебную программу gdal_grid , который преобразует разбросанные данные (как ваши) в растровые данные.Вы можете использовать CSV с файлом заголовка vrt в качестве входных данных без изменения формата.

...