Перейти к содержанию
Fire Monkey от А до Я

Martifan

Пользователи
  • Постов

    396
  • Зарегистрирован

  • Посещение

  • Победитель дней

    16

Сообщения, опубликованные Martifan

  1. Ну и обломали с ожидаемой поддержкой Intel на Android :( А парк таких аппаратов растет с каждым годом все больше и больше.

    Официально может и не объявляли но у меня на интеловском процессоре все работает нормально у меня даже видео есть показательны и доказательны

  2. Боюсь развить холивар... Но насколько я слышал - не планируется. Мотивация (озвучивалось в слух на вебинаре) больно мало платформ десктопных на линухе. Хотя я лично с этим не согласен. Мне приходится вести проекты параллельно в Лазаре и в дельфях. Не говоря уж о развитии десктопных линухов. Применении их в ряде стран нарочито. И написание серверных вещей - тоже б вполне радовало...

    а что мешает запускать все через Wine все под него работает просто замечательна сам лично пробовал

  3.  

    спасибо конечно но более понятном языке нету ничего?

    Там же на PHP, вроде популярный язык сейчас.

    Также надо учесть, что в варианте Zuby Земля представляется сферой, поэтому в вычислении расстояния погрешность будет выше.

     

    я разобрался и там тоже по сфера считает вот пример:

    procedure calcDistance(StartLat, StartLon, EndLat, EndLon:real; var dist,bearing:real);
    var D2R,R2D,a,e2:real;
        fdLambda,fdPhi,fPhimean,fTemp,fRho,fNu,fz,fAlpha,fR:real;
    begin
      dist:=0;
      bearing:=0;
        if ((StartLat = 0) or (StartLon = 0) or (EndLat = 0) or (EndLon = 0)) then exit;
        if ( (abs(StartLon - EndLon) <= 0.0000014) and (abs(StartLat - EndLat) <= 0.0000008)) then exit;
        D2R := 0.01745329251994330; // Pi/180
        R2D := 57.29577951308230000; // 180/Pi
        a := 6378137.0;
        e2 := 0.00673949674233346;
        fdLambda := (StartLon - EndLon) * D2R;
        fdPhi := (StartLat - EndLat) * D2R;
        fPhimean := (StartLat + EndLat) / 2.0 * D2R;
        fTemp := 1 - e2 * Power( sin(fPhimean), 2);
        fRho := a * (1 - e2) / Power(fTemp, 1.5);
        fNu := a / sqrt(1 - e2 * sin(fPhimean) * sin(fPhimean) );
        fz := 2 * ArcSin(sqrt (
            Power(sin( fdPhi / 2.0), 2 ) + cos( EndLat * D2R )
            * cos( StartLat * D2R ) * Power(sin(fdLambda / 2.0), 2)
        ) );
        fAlpha := ArcSin(cos( EndLat * D2R ) * sin(fdLambda) / sin(fz) );
        fR := fRho * fNu / (fRho * Power(sin(fAlpha), 2) + fNu * Power(cos(fAlpha), 2));
        dist:=fz * fR;
    
        if (dist <= 0.999) then exit;
        Bearing := abs(fAlpha * R2D);
    
      if ((StartLat <= EndLat) and (StartLon > EndLon)) then
      begin
        Bearing := 360 - Bearing;
      end  else
      begin
        if ((StartLat > EndLat) and (StartLon >= EndLon)) then
        begin
            Bearing := 180 + Bearing;
        end
        else
        begin
          if ((StartLat > EndLat) and (StartLon < EndLon))  then
            begin
              Bearing := 180 - Bearing;
            end
        end;
      end;
    end;
    
×
×
  • Создать...