Modèle syntaxique du TST
Définition 1 (activité) Une activité (a) est une action qui se déroule à une certaine
3.5 Analyse spatio-temporelle
4.2.4 Opérations spatiales
Ce type d’opérations permet à l’utilisateur du type TST d’émettre des requêtes sur l’aspect purement spatial de la trajectoire. Dans ce sens, nous avons adapté certaines sous-catégories d’opérations proposées dans [71], comme celles de projection ou de restriction dans le domaine spatial. Nous avons en plus proposé d’autres opérations répondant aux besoins d’analyses des trajectoires comme les opérations de recherche spatiale, celles de relations spatiales ou comme les relations de similarité spatiale. La spécification des opérations que nous proposons est donnée dans ce qui suit.
Opérations de projection dans le domaine spatial Ce type d’opérations retournent des entités spatiales comme des polylignes, des points ou des listes de points qui représentent la projection spatiale totale ou partielle du TST. À titre d’exemple, nous proposons l’ opération
Itinerary, de signature (III.67), qui retourne un polyligne représentant le chemin spatial par-couru par une trajectoire donnée en argument. Dans la figure III.7, cette opération appliquée à la trajectoire tst retourne le polyligne l. Une autre opération appelée P oints (voir signature
trajec-toire. Dans la figure III.7, ces lieux correspondent aux points p1, p2 et p3. La spécification de ces opérations est donnée dans le tableau III.13.
Opération Signature Description
Itinerary
T ST → P olyline (III.67) Retourne l’itinéraire spa-tial d’un TST
Path_Between
T ST × Activity × Activity → P olyline (III.68) Retourne le chemin spatial
parcouru entre deux activi-tés
Points
T ST → Alist (III.69) Retourne tous les points d’intérêts d’un TST First_Point
T ST → P oint (III.70) Retourne le point spatial de départ du TST
End_Point
T ST → P oint (III.71) Retourne le point spatial de fin du TST
Tableau III.13 – Signature des opérations de projection dans le domaine spatial
Opérations de recherche spatiale Ces opérations prennent en arguments un TST et une entité spatiale (point, polyligne ou région) et retournent une activité, un déplacement ou une liste d’activités ou de déplacements qui vérifient une relation spatiale particulière avec l’entité spatiale en argument. La spécification et l’explication de ces opérations sont données dans le tableauIII.14.
Opération Signature Description
Activities_At_Point T ST × P oint → Alist (III.72) Retourne les activités qui se
sont déroulées à un point donné
FirstActivity_At_Point
T ST × P oint → Activity (III.73)
Retourne la première acti-vité qui a eu lieu à un point donné
LastActivity_At_Point
T ST × P oint → Activity (III.74)
Retourne la dernière acti-vité qui a eu lieu à un point donné
Trips_At_Point T ST × P oint → Alist (III.75) Retourne les déplacements qui sont passés par un point donné
FirstTrip_At_Point T ST × P oint → T rip (III.76) Retourne le premier
dépla-cement du TST qui est passé par un point donné
LastTrip_At_Point T ST × P oint → T rip (III.77) Retourne le dernier
déplace-ment du TST qui a est passé par un point donné
Activities_At_Polyline T ST × P olyline → Alist (III.78) Retourne les activités qui
ont eu lieu à une ligne don-née
FirstActivity_At_Polyline
T ST × P olyline → Activity (III.79)
Retourne la première acti-vité qui a eu lieu à une ligne donnée
LastActivity_At_Polyline
T ST × P olyline → Activity (III.80)
Retourne la dernière acti-vité qui a eu lieu à une ligne donnée
Trips_At_Polyline T ST × P olyline → Alist (III.81) Retourne les déplacements
qui se sont déroulés selon une ligne donnée
FirstTrip_At_Polyline T ST × P olyline → T rip (III.82) Retourne le premier
dépla-cement qui s’est déroulé se-lon une ligne donnée
LastTrip_At_Polyline T ST × P olyline → T rip (III.83) Retourne le dernier
déplace-ment qui s’est déroulé selon une ligne donnée
Activities_At_Region T ST × Region → Alist (III.84) Retourne les activités qui se
sont déroulées à l’intérieur d’une région donnée
FirstActivity_At_Region
T ST × Region → Activity (III.85)
Retourne la première acti-vité qui s’est déroulée à l’in-térieur d’une région donnée
LastActivity_At_Region
T ST × Region → Activity (III.86)
Retourne la dernière acti-vité qui s’est déroulée à l’in-térieur d’une région donnée
Trips_At_Region T ST × Region → Alist (III.87) Retourne les déplacements
qui se sont déroulés à une ré-gion donnée
FirstTrip_At_Region T ST × Region → T rip (III.88) Retourne le premier
dépla-cement qui s’est déroulé à une région donnée
LastTrip_At_Region T ST × Region → T rip (III.89) Retourne le dernier
déplace-ment qui s’est déroulé à une région donnée
Tableau III.14 – Signature des opérations de recherche spatiale
Opérations de relations spatiales Les relations spatiales dites topologiques sont définies à partir de primitives géométriques dans un espace à deux dimensions [1,21]. On retrouve ainsi, par exemple, des relations topologiques entre des couples Polyline/Point, Polyline/Polyline,
Polyline /Polygon. Sur la base de ces relations, nous avons spécifié un ensemble de
rela-tions de type : TST/Point (par analogie aux relarela-tions Polyline/Point), TST/Polyline
(Po-lyline/Polyline), TST/Polygon (Polyline/Polygon) et TST/TST (Polyline/Polyline). La
spéci-fication de ces opérations est donnée dans le tableauIII.15.
Opération Signature Description
TST/Point TST_Contains_Point
T ST × P oint → Boolean (III.90)
Teste si un TST contient spatialement un point TST_EndsBy_Point
T ST × P oint → Boolean (III.91)
Teste si un TST se ter-mine spatialement par un point
TST_BeginsBy_Point
T ST × P oint → Boolean (III.92)
Teste si un TST com-mence spatialement par un point
TST_Equals_Polyline
T ST × P olyline → Boolean (III.93)
Teste si un TST est spa-tialement égal à une poly-ligne
TST_Cross_Polyline
T ST × P olyline → Boolean (III.94)
Teste si un TST croise
spatialement une
poly-ligne TST_Disjoint_Polyline
T ST × P olyline → Boolean (III.95)
Teste si un TST et une polyligne sont spatiale-ment disjoints
TST_Contains_Polyline
T ST × P olyline → Boolean (III.96)
Teste si un TST contient
spatialement une
poly-ligne TST/Polygon
TST_Inside_Region
T ST × P olygon → Boolean (III.97)
Teste si un TST est
spatialement à l’intérieur d’un polygone
TST_Touch_ Region
T ST × P olygon → Boolean (III.98)
Teste si un TST touche spatialement la frontière d’un polygone
TST_Cross_Region
T ST × P olygon → Boolean (III.99)
Teste si un TST croise spatialement une région TST_Disjoint_Region
T ST × P olygon → Boolean (III.100)
Teste si un TST et un po-lygone sont spatialement disjoints
TST/TST