code: function ZoomAndPan(arg,opt) {
          /**
           * Gestion du zoom par la molette de la souris
           */
          this.mouseWheelZoom = new MouseWheelZoom(this);
          /**
           * Gestion du zoom par tracé d'un cadre
           */
          this.marqueeZoom = new MarqueeZoom(this);
          /**
           * Gestion de la taille du canvas SVG
           */
          this.resizable = new ZapResizable(this);
          /**
           * déplacement dans le canvas avec la souris
           */
          this.mousePan = new MousePan(this);
          /**
           * gestion du cookie pour mémoriser zoom et position
           */
          this.cookie = new Cookie(this);
          /**
           * Element g permettant de gérer le zoom
           */
          this.innerFrame = new JSYG('<g>')[0];
          /**
           * Element div permettant de gérer les ascenceurs (si overflow!="hidden")
           */
          this.outerFrame = new JSYG('<div>')[0];
  	
          if (arg) this.setNode(arg);
          if (opt) this.enable(opt);
      }
docs: <strong>nécessite le module ZoomAndPan</strong><br/><br/>
  Gestion du zoom et panoramique d'un canvas SVG.<br/><br/>
  @param arg argument JSYG référence au canvas SVG
  @param opt optionnel, objet définissant les propriétés. S'il est précisé, le module sera implicitement activé. Si les modules ("mouseWheelZoom",
  "marqueeZoom","resizable","mousePan") sont définis à true, il seront activés avec les options par défaut.
  @example <pre>var zap = new ZoomAndPan("svg");
  zap.overflow = "auto";
  zap.enable();
  zap.mouseWheelZoom.key = "ctrl";
  zap.mouseWheelZoom.enable();
  zap.mousePan.enable();
  
  //Equivalent à
  new ZoomAndPan("svg",{
  overflow:"auto",
  mouseWheelZoom:{key:"ctrl"},
  mousePan:true
  });
  </pre>
  @returns {ZoomAndPan}