def translate par1, par2, par3=0.0
      if !Error.isnum? par1 or !Error.isnum? par2 or !Error.isnum? par3
        Error.call "A parameter to the translation is not a valid number", Error::ERR_HIGH
      end

      s = Matrix.new [[1.0, 0.0, par1.to_f], [0.0, 1.0, par2.to_f], [0.0, 0.0, 1.0]]
      @matrix_op = s
      cpy = self
      cpy.z = 1.0

      puts "translation de vecteur #{Vector.new(par1,par2,par3).to_s}" if @verbose

      return (s * cpy.to_matrix).to_vector
    end
def translate par1, par2, par3=0.0
      if !Error.isnum? par1 or !Error.isnum? par2 or !Error.isnum? par3
        Error.call "A parameter to the translation is not a valid number", Error::ERR_HIGH
      end

      s = Matrix.new [[1.0, 0.0, par1.to_f], [0.0, 1.0, par2.to_f], [0.0, 0.0, 1.0]]
      @matrix_op = s
      cpy = self
      cpy.z = 1.0

      puts "translation de vecteur #{Vector.new(par1,par2,par3).to_s}" if @verbose

      return (s * cpy.to_matrix).to_vector
    end
== Parameters:
 par1, par2::
     They are the components of the vector to translate.
 par3::
     Optional component (z)
 see +::