@@ -10424,7 +10424,7 @@ procedure Tf_main.cmdAutofocus(var ok: boolean);
10424
10424
end ;
10425
10425
10426
10426
Procedure Tf_main.DoAutoFocus ;
10427
- var c,dx,dy,vmax: double;
10427
+ var c,dx,dy,vmax,dm : double;
10428
10428
sx,sy,sw: integer;
10429
10429
begin
10430
10430
if (fits.HeaderInfo.valid)and (Preview or Capture) then begin // not on control exposure
@@ -10441,8 +10441,18 @@ procedure Tf_main.cmdAutofocus(var ok: boolean);
10441
10441
// try to re-acquire star in full window
10442
10442
sw:=starwindow div (2 *fits.HeaderInfo.BinX);
10443
10443
fits.FindBrightestPixel(round(c),round(c),round(2 *c)-sw,sw,sx,sy,vmax);
10444
- if vmax>0 then
10444
+ if vmax>0 then begin
10445
10445
f_starprofile.showprofile(fits,sx,sy,Starwindow div fits.HeaderInfo.BinX,fits.HeaderInfo.focallen,fits.HeaderInfo.pixsz1);
10446
+ if Collimation and (not f_starprofile.FindStar) then begin
10447
+ // for collimation, automatically increase the detection window
10448
+ dm:=((Focuswindow/2 )-Starwindow)/3 ;
10449
+ sw:=round(Starwindow+dm);
10450
+ repeat
10451
+ f_starprofile.showprofile(fits,sx,sy,sw div fits.HeaderInfo.BinX,fits.HeaderInfo.focallen,fits.HeaderInfo.pixsz1);
10452
+ sw:=round(sw+dm);
10453
+ until f_starprofile.FindStar or (sw>(Focuswindow/2 ));
10454
+ end ;
10455
+ end ;
10446
10456
end ;
10447
10457
// recenter star
10448
10458
sx:=StrToIntDef(f_frame.FX.Text,-1 );
0 commit comments