Source for file MultiEllipseIterator.class.php

Documentation is available at MultiEllipseIterator.class.php

  1. <?php
  2. /**
  3.  * @author Takács Ákos (Rimelek), programmer [at] rimelek [dot] hu
  4.  * @copyright Copyright (C) 2009, Takács Ákos
  5.  * @package REPHPGraph
  6.  */
  7.  
  8. /**
  9.  * Ellipszis iterátor importálása
  10.  */
  11. require_once dirname(__FILE__).'/EllipseIterator.class.php';
  12.  
  13. /**
  14.  * MultiEllipseIterator
  15.  * 
  16.  * Egyszerre több ellipszis koordinátáit képes generálni
  17.  * különböző középpont koordinátákkal, szélességgel és magassággal.
  18.  *
  19.  * @author Takács Ákos (Rimelek), programmer [at] rimelek [dot] hu
  20.  * @copyright Copyright (C) 2009, Takács Ákos
  21.  * @version 1.0
  22.  * @package REPHPGraph
  23.  */
  24. {
  25.     
  26.     /**
  27.      * Iterátor centrumainak X koordinátái
  28.      * 
  29.      * @var array 
  30.      */
  31.     protected $cx = array();
  32.     /**
  33.      * Iterátor centrumainak Y koordinátái
  34.      * 
  35.      * @var array 
  36.      */
  37.     protected $cy = array();
  38.     /**
  39.      * Elipszisek magassága
  40.      * @var array 
  41.      */
  42.     protected $height = array();
  43.     /**
  44.      * Elipszisek szélessége
  45.      * @var array 
  46.      */
  47.     protected $width = array();
  48.  
  49.     
  50.     /**
  51.     * MultiEllipseIterator konstruktor
  52.     * 
  53.     * Csak értékeket állít be, amit majd az iterációkor használ
  54.     * 
  55.     * @param array $cx Elipszis centrumainak X koordinátái
  56.     * @param array $cy Elipszis centrumainak Y koordinátái
  57.     * @param array $width Elipszisek szélessége
  58.     * @param array $height Elipszisek magassága
  59.     */
  60.     function __construct($cx,$cy,$width,$height)
  61.     {      ;
  62.         parent::__construct($cx,$cy,$width,$height);
  63.     }
  64.     
  65.     /**
  66.     * Tulajdonságok értékeinek lekérdezésekor lefutó metódus
  67.     * 
  68.     * @param string $var 
  69.     * @return mixed 
  70.     */
  71.     function __get($var
  72.     {    
  73.         return parent::__get($var);
  74.     }
  75.     
  76.     /**
  77.     * Tulajdonságok értékeinek beállításakor lefutó metódus
  78.     * 
  79.     * @param string $var 
  80.     * @param mixed $value 
  81.     */
  82.     function __set($var,$value)
  83.     {
  84.         parent::__set($var,$value);
  85.     }
  86.     /**
  87.      * Aktuális iterált értékek
  88.      *
  89.      * @return array 
  90.      */
  91.     public function current(
  92.     
  93.         $x=array();
  94.         $y=array();
  95.         foreach ($this->cx as $key => $value
  96.             $x[$key$this->cx[$key(cos(deg2rad($this->_i)) ceil($this->width[$key2));
  97.             $y[$key$this->cy[$key(sin(deg2rad($this->_i)) ceil($this->height[$key2))
  98.         }
  99.         return array('x'=>$x,'y'=>$y);
  100.     }
  101.     
  102.     /**
  103.      * Konkrét elem visszaadása index alapján
  104.      * 
  105.      * @see EllipseIterator::offsetGet()
  106.      * 
  107.      * @param mixed $offset 
  108.      * @return array 
  109.      */
  110.     public function offsetGet($offset
  111.     {
  112.         $x='';
  113.         $y='';
  114.         if ($this->offsetExists($offset)) {
  115.             $i $this->start+$offset*$this->add;
  116.             foreach ($this->cx as $key => $value
  117.                 $x[$key$this->cx[$key(cos(deg2rad($i)) ceil($this->width[$key2));
  118.                 $y[$key$this->cy[$key(sin(deg2rad($i)) ceil($this->height[$key2))
  119.             }
  120.         }
  121.         return array('x'=>$x,'y'=>$y);
  122.     }
  123.     
  124. }
  125. ?>

Documentation generated on Tue, 09 Feb 2010 01:17:50 +0100 by phpDocumentor 1.4.1