Я удалил часть неверного ответа.
Функция project() не может выполнять преобразования данных, поэтому у вас может быть проблема, и я думаю, что у вас неправильно.
Проблема в том, что вы можете использовать только project() из/в лонглат на WGS84, поэтому ваше первое использование проекта неверно. Если я правильно понял, у вас есть координаты в AGD66, поэтому вы должны сначала назначить эту проекцию, а затем вы можете преобразовать. Вы не можете выполнять преобразования данных с помощью project(), но spTransform() может.
Я думаю, вам нужно это:
pts = read.table(text = "lon lat
147.1428 -43.49083", header = TRUE)
## assign original coordinate system
pts66 = SpatialPoints(cbind(pts$lon,pts$lat), CRS("+init=epsg:4202"))
## Then to transform it to WGS84
pts84 = spTransform(pts66, CRS("+init=epsg:3033"))
pts66
SpatialPoints:
coords.x1 coords.x2
[1,] 147.1428 -43.49083
Coordinate Reference System (CRS) arguments: +init=epsg:4202 +proj=longlat +ellps=aust_SA
+no_defs
pts84
SpatialPoints:
coords.x1 coords.x2
[1,] 11126605 2971806
Coordinate Reference System (CRS) arguments: +init=epsg:3033 +proj=lcc +lat_1=-68.5 +lat_2=-74.5
+lat_0=-50 +lon_0=70 +x_0=6000000 +y_0=6000000 +ellps=WGS84 +datum=WGS84 +units=m +no_defs
+towgs84=0,0,0
Это означает, что pts66 не изменяются по сравнению с их первоначальными значениями, но у них есть правильные метаданные для следующего шага, который преобразует их в вашу цель (кстати, это конформная коническая форма Ламберта). Возможно, вам потребуется немного больше исследований, чтобы выяснить, что требуется.
CRS("+init=epsg:4202")
CRS arguments:
+init=epsg:4202 +proj=longlat +ellps=aust_SA +no_defs
CRS("+init=epsg:3033")
CRS arguments:
+init=epsg:3033 +proj=lcc +lat_1=-68.5 +lat_2=-74.5 +lat_0=-50
+lon_0=70 +x_0=6000000 +y_0=6000000 +ellps=WGS84 +datum=WGS84 +units=m
+no_defs +towgs84=0,0,0
Ваш исходный проект() неправильно пытался преобразовать лонглат на WGS84 в лонглат на AGD66, но эта функция не может этого сделать, поэтому это просто добавило путаницы в смесь. Датум не является проекцией, это важная часть определения проекции, и в этом смысле «лонглат на AGD66» является проекцией так же, как и «Конформная коническая Ламберта на WGS84».
02.04.2012