Bonsoir, l'algo est assez simple: - saisie des paramètres de décalage D1 et D2, puis de l'équistance E - sélection de la polyligne bord de trottoir - conversion en objet VLA pour pouvoir accéder aux fonctions valx-curve - décalage de la poly bord de trottoir de la distance D1 (valeur négative=> décalage à gauche, valeur positive => décalage à droite) (fonction Offsetcurve) => nouvelle polyligne PL1 - décalage de la poly PL1 de la distance D2 => nouvelle polyligne PL2 - boucle sur les abscisses le long de PL1 - calcul du point à la distance E à partir du début de la poly PL1 => point PT1 (fonction GetPointAtDist) - calcul de la dérivée première (direction de la tangente ) au point PT1 (fonction GetFirstDeriv) - insertion du lampadaire au point PL1 avec rotation = dérivée première (éventuellement ajouter ou retirer PI/2 selon la définition du bloc) - calcul du point temporaire correspondant à la projection de PT1 sur la poly PL2 (fonction GetClosestPointTo) - calcul de l'abscisse de ce point sur la poly PL2 (getDistAtParam) => abscisse PK - pour calculer le V : - calcul du point à PK - D2 sur la poly PL2 (getPointAtDist) => PT3 - calcul du point à PK + D2 sur la poly PL2 (getPointAtDist) => PT4 - insertion des points PT3 PT1 PT4 dans la poly PL2 pour dessiner le V entre les 2 sommets qui entoure la valeur du PK - incrémenter l'abscisse de E (et boucler) Olivier