Els vectors són elements amb diverses components però que són tractats com a vectors des d'un punt de vista matemàtic.
Exemple de vector de dues components:
... size = Vector2(game.width, game.height); ...
Podem obtenir fàcilment el seu mòdul:
... Vector2 vect = Vector2(4, 3); print(vect.normalize()); // Escriurà 5.0 ...
En alguns casos en els quals un mètode ja preveu fer servir vectors, podrem fer-los servir directament. Però
en molts altres cal instal·lar la biblioteca vector_math i importar-la. Per un costat, cal anar al fitxer
pubspec.yaml per dir-li que volem fer servir vector_math. Cal posar-ho a dependencies, indicant quina és
la versió que volem. En la major part dels casos és suficient amb posar any, per indicar
que ens serveix qualsevol. Un cop afegit, cal picar al botó per baixar el paquet
(
). Per un altre costat, cal importar el paquet
vector_math.dart; ja que no ho fa de manera automàtica.
dependencies:
flutter:
sdk: flutter
flame: ^1.28.1
flutter_animate: ^4.5.2
google_fonts: ^8.0.2
vector_math: any
... import 'package:vector_math/vector_math.dart';
Els vectors tenen definides operacions pròpies. Per exemple, la suma o la multiplicació per un nombre enter:
... position += velocity * dt; ...
Podem normalitzar el vector, és a dir obtenir un vector amb modul unitari però de la mateixa direcció.
... Vector2 vect = Vector2(4, 3); print(vect.normalized()); // Escriurà [0.8,0.6] (amb més decimals) ...
I podem escalar el vector, o sigui obtenir-ne un de la mateixa direcció però multiplicant el mòdul pel valor indicat.
... Vector2 vect = Vector2(4, 3); print(vect.normalized()..scale(10.0)); // Escriurà [8.0,6.0] ...

Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.