meta data for this page
  •  

Moving to TooN2

This page is in Finnish.

Tärkeimmät muutokset syntaksissa:

  • vektorien ja matriisien initialisointi
    • make_Vector poistunut
      • Uusi syntaksi TooN::Vector<2> v = TooN::makeVector(1.,2.);
    • Matriisien initialisointi datasta:
      • TooN::Matrix<2> m = TooN::Data(1.,2.,3.,4.);
      • row-major
    • Toinen tapa initialisoida vektorit ja matriisit
      • TooN::Vector<2> v; TooN::Fill(v) = 1,2;
      • TooN::Matrix<2> m; TooN::Fill(m) = 1,2,3,4;
    • Vanha vektorien initialisointi v = 1,2; ei toimi, kts. syntaksi yltä (Fill)
    • initialisointi omasta datasta (double-array) kopioimatta
      • double d[]={1,2}; TooN::Vector<2,double,TooN::Reference> v1(d);
      • vastaava löytyy myös matriiseille, kts. dokumentaatio
      • käytetty mm. Rectifier::validateCorners()-funktiossa: TooN::Matrix<3,4,double,TooN::Reference::RowMajor> oCorn(iv);
      • löytyy myös wrapVector ja wrapMatrix-funktiot, jotka tekevät saman
  • Zeros, Identity ja Ones syntaksi muuttunut
    • Zero(v) ei enää toimi, uusi syntaksi
      • joko TooN::Vector<3> v(TooN::Zeros);
      • tai v = TooN::Zeros;
    • Identity:n käyttö muuttuu kuten Zeros yllä
      • TooN::Matrix<3> m(TooN::Identity);
      • m = TooN::Identity;
      • m+=2.*TooN::Identity; toimii myös
    • löytyy myös Ones, toimii kuten Identity
      • esim. m+=2.*Ones; lisää 2 kaikkiin alkioihin
      • vektorin kaikkien alkioiden asetus samaksi: v=2.*Ones;
  • SO3 ja SE3 valinnainen tarkkuus templaattiparametrina
    • ItLabCPP:ssa käytetään doublea: SO3<double> ja SE3<double>