На чем может быть построена проекция Миллера?
-
- Активный участник
- Сообщения: 104
- Зарегистрирован: 02 мар 2014, 09:12
- Репутация: 0
На чем может быть построена проекция Миллера?
Здравствуйте!
Пытаюсь разобраться с проекцией Миллера, а конкретно на чем она может быть построена, на эллипсоидах или только на сферах?
Просто смотрю в Бугаевском-1998-Математическая картография, там так же как на вики:
https://ru.wikipedia.org/w/index.php?ti ... 1%80%D0%B0
При пересчете используется только радиус, а не большая и малая полуоси, что наводит на мысль что проекция может быть построена только на сфере.
Так же для макроязыка EASI(http://gis-lab.info/qa/easi3.html), проекция Миллера поддерживается только для сферы.
Объясните пожалуйста я прав или заблуждаюсь?
Пытаюсь разобраться с проекцией Миллера, а конкретно на чем она может быть построена, на эллипсоидах или только на сферах?
Просто смотрю в Бугаевском-1998-Математическая картография, там так же как на вики:
https://ru.wikipedia.org/w/index.php?ti ... 1%80%D0%B0
При пересчете используется только радиус, а не большая и малая полуоси, что наводит на мысль что проекция может быть построена только на сфере.
Так же для макроязыка EASI(http://gis-lab.info/qa/easi3.html), проекция Миллера поддерживается только для сферы.
Объясните пожалуйста я прав или заблуждаюсь?
-
- Гуру
- Сообщения: 5355
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1021
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: На чем может быть построена проекция Миллера?
А зачем тогда здесь
SPHEROID["WGS_1984",6378137,298.257223563]
SPHEROID["WGS_1984",6378137,298.257223563]
-
- Активный участник
- Сообщения: 104
- Зарегистрирован: 02 мар 2014, 09:12
- Репутация: 0
Re: На чем может быть построена проекция Миллера?
Да, тоже видел, но тогда я не понимаю какой радиус стоит в формуле из книги Бугаевского?
- SergeyRyzhkov
- Гуру
- Сообщения: 909
- Зарегистрирован: 02 июл 2014, 19:13
- Репутация: 203
- Ваше звание: GP-экотеррористы
- Откуда: Санкт-Петербург
- Контактная информация:
Re: На чем может быть построена проекция Миллера?
Miller Cylindrical только на сфере.
Приведенное описание http://spatialreference.org/ref/esri/54003/html/ тут ни причем, это просто принятое в WKT описание датума (вернее элипсоида в нем)
Приведенное описание http://spatialreference.org/ref/esri/54003/html/ тут ни причем, это просто принятое в WKT описание датума (вернее элипсоида в нем)
-
- Активный участник
- Сообщения: 104
- Зарегистрирован: 02 мар 2014, 09:12
- Репутация: 0
Re: На чем может быть построена проекция Миллера?
А можно источник где прочитать, мол, Цилиндрическая Миллера строится только на сфере?
- SergeyRyzhkov
- Гуру
- Сообщения: 909
- Зарегистрирован: 02 июл 2014, 19:13
- Репутация: 203
- Ваше звание: GP-экотеррористы
- Откуда: Санкт-Петербург
- Контактная информация:
Re: На чем может быть построена проекция Миллера?
Честно говоря тут строго не подскажу. Я сужу по формуламevgen_sobolev писал(а):А можно источник где прочитать, мол, Цилиндрическая Миллера строится только на сфере?
https://ru.wikipedia.org/wiki/%D0%A6%D0 ... ite_note-1
-
- Активный участник
- Сообщения: 104
- Зарегистрирован: 02 мар 2014, 09:12
- Репутация: 0
Re: На чем может быть построена проекция Миллера?
Я поправил формулу исходя из книги Бугаевского, до этого там не стояли радиусы вообще)
- SergeyRyzhkov
- Гуру
- Сообщения: 909
- Зарегистрирован: 02 июл 2014, 19:13
- Репутация: 203
- Ваше звание: GP-экотеррористы
- Откуда: Санкт-Петербург
- Контактная информация:
Re: На чем может быть построена проекция Миллера?

В proj4
код такой:
Код: Выделить всё
#define PJ_LIB__
# include <projects.h>
PROJ_HEAD(mill, "Miller Cylindrical") "\n\tCyl, Sph";
FORWARD(s_forward); /* spheroid */
xy.x = lp.lam;
xy.y = log(tan(FORTPI + lp.phi * .4)) * 1.25;
return (xy);
}
INVERSE(s_inverse); /* spheroid */
lp.lam = xy.x;
lp.phi = 2.5 * (atan(exp(.8 * xy.y)) - FORTPI);
return (lp);
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(mill) P->[b]es = 0[/b].; P->inv = s_inverse; P->fwd = s_forward; ENDENTRY(P)
Код: Выделить всё
xy.X = lplam;
xy.Y = Math.Log(Math.Tan(ProjectionMath.PiFourth + lpphi * .4)) * 1.25;
return xy;
Код: Выделить всё
exports.forward = function(p) {
var lon = p.x;
var lat = p.y;
/* Forward equations
-----------------*/
var dlon = adjust_lon(lon - this.long0);
var x = this.x0 + this.a * dlon;
var y = this.y0 + this.a * Math.log(Math.tan((Math.PI / 4) + (lat / 2.5))) * 1.25;
p.x = x;
p.y = y;
return p;
};
Код: Выделить всё
public override ICoordinate Project (GeographicCoordinate geographCoordinate)
{
var latRad = MathUtil.DegToRad (geographCoordinate.Lat);
var lonRad = MathUtil.DegToRad (geographCoordinate.Lon);
var dlon = AdjustLon (lonRad - MathUtil.DegToRad (Parameters.CentralMeridian));
var x = Parameters.FalseEasting + Parameters.SemiMajor * dlon;
var y = Parameters.FalseNorthing + Parameters.SemiMajor * Math.Log (Math.Tan ((Math.PI / 4) + (latRad / 2.5))) * 1.25;
return new Coordinate (x, y);
}
-
- Активный участник
- Сообщения: 104
- Зарегистрирован: 02 мар 2014, 09:12
- Репутация: 0
Re: На чем может быть построена проекция Миллера?
Ну и еще в книге: Snyder - 1987 - Map projections--a working manual
говорится что нет эквивалента для эллипсоида
говорится что нет эквивалента для эллипсоида
- SergeyRyzhkov
- Гуру
- Сообщения: 909
- Зарегистрирован: 02 июл 2014, 19:13
- Репутация: 203
- Ваше звание: GP-экотеррористы
- Откуда: Санкт-Петербург
- Контактная информация:
Re: На чем может быть построена проекция Миллера?
Кстати Ваш вопрос, косвенно подтверждает, что нельзя "тупо" верить никому
, кроме первоисточников. 
В англ.версии википедии нет радиуса,
в proj4 как бы вы не старались, а на другом эллипсоиде не получится применить проекцию (так как в коде не используется радиус и используется по умолчанию WGS84), а в некоторых проекциях в proj4 в коде явно прошиты параметры эллипсоидов и никакие изменения параметров не повлияют на расчеты ...


В англ.версии википедии нет радиуса,
в proj4 как бы вы не старались, а на другом эллипсоиде не получится применить проекцию (так как в коде не используется радиус и используется по умолчанию WGS84), а в некоторых проекциях в proj4 в коде явно прошиты параметры эллипсоидов и никакие изменения параметров не повлияют на расчеты ...
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость