Exemple #1
0
 /**
  * Generate list of Raja yogas.
  * 
  * @return \Iterator
  * @see Maharishi Parashara. Brihat Parashara Hora Shastra. Chapter 41, Verse 28.
  */
 public function generateYoga()
 {
     $Analysis = new Analysis($this->Data);
     $bhavaKendra = Bhava::$bhavaKendra;
     array_shift($bhavaKendra);
     $kendraRulers = $Analysis->getBhavaRulers($bhavaKendra);
     $trikonaRulers = $Analysis->getBhavaRulers(Bhava::$bhavaTrikona);
     foreach ($kendraRulers as $kendraRuler) {
         foreach ($trikonaRulers as $trikonaRuler) {
             $KendraRuler = Graha::getInstance($kendraRuler);
             $KendraRuler->setEnvironment($this->Data);
             $TrikonaRuler = Graha::getInstance($trikonaRuler);
             $TrikonaRuler->setEnvironment($this->Data);
             // Parivarthana
             if ($this->hasParivarthana($kendraRuler, $trikonaRuler)) {
                 (yield ['kendra' => $kendraRuler, 'trikona' => $trikonaRuler, 'interplay' => Yoga::INTERPLAY_PARIVARTHANA]);
             }
             // Conjunct
             $kendraRulerIsConjuncted = $KendraRuler->isConjuncted();
             if (isset($kendraRulerIsConjuncted[$trikonaRuler])) {
                 (yield ['kendra' => $kendraRuler, 'trikona' => $trikonaRuler, 'interplay' => Yoga::INTERPLAY_CONJUNCT]);
             }
             // Aspect
             $kendraRulerIsAspected = $KendraRuler->isAspectedByGraha();
             $trikonaRulerIsAspected = $TrikonaRuler->isAspectedByGraha();
             if ($kendraRulerIsAspected[$trikonaRuler] == 1 && $trikonaRulerIsAspected[$kendraRuler] == 1) {
                 (yield ['kendra' => $kendraRuler, 'trikona' => $trikonaRuler, 'interplay' => Yoga::INTERPLAY_ASPECT]);
             }
         }
     }
 }
Exemple #2
0
 /**
  * Constructor
  * 
  * @param \Jyotish\Base\Data $Data
  */
 public function __construct(\Jyotish\Base\Data $Data)
 {
     parent::__construct($Data);
     $this->bala['total'] = [];
     foreach ($this->balaVarga as $varga) {
         $balaVarga = 'bala' . ucfirst($varga);
         $this->bala[$varga] = $this->{$balaVarga}();
         $this->bala['total'] = Math::arraySum($this->bala[$varga], $this->bala['total']);
     }
 }