#include <Phase3_NetworkSplitter.h>
|
| static std::vector< double > | collectCutParams (const PipelineContext &ctx, size_t globalIdx, double segLen, double epsilon) |
| | Collecte, trie et dédoublonne les paramètres de découpe d'un segment.
|
| |
| static CoordinateXY | interpolateUTM (const CoordinateXY &A, const CoordinateXY &B, double t) |
| | Interpolation linéaire d'un point UTM sur un segment.
|
| |
| static CoordinateLatLon | interpolateWGS84 (const CoordinateLatLon &A, const CoordinateLatLon &B, double t) |
| | Interpolation linéaire d'un point WGS84 sur un segment.
|
| |
| static void | subdivideLong (const CoordinateXY &A, const CoordinateLatLon &Ageo, const CoordinateXY &B, const CoordinateLatLon &Bgeo, double maxLen, size_t parentIdx, std::vector< AtomicSegment > &out) |
| | Subdivise un sous-segment si sa longueur dépasse maxLen.
|
| |
◆ Phase3_NetworkSplitter()
| Phase3_NetworkSplitter::Phase3_NetworkSplitter |
( |
| ) |
|
|
delete |
◆ collectCutParams()
| std::vector< double > Phase3_NetworkSplitter::collectCutParams |
( |
const PipelineContext & |
ctx, |
|
|
size_t |
globalIdx, |
|
|
double |
segLen, |
|
|
double |
epsilon |
|
) |
| |
|
staticprivate |
Collecte, trie et dédoublonne les paramètres de découpe d'un segment.
Récupère les t depuis ctx.intersections pour le segment global globalIdx, ajoute les bornes 0.0 et 1.0, trie, dédoublonne, et filtre les micro-gaps.
- Paramètres
-
| ctx | Contexte pipeline. |
| globalIdx | Index global du segment. |
| segLen | Longueur du segment en mètres UTM. |
| epsilon | Tolérance pour le filtrage des micro-segments. |
- Renvoie
- Vecteur trié de paramètres t ∈ [0,1], sans doublons, sans micro-gaps.
◆ interpolateUTM()
Interpolation linéaire d'un point UTM sur un segment.
- Paramètres
-
| A | Premier point UTM. |
| B | Second point UTM. |
| t | Paramètre ∈ [0,1]. |
- Renvoie
- Point UTM interpolé.
◆ interpolateWGS84()
Interpolation linéaire d'un point WGS84 sur un segment.
Approximation linéaire valable pour des segments < 10 km.
- Paramètres
-
| A | Premier point WGS84. |
| B | Second point WGS84. |
| t | Paramètre ∈ [0,1]. |
- Renvoie
- Point WGS84 interpolé.
◆ run()
Exécute la phase 3.
Découpe les segments de ctx.rawNetwork aux intersections de ctx.intersections et aux longueurs max, puis écrit le résultat dans ctx.splitNetwork. Libère ctx.rawNetwork et ctx.intersections en fin d'exécution.
- Paramètres
-
| ctx | Contexte pipeline. Lit rawNetwork + intersections, écrit splitNetwork. Libère rawNetwork + intersections. |
| config | Configuration — utilise maxSegmentLength et intersectionEpsilon. |
| logger | Référence au logger GeoParser. |
◆ subdivideLong()
Subdivise un sous-segment si sa longueur dépasse maxLen.
Produit ⌈length / maxLen⌉ portions de longueur égale et les appende à out.
- Paramètres
-
| A | Extrémité A UTM. |
| Ageo | Extrémité A WGS84. |
| B | Extrémité B UTM. |
| Bgeo | Extrémité B WGS84. |
| maxLen | Longueur maximale autorisée (mètres UTM). |
| parentIdx | Indice de la polyligne parente. |
| out | Vecteur de sortie — les portions sont appendées. |
La documentation de cette classe a été générée à partir des fichiers suivants :