Code Duplication    Length = 56-59 lines in 2 locations

htdocs/lib2/logic/coordinate.class.php 1 location

@@ 478-533 (lines=56) @@
475
    }
476
477
    // return string
478
    public function getRD()
479
    {
480
        // X0,Y0             Base RD coordinates Amersfoort
481
        $rdx_base = 155000;
482
        $rdy_base = 463000;
483
        // ?0, ?0            Same base, but as wgs84 coordinates
484
        $lat_base = 52.15517440;
485
        $lon_base = 5.38720621;
486
487
        for ($i = 0; $i <= 6; $i++) {
488
            for ($j = 0; $j <= 5; $j++) {
489
                $rpq[$i][$j] = 0;
490
                $spq[$i][$j] = 0;
491
            }
492
        }
493
        //#coefficients
494
        $rpq[0][1] = 190094.945;
495
        $rpq[1][1] = - 11832.228;
496
        $rpq[2][1] = - 114.221;
497
        $rpq[0][3] = - 32.391;
498
        $rpq[1][0] = - 0.705;
499
        $rpq[3][1] = - 2.340;
500
        $rpq[1][3] = - 0.608;
501
        $rpq[0][2] = - 0.008;
502
        $rpq[2][3] = 0.148;
503
504
        $spq[1][0] = 309056.544;
505
        $spq[0][2] = 3638.893;
506
        $spq[2][0] = 73.077;
507
        $spq[1][2] = - 157.984;
508
        $spq[3][0] = 59.788;
509
        $spq[0][1] = 0.433;
510
        $spq[2][2] = - 6.439;
511
        $spq[1][1] = - 0.032;
512
        $spq[0][4] = 0.092;
513
        $spq[1][4] = - 0.054;
514
515
        // Calculate X, Y of origin
516
        $latDiff = $this->nLat - $lat_base;
517
        $dlat = 0.36 * $latDiff;
518
        $lonDiff = $this->nLon - $lon_base;
519
        $dlon = 0.36 * $lonDiff;
520
        $xOrigin = 0;
521
        $yOrigin = 0;
522
523
        for ($q = 0; $q <= 5; $q++) {
524
            for ($p = 0; $p <= 6; $p++) {
525
                $xOrigin = $xOrigin + ($rpq[$p][$q] * ((pow($dlat, $p)) * (pow($dlon, $q))));
526
                $yOrigin = $yOrigin + ($spq[$p][$q] * ((pow($dlat, $p)) * (pow($dlon, $q))));
527
            }
528
        }
529
        $xOrigin = $xOrigin + $rdx_base;
530
        $yOrigin = $yOrigin + $rdy_base;
531
532
        return 'X ' . floor($xOrigin) . ' Y ' . floor($yOrigin);
533
    }
534
535
    // returns string
536
    public function getQTH()

htdocs_symfony/src/Repository/CoordinatesRepository.php 1 location

@@ 548-606 (lines=59) @@
545
     *
546
     * @return string
547
     */
548
    public function getRD()
549
    : string
550
    {
551
        $rpq = array();
552
553
        // X0,Y0             Base RD coordinates Amersfoort
554
        $rdx_base = 155000;
555
        $rdy_base = 463000;
556
        // ?0, ?0            Same base, but as wgs84 coordinates
557
        $lat_base = 52.15517440;
558
        $lon_base = 5.38720621;
559
560
        for ($i = 0; $i <= 6; $i ++) {
561
            for ($j = 0; $j <= 5; $j ++) {
562
                $rpq[$i][$j] = 0;
563
                $spq[$i][$j] = 0;
564
            }
565
        }
566
        //#coefficients
567
        $rpq[0][1] = 190094.945;
568
        $rpq[1][1] = - 11832.228;
569
        $rpq[2][1] = - 114.221;
570
        $rpq[0][3] = - 32.391;
571
        $rpq[1][0] = - 0.705;
572
        $rpq[3][1] = - 2.340;
573
        $rpq[1][3] = - 0.608;
574
        $rpq[0][2] = - 0.008;
575
        $rpq[2][3] = 0.148;
576
577
        $spq[1][0] = 309056.544;
578
        $spq[0][2] = 3638.893;
579
        $spq[2][0] = 73.077;
580
        $spq[1][2] = - 157.984;
581
        $spq[3][0] = 59.788;
582
        $spq[0][1] = 0.433;
583
        $spq[2][2] = - 6.439;
584
        $spq[1][1] = - 0.032;
585
        $spq[0][4] = 0.092;
586
        $spq[1][4] = - 0.054;
587
588
        // Calculate X, Y of origin
589
        $latDiff = $this->nLat - $lat_base;
590
        $dlat = 0.36 * $latDiff;
591
        $lonDiff = $this->nLon - $lon_base;
592
        $dlon = 0.36 * $lonDiff;
593
        $xOrigin = 0;
594
        $yOrigin = 0;
595
596
        for ($q = 0; $q <= 5; $q ++) {
597
            for ($p = 0; $p <= 6; $p ++) {
598
                $xOrigin = $xOrigin + ($rpq[$p][$q] * ((pow($dlat, $p)) * (pow($dlon, $q))));
599
                $yOrigin = $yOrigin + ($spq[$p][$q] * ((pow($dlat, $p)) * (pow($dlon, $q))));
600
            }
601
        }
602
        $xOrigin = $xOrigin + $rdx_base;
603
        $yOrigin = $yOrigin + $rdy_base;
604
605
        return 'X ' . floor($xOrigin) . ' Y ' . floor($yOrigin);
606
    }
607
608
    /**
609
     * QTH Locator