summaryrefslogtreecommitdiff
path: root/werteunit.pas
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2017-09-26 10:56:06 +0200
committerErich Eckner <git@eckner.net>2017-09-26 10:56:06 +0200
commit11bb1fe3eb656c616bdd189984bbd6ecb3eeacc2 (patch)
tree438158d3f3c63ac82ddf745b53ede35d01e785f3 /werteunit.pas
parent46a51bc90454d41eae25e9de657d6de7d6268c41 (diff)
downloadepost-11bb1fe3eb656c616bdd189984bbd6ecb3eeacc2.tar.xz
werteunit.pas: wirklich alle Beträge beachten
Diffstat (limited to 'werteunit.pas')
-rw-r--r--werteunit.pas15
1 files changed, 8 insertions, 7 deletions
diff --git a/werteunit.pas b/werteunit.pas
index 78563d2..b62282e 100644
--- a/werteunit.pas
+++ b/werteunit.pas
@@ -2064,11 +2064,11 @@ end;
procedure tLLWerte.kantenFilter(betraege: tLLWerte; xFak,yFak: extended; filterTyp: tKantenFilterTyp; einseitig: boolean; out maxPos: tInt64Point);
var
- maxima: tInt64PointArray;
- i,iM,j,jM,mCnt,di,dj: int64;
- wert,minWert,maxWert: extended;
- istVollKomplex: byte; // 1=nein, 2=ja
- schiebung: tInt64Point;
+ maxima: tInt64PointArray;
+ i,iM,j,jM,jP,mCnt,di,dj: int64;
+ wert,minWert,maxWert: extended;
+ istVollKomplex: byte; // 1=nein, 2=ja
+ schiebung: tInt64Point;
begin
istVollKomplex:=params.tSiz div betraege.params.tSiz;
if (betraege.params.tSiz*istVollKomplex <> params.tSiz) or
@@ -2086,8 +2086,9 @@ begin
setLength(maxima,0);
mCnt:=0;
- for j:=0 to betraege.params.tSiz div 2 + 1 do begin
+ for j:=0 to betraege.params.tSiz-1 do begin
jM:=j - 1 + betraege.params.tSiz*byte(j=0);
+ jP:=j + 1 - betraege.params.tSiz*byte(j=betraege.params.tSiz-1);
for i:=0 to betraege.params.xSteps div 2 + 1 do begin
iM:=i - 1 + betraege.params.xSteps*byte(i=0);
wert:=betraege.werte[i+j*betraege.params.xSteps];
@@ -2095,7 +2096,7 @@ begin
(wert > betraege.werte[iM+j*betraege.params.xSteps]) and
(wert > betraege.werte[i+jM*betraege.params.xSteps]) and
(wert > betraege.werte[(i+1)+j*betraege.params.xSteps]) and
- (wert > betraege.werte[i+(j+1)*betraege.params.xSteps]) then begin
+ (wert > betraege.werte[i+jP*betraege.params.xSteps]) then begin
if length(maxima)<=mCnt then
setLength(maxima,length(maxima)+1024);
maxima[mCnt]['x']:=i;