Simulateur Ferroviaire
Reconstruction et visualisation d'un réseau ferroviaire à partir de données GeoJSON — Win32 / WebView2 / Leaflet
Chargement...
Recherche...
Aucune correspondance
Phase2_GeometricIntersector.h
Aller à la documentation de ce fichier.
1
19#pragma once
20
21#include "PipelineContext.h"
24
26{
27public:
28
40 static void run(PipelineContext& ctx,
41 const ParserConfig& config,
42 Logger& logger);
43
45
46private:
47
58 static double computeCellSize(const PipelineContext& ctx);
59
71 static SpatialGrid buildGrid(const PipelineContext& ctx,
72 double cellSize,
73 Logger& logger);
74
86 static size_t globalSegmentIndex(const PipelineContext& ctx,
87 size_t polyIdx,
88 size_t pointIdx);
89
105 static std::optional<std::pair<double, double>>
106 intersect(const CoordinateXY& A, const CoordinateXY& B,
107 const CoordinateXY& C, const CoordinateXY& D,
108 double epsilon);
109
121 static bool areAdjacent(const SegmentId& s1, const SegmentId& s2);
122};
std::unordered_map< GridCell, std::vector< SegmentId >, GridCellHash > SpatialGrid
Grille spatiale : cellule UTM → liste des segments la traversant.
Definition IntersectionMap.h:96
Système de journalisation à 5 niveaux de trace, un fichier par moteur.
Paramètres de configuration du pipeline GeoParser.
Conteneur central des données inter-phases du pipeline GeoParser.
Coordonnée plane en mètres dans un système métrique (UTM ou similaire).
Definition CoordinateXY.h:23
Journaliseur associé à un moteur nommé.
Definition Logger.h:99
Definition Phase2_GeometricIntersector.h:26
static SpatialGrid buildGrid(const PipelineContext &ctx, double cellSize, Logger &logger)
Construit la grille spatiale depuis le RawNetwork.
Definition Phase2_GeometricIntersector.cpp:149
static double computeCellSize(const PipelineContext &ctx)
Calcule la taille de cellule optimale pour la grille.
Definition Phase2_GeometricIntersector.cpp:118
static std::optional< std::pair< double, double > > intersect(const CoordinateXY &A, const CoordinateXY &B, const CoordinateXY &C, const CoordinateXY &D, double epsilon)
Teste l'intersection entre deux segments UTM.
Definition Phase2_GeometricIntersector.cpp:208
static size_t globalSegmentIndex(const PipelineContext &ctx, size_t polyIdx, size_t pointIdx)
Calcule l'indice global d'un segment dans le réseau.
Definition Phase2_GeometricIntersector.cpp:190
static void run(PipelineContext &ctx, const ParserConfig &config, Logger &logger)
Exécute la phase 2.
Definition Phase2_GeometricIntersector.cpp:18
static bool areAdjacent(const SegmentId &s1, const SegmentId &s2)
Vérifie si deux segments sont adjacents (partagent une extrémité).
Definition Phase2_GeometricIntersector.cpp:246
Configuration complète du pipeline GeoParser — POD sans logique.
Definition ParserConfig.h:16
Conteneur central du pipeline GeoParser.
Definition PipelineContext.h:51
Identifiant unique d'un segment dans le RawNetwork.
Definition IntersectionMap.h:23