1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
% class definition
% ------------------------------------------------------------------------------------------------------------------------
% vehicule: implementation et interface de la classe vehicule
% ------------------------------------------------------------------------------------------------------------------------
classdef vehicule
% définition des propriétés
% ---------------------------------------------------------------------------------------------------------------------
properties (SetAccess = public, GetAccess = public)
posi = []; % position du vehicule sur le troncon
vitesse = []; % vitesse instantannée du véhicule
acceleration = []; % accélération du véhicule
deceleration = []; % décélération du vehicule
Hentree = 0; % heure d'entrée du véhicule
leader = {}; % le leader du véhicule en question
suiveur = {};% le suiveur du véhicule en question
voieActuelle = {}; % voie actuelle sur laquelle le vehicule circule actuellement
orig_actuel = {}; % origine sur laquelle le vehicule circule actuellement
tronc_actuel = {}; % troncon sur lequel le vehicule circule actuellement
dest_actuel = {}; % destination sur laquelle le vehicule circule actuellement
trajet = []; % position du vehicule sur le troncon
end
% les méthodes publiques de la classe
% ---------------------------------------------------------------------------------------------------------------------
methods
% Constructeurs
% -------------------------------------------------------------------------------------------------------------------------------------------------
function vehicule = node(posi, vitesse, acceleration, deceleration, Hentree, leader, suiveur, voieActuelle, orig_actuel, tronc_actuel, dest_actuel, trajet)
vehicule.posi = posi;
vehicule.vitesse = vitesse;
vehicule.acceleration = acceleration;
vehicule.deceleration = deceleration;
vehicule.Hentree = Hentree;
vehicule.leader = leader;
vehicule.suiveur = suiveur;
vehicule.voieActuelle = voieActuelle;
vehicule.orig_actuel = orig_actuel.Origine;
vehicule.tronc_actuel = tronc_actuel.Troncon;
vehicule.dest_actuel = dest_actuel.Destination;
vehicule.trajet = trajet;
end
% les méthodes "get" d'accès aux propriétés
% ---------------------------------------------------------------------------------------------------------------------
function posi = GetPosition(vehicule)
posi = vehicule.posi;
end
function vitesse = GetVitesse(vehicule)
vitesse = vehicule.vitesse;
end
function acceleration = GetAcceleration(vehicule)
acceleration = vehicule.acceleration;
end
function deceleration = GetDeceleration(vehicule)
deceleration = vehicule.deceleration;
end
function Hentree = GetHeureEnt(vehicule)
Hentree = vehicule.Hentree;
end
function leader = GetLeader(vehicule)
leader = vehicule.leader;
end
function suiveur = GetSuiveur(vehicule)
suiveur = vehicule.suiveur;
end
function voieActuelle = GetVoieActuelle(vehicule)
voieActuelle = vehicule.voieActuelle;
end
function orig_actuel = GetOrigineActuelle(vehicule)
orig_actuel = vehicule.orig_actuel;
end
function tronc_actuel = GetTronconActuel(vehicule)
tronc_actuel = vehicule.tronc_actuel;
end
function dest_actuel = GetDestinationActuelle(vehicule)
dest_actuel = vehicule.dest_actuel;
end
% les méthodes "set" d'accès aux propriétés
% ---------------------------------------------------------------------------------------------------------------------
function vehicule = SetPosition(vehicule, x)
vehicule.posi = x;
end
function vehicule = SetVitesse(vehicule, v)
vehicule.vitesse = v;
end
function vehicule = SetAcceleration(vehicule, acc)
vehicule.acceleration = acc;
end
function vehicule = SetDeceleration(vehicule, dec)
vehicule.deceleration = dec;
end
function vehicule = SetHeureEnt(vehicule, t)
vehicule.Hentree = t;
end
function vehicule = SetLeader(vehicule, Lead)
vehicule.leader = Lead;
end
function vehicule = SetSuiveur(vehicule, Suiv)
vehicule.suiveur = Suiv;
end
function vehicule = SetVoieActuelle(vehicule, VoieAct)
vehicule.voieActuelle = VoieAct;
end
function vehicule = SetOrigineActuelle(vehicule, OA)
vehicule.orig_actuel = OA;
end
function vehicule = SetTronconActuel(vehicule, TA)
vehicule.tronc_actuel = TA;
end
function vehicule = SetDestinationActuelle(vehicule, DA)
vehicule.dest_actuel = DA;
end
end % end of public methods
end % end of class definition |
Partager