Bonjour
Je vous livre la procédure suivante :
Lors de sa compilation s'il y a une erreur de syntaxe, l'instruction mise en évidence n'est pas celle où se situe l'erreur mais bien une des lignes de déclaration.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 Procedure TGisForm.ClosestPointOnSegmentFromPoint(const x1,y1,x2,y2,Px,Py:Double; out Nx,Ny:Double); var Vx,Vy ,Wx, Wy, c1, c2, Ratio : Double; begin Vx := x2 - x1; Vy := y2 - y1; Wx := Px - x1; Wy := Py - y1; c1 := Vx * Wx + Vy * Wy; if c1 <= 0.0 then begin Nx := x1; Ny := y1; Exit; end; c2 := Vx * Vx + Vy * Vy; if c2 <= c1 then begin Nx := x2; Ny := y2; Exit; end; Ratio := c1 / c2; Nx := x1 + Ratio * Vx; Ny := y1 + Ratio * Vy; end;
Il en va de même pour toutes les procédures qui suivent dans la source.
Si quelqu'un a une idée...
Partager