diff -Nru astap-cli-0.9.588/astap_command_line_android_arm64.lpi astap-cli-2022.03.01/astap_command_line_android_arm64.lpi
--- astap-cli-0.9.588/astap_command_line_android_arm64.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_android_arm64.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_android_armhf.lpi astap-cli-2022.03.01/astap_command_line_android_armhf.lpi
--- astap-cli-0.9.588/astap_command_line_android_armhf.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_android_armhf.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_darwin_M1.lpi astap-cli-2022.03.01/astap_command_line_darwin_M1.lpi
--- astap-cli-0.9.588/astap_command_line_darwin_M1.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_darwin_M1.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_darwin_X86_64.lpi astap-cli-2022.03.01/astap_command_line_darwin_X86_64.lpi
--- astap-cli-0.9.588/astap_command_line_darwin_X86_64.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_darwin_X86_64.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_linux_arm64.lpi astap-cli-2022.03.01/astap_command_line_linux_arm64.lpi
--- astap-cli-0.9.588/astap_command_line_linux_arm64.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_linux_arm64.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_linux_armhf.lpi astap-cli-2022.03.01/astap_command_line_linux_armhf.lpi
--- astap-cli-0.9.588/astap_command_line_linux_armhf.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_linux_armhf.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_linux.lpi astap-cli-2022.03.01/astap_command_line_linux.lpi
--- astap-cli-0.9.588/astap_command_line_linux.lpi 2021-11-01 23:06:27.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_linux.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -6,6 +6,7 @@
+
@@ -14,6 +15,11 @@
+
+
+
+
+
@@ -55,6 +61,11 @@
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_linux_pie.lpi astap-cli-2022.03.01/astap_command_line_linux_pie.lpi
--- astap-cli-0.9.588/astap_command_line_linux_pie.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_linux_pie.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line.lpi astap-cli-2022.03.01/astap_command_line.lpi
--- astap-cli-0.9.588/astap_command_line.lpi 2021-11-01 23:06:27.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -6,6 +6,7 @@
+
@@ -14,6 +15,11 @@
+
+
+
+
+
@@ -55,6 +61,11 @@
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line.lpr astap-cli-2022.03.01/astap_command_line.lpr
--- astap-cli-0.9.588/astap_command_line.lpr 2021-11-01 23:06:27.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line.lpr 2022-03-02 22:39:48.000000000 +0000
@@ -55,7 +55,7 @@
begin
writeln(
'ASTAP astrometric solver, '+version+#10+
- '(C) 2018, 2021 by Han Kleijn. License LGPL3+, Webpage: www.hnsky.org'+#10+
+ '(C) 2018, 2022 by Han Kleijn. License MPL 2.0, Webpage: www.hnsky.org'+#10+
'Usage:'+#10+
'-f filename {fits, tiff, png, jpg files}'+#10+
'-f stdin {read raw image from stdin}'+#10+
@@ -183,8 +183,6 @@
write_astronomy_wcs {write WCS astronomy.net style}
else
try Memo1.SavetoFile(ChangeFileExt(filename2,'.wcs'));{save header as wcs file} except {sometimes error using APT, locked?} end;
-
- //histogram_done:=false;
end {solution}
else
begin {no solution}
@@ -195,7 +193,7 @@
esc_pressed:=true;{kill any running activity. This for APT}
if commandline_log then
- Memo2.SavetoFile(ChangeFileExt(filename2,'.log'));{save Memo3 log to log file}
+ Memo2.SavetoFile(ChangeFileExt(filename2,'.log'));{save Memo2 log to log file}
halt(errorlevel); {don't save only do mainwindow.destroy. Note mainwindow.close causes a window flash briefly, so don't use}
@@ -245,9 +243,11 @@
var
Application: Tastap;
+
+{$R *.res}
+
begin
Application:=Tastap.Create(nil);
- Application.Title:='astap';
Application.Run;
Application.Free;
end.
diff -Nru astap-cli-0.9.588/astap_command_line_w32.lpi astap-cli-2022.03.01/astap_command_line_w32.lpi
--- astap-cli-0.9.588/astap_command_line_w32.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_w32.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/astap_command_line_w64.lpi astap-cli-2022.03.01/astap_command_line_w64.lpi
--- astap-cli-0.9.588/astap_command_line_w64.lpi 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/astap_command_line_w64.lpi 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru astap-cli-0.9.588/_compile_all.sh astap-cli-2022.03.01/_compile_all.sh
--- astap-cli-0.9.588/_compile_all.sh 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/_compile_all.sh 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,23 @@
+/home/h/fpcupdeluxe2/lazarus/lazbuild astap_command_line_linux_arm64.lpi
+zip astap_command-line_version_Linux_arm64.zip astap_cli
+
+/home/h/fpcupdeluxe2/lazarus/lazbuild astap_command_line_linux_armhf.lpi
+zip astap_command-line_version_Linux_armhf.zip astap_cli
+
+/home/h/fpcupdeluxe2/lazarus/lazbuild astap_command_line_darwin_M1.lpi
+zip astap_command-line_version_macOS_M1.zip astap_cli
+
+/home/h/fpcupdeluxe2/lazarus/lazbuild astap_command_line_darwin_X86_64.lpi
+zip astap_command-line_version_macOS_X86_64.zip astap_cli
+
+/home/h/fpcupdeluxe2/lazarus/lazbuild astap_command_line_android_armhf.lpi
+zip astap_command-line_version_android_armhf.zip astap_cli
+
+/home/h/fpcupdeluxe2/lazarus/lazbuild astap_command_line_android_arm64.lpi
+zip astap_command-line_version_android_aarch64.zip astap_cli
+
+
+/home/h/fpcupdeluxe2/lazarus/lazbuild astap_command_line_linux.lpi
+zip astap_command-line_version_Linux_amd64.zip astap_cli
+
+
diff -Nru "/tmp/tmpfk1paoy9/zdy1OsfMPE/astap-cli-0.9.588/_compile and zip the 64bit and 32bit version and copy to the webpage.bat" "/tmp/tmpfk1paoy9/fLW68iNsTs/astap-cli-2022.03.01/_compile and zip the 64bit and 32bit version and copy to the webpage.bat"
--- "/tmp/tmpfk1paoy9/zdy1OsfMPE/astap-cli-0.9.588/_compile and zip the 64bit and 32bit version and copy to the webpage.bat" 1970-01-01 00:00:00.000000000 +0000
+++ "/tmp/tmpfk1paoy9/fLW68iNsTs/astap-cli-2022.03.01/_compile and zip the 64bit and 32bit version and copy to the webpage.bat" 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,12 @@
+\lazarus\lazbuild astap_command_line_w64.lpi
+pkzip25 -add astap_command-line_version_win64 .\astap_cli.exe
+copy astap_command-line_version_win64.zip C:\webpage\webpage\homepage_hnsky /y
+
+\lazarus\lazbuild astap_command_line_w32.lpi
+pkzip25 -add astap_command-line_version_win32 .\astap_cli.exe
+copy astap_command-line_version_win32.zip C:\webpage\webpage\homepage_hnsky /y
+
+
+
+pause
+
diff -Nru astap-cli-0.9.588/debian/changelog astap-cli-2022.03.01/debian/changelog
--- astap-cli-0.9.588/debian/changelog 2021-11-02 20:30:51.000000000 +0000
+++ astap-cli-2022.03.01/debian/changelog 2022-03-02 21:30:51.000000000 +0000
@@ -1,3 +1,12 @@
+astap-cli (2022.03.01-1) unstable; urgency=medium
+
+ * new upstream version
+ * debian/control: Build-depend on unversioned lcl packages.
+ Closes: #1004930
+ thanks to Peter Green for the patch
+
+ -- Thorsten Alteholz Wed, 02 Mar 2022 22:30:51 +0100
+
astap-cli (0.9.588-3) unstable; urgency=medium
* debian/rules: set primary config file of lazarus to /etc/lazarus
diff -Nru astap-cli-0.9.588/debian/control astap-cli-2022.03.01/debian/control
--- astap-cli-0.9.588/debian/control 2021-11-02 01:31:06.000000000 +0000
+++ astap-cli-2022.03.01/debian/control 2022-03-02 21:30:51.000000000 +0000
@@ -7,9 +7,9 @@
, lazarus
, fpc
, fp-compiler
- , lcl-2.0
- , lcl-utils-2.0
- , lcl-nogui-2.0
+ , lcl
+ , lcl-utils
+ , lcl-nogui
Standards-Version: 4.6.0
Homepage: http://www.hnsky.org/astap.htm
Rules-Requires-Root: binary-targets
diff -Nru astap-cli-0.9.588/debian/patches/spelling.patch astap-cli-2022.03.01/debian/patches/spelling.patch
--- astap-cli-0.9.588/debian/patches/spelling.patch 2021-11-02 01:52:01.000000000 +0000
+++ astap-cli-2022.03.01/debian/patches/spelling.patch 2022-03-02 21:30:51.000000000 +0000
@@ -1,9 +1,9 @@
Description: spelling error found by lintian
-Index: astap-cli/unit_command_line_star_database.pas
+Index: astap-cli_2022.03.01.orig/unit_command_line_star_database.pas
===================================================================
---- astap-cli.orig/unit_command_line_star_database.pas 2021-11-02 01:29:32.898034750 +0000
-+++ astap-cli/unit_command_line_star_database.pas 2021-11-02 01:43:23.596207235 +0000
-@@ -2770,7 +2770,7 @@
+--- astap-cli_2022.03.01.orig.orig/unit_command_line_star_database.pas 2022-03-02 23:45:10.871404169 +0100
++++ astap-cli_2022.03.01.orig/unit_command_line_star_database.pas 2022-03-02 23:45:10.867404168 +0100
+@@ -2762,7 +2762,7 @@
begin
if fileexists( database_path+'w08_0101.001') then begin name_database:='w08';database_type:=001; end
else
diff -Nru astap-cli-0.9.588/linux_scripts/build_astap.sh astap-cli-2022.03.01/linux_scripts/build_astap.sh
--- astap-cli-0.9.588/linux_scripts/build_astap.sh 1970-01-01 00:00:00.000000000 +0000
+++ astap-cli-2022.03.01/linux_scripts/build_astap.sh 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,24 @@
+/home/h/fpcupdeluxe2/lazarus/lazbuild ~/astap.fpc/astap_linux.lpi
+
+cp ~/astap.fpc/astap ~/astap_install/astap_amd64/opt/astap
+cd ~/astap_install
+sudo rm *.rpm
+sudo fakeroot dpkg-deb --build ~/astap_install/astap_amd64
+sudo ~/alien/alien-8.95/alien.pl -r -c -k ~/astap_install/astap_amd64.deb
+cp *.rpm astap_amd64.rpm
+
+
+sudo dpkg -i ./astap_amd64.deb
+tar -czvf astap_amd64.tar.gz /opt/astap/astap /opt/astap/astap.ico /opt/astap/astap.ico /opt/astap/copyright.txt /opt/astap/deep_sky.csv /opt/astap/variable_stars.csv /usr/share/applications/ASTAP.desktop /usr/local/bin/astap /opt/astap/dcraw-astap /opt/astap/unprocessed_raw-astap
+
+
+/home/h/fpcupdeluxe2/lazarus/lazbuild ~/astap.fpc/astap_linux_qt5.lpi
+sudo cp ~/astap.fpc/astap /opt/astap
+tar -czvf astap_amd64_qt5.tar.gz /opt/astap/astap /opt/astap/astap.ico /opt/astap/astap.ico /opt/astap/copyright.txt /opt/astap/deep_sky.csv /opt/astap/variable_stars.csv /usr/share/applications/ASTAP.desktop /usr/local/bin/astap /opt/astap/dcraw-astap /opt/astap/unprocessed_raw-astap
+
+
+
+
+
+
+
Binary files /tmp/tmpfk1paoy9/zdy1OsfMPE/astap-cli-0.9.588/macOS_packages_projects/macOS_projects.zip and /tmp/tmpfk1paoy9/fLW68iNsTs/astap-cli-2022.03.01/macOS_packages_projects/macOS_projects.zip differ
diff -Nru "/tmp/tmpfk1paoy9/zdy1OsfMPE/astap-cli-0.9.588/readme how to compile.txt" "/tmp/tmpfk1paoy9/fLW68iNsTs/astap-cli-2022.03.01/readme how to compile.txt"
--- "/tmp/tmpfk1paoy9/zdy1OsfMPE/astap-cli-0.9.588/readme how to compile.txt" 1970-01-01 00:00:00.000000000 +0000
+++ "/tmp/tmpfk1paoy9/fLW68iNsTs/astap-cli-2022.03.01/readme how to compile.txt" 2022-03-02 22:39:48.000000000 +0000
@@ -0,0 +1,22 @@
+How to compile ASTAP:
+
+1) Install Lazurus (this will also install Free Pascal Compiler)
+
+
+2a) Start Lazarus GUI. Load astap.lpi or astap_linux.lip or astap_mac.lpi. Menu Run, Run or Compile
+
+2b) Command line:
+
+ Windows:
+ lazbuild -B astap_command_line.lpi
+
+ Linux:
+ lazbuild -B astap_command_line.lpi
+
+ Linux, PIE executable that you can run only via a terminal or a symlink:
+ lazbuild -B astap_command_line_linux_pie.lpi
+
+ Mac:
+ lazbuild -B astap_command_line.lpi
+
+
diff -Nru astap-cli-0.9.588/unit_command_line_general.pas astap-cli-2022.03.01/unit_command_line_general.pas
--- astap-cli-0.9.588/unit_command_line_general.pas 2021-11-01 23:06:27.000000000 +0000
+++ astap-cli-2022.03.01/unit_command_line_general.pas 2022-03-02 22:39:48.000000000 +0000
@@ -17,7 +17,7 @@
var {################# initialised variables #########################}
stdin_mode : boolean=false;{file send via stdin}
- version: string=' CLI-0.9.587 dated 2021-10-29';
+ version: string=' CLI-2022-2-04';
ra1 : string='0';
dec1 : string='0';
search_fov1 : string='0';{search FOV}
@@ -243,10 +243,8 @@
procedure memo2_message(s: string);{message to memo2. Is also used for log to file in commandline mode}
begin
{$IFDEF UNIX or ANDROID} {linux and mac}
- if filename2='stdin' then s:='COMMENT='+s;
writeln(s); {linux command line can write unicode}
{$ELSE }
- if stdin_mode then s:='COMMENT='+s;
writeln(ansi_only(s)); {log to console for Windows when compiler WIN32 gui is off}
{$ENDIF}
@@ -457,6 +455,7 @@
rewrite(f);
if solution then
begin
+ flush(output); {Required in Linux and Mac. Otherwise writeln(f,' ') mixes with writeln(' ') in redirected output}
writeln(f,'PLTSOLVD=T');
writeln(f,'CRPIX1='+floattostrE(crpix1));// X of reference pixel
writeln(f,'CRPIX2='+floattostrE(crpix2));// Y of reference pixel
@@ -474,6 +473,8 @@
end
else
begin
+ flush(output); {Required in Linux and Mac. Otherwise writeln(f,' ') mixes with writeln(' ') in redirected output}
+ writeln(f,'');
writeln(f,'PLTSOLVD=F');
end;
writeln(f,'CMDLINE='+cmdline);{write the original commmand line}
@@ -689,7 +690,7 @@
end;
-function load_fits(filen:string;var img_loaded2: image_array): boolean;{load fits file}
+function load_fits(filen:string;out img_loaded2: image_array): boolean;{load fits file}
var
header : array[0..2880] of ansichar;
i,j,k,error3,naxis1, reader_position : integer;
@@ -999,7 +1000,7 @@
if crota2>999 then crota2:=0;{not defined, set at 0}
if crota1>999 then crota1:=crota2; {for case crota1 is not used}
- if ((ra0<>0) and (dec0<>0)) then
+ if ((ra0<>0) or (dec0<>0)) then
begin
ra1:=prepare_ra(ra0,' ');
dec1:=prepare_dec(dec0,' ');
@@ -1456,36 +1457,20 @@
xpixsz:=0;
ypixsz:=0;
focallen:=0;
-// subsamp:=1;{just for the case it is not available}
cd1_1:=0;
cd1_2:=0;
cd2_1:=0;
cd2_2:=0;
date_obs:='';
-// date_avg:='';date_avg:='';ut:=''; pltlabel:=''; plateid:=''; telescop:=''; instrum:=''; origin:=''; object_name:='';{clear}
-// sitelat:='';{Observatory latitude}
-// sitelong:='';{Observatory longitude}
naxis:=1;
naxis3:=1;
-// filter_name:='';
-// calstat:='';{indicates calibration state of the image; B indicates bias corrected, D indicates dark corrected, F indicates flat corrected. Example value DFB}
-// imagetype:='';
xbinning:=1;{default}
ybinning:=1;
-// exposure:=0;
-// set_temperature:=999;
+ exposure:=0;
-// bayerpat:='T';{assume image is from Raw DSLR image}
-// xbayroff:=0;{offset to used to correct BAYERPAT due to flipping}
-// ybayroff:=0;{offset to used to correct BAYERPAT due to flipping}
-// roworder:='';{'BOTTOM-UP'= lower-left corner first in the file. or 'TOP-DOWN'= top-left corner first in the file.}
-
-// annotated:=false; {any annotation in the file}
gain:=999;{assume no data available}
-// sqm:=0;{assume no data available}
-
I:=0;
reader_position:=0;
@@ -1925,7 +1910,7 @@
rgbdummy : byteX3;
x_longword : longword;
x_single : single absolute x_longword;{for conversion 32 bit float}
- InputStream: TIOStream;
+ InputStream : TIOStream;
begin
result:=false;{assume failure}
cd1_1:=0;{no solution}
@@ -1949,9 +1934,7 @@
else
exit;
- naxis3:=1;
-
- Count := InputStream.Read(width2, 4);
+ Count := InputStream.Read(width2, 4);
Count := InputStream.Read(height2, 4);
{read image data}
@@ -1979,7 +1962,6 @@
img_loaded[1,i,h]:=rgbdummy[1];{store in memory array}
img_loaded[2,i,h]:=rgbdummy[2];{store in memory array}
end;
- naxis3:=3;
end
else
if nrbits=-32 then {floats}
@@ -2057,6 +2039,8 @@
if calc_hist then
get_hist(colour,img);{get histogram of img_loaded and his_total}
+ background:=img[0,0,0];{define something for images containing 0 or 65535 only}
+
{find peak in histogram which should be the average background}
pixels:=0;
max_range:=his_mean[colour]; {mean value from histogram}
@@ -2068,7 +2052,7 @@
end;
{check alternative mean value}
- if his_mean[colour]>2*background {2* most common} then
+ if his_mean[colour]>1.5*background {1.5* most common} then {changed from 2 to 1.5 on 2021-5-29}
begin
memo2_message('Will use mean value '+inttostr(round(his_mean[colour]))+' as background rather then most common value '+inttostr(round(background)));
background:=his_mean[colour];{strange peak at low value, ignore histogram and use mean}
diff -Nru astap-cli-0.9.588/unit_command_line_solving.pas astap-cli-2022.03.01/unit_command_line_solving.pas
--- astap-cli-0.9.588/unit_command_line_solving.pas 2021-11-01 23:06:27.000000000 +0000
+++ astap-cli-2022.03.01/unit_command_line_solving.pas 2022-03-02 22:39:48.000000000 +0000
@@ -52,7 +52,7 @@
sincos(dec1,sin_dec1,cos_dec1);{use sincos function for speed}
sincos(dec2,sin_dec2,cos_dec2);
- cos_sep:=sin_dec1*sin_dec2+ cos_dec1*cos_dec2*cos(ra1-ra2);
+ cos_sep:=min(1,sin_dec1*sin_dec2+ cos_dec1*cos_dec2*cos(ra1-ra2));{min function to prevent run time errors for 1.000000000002}
sep:=arccos(cos_sep);
end;
@@ -662,7 +662,7 @@
xy_sqr_ratio:=(sqr(solution_vectorX[0])+sqr(solution_vectorX[1]) ) / (0.00000001+ sqr(solution_vectorY[0])+sqr(solution_vectorY[1]) );
- if ((xy_sqr_ratio<0.98) or (xy_sqr_ratio>1.02)) then {dimensions x, y are not the same, something wrong. Mod 2021-6-26, changed it from 0.99 to 0.98 because of problem solving some images like M20 }
+ if ((xy_sqr_ratio<0.9) or (xy_sqr_ratio>1.1)) then {dimensions x, y are not the same, something wrong.}
begin
result:=false;
reset_solution_vectors(0.001);{nullify}
@@ -1093,9 +1093,9 @@
var
nrstars,nrstars_required,count,max_distance,nr_quads, minimum_quads,database_stars,distance,binning,match_nr,
spiral_x, spiral_y, spiral_dx, spiral_dy,spiral_t : integer;
- search_field,step_size,telescope_ra,telescope_dec,telescope_ra_offset,radius,fov2,fov_org, max_fov,fov_min,oversize,sep,
- ra7,dec7,centerX,centerY,cropping, min_star_size_arcsec,hfd_min,delta_ra,current_dist,
- quad_tolerance,dummy, extrastars : double;
+ search_field,step_size,telescope_ra,telescope_dec,telescope_ra_offset,radius,fov2,fov_org, max_fov,fov_min,
+ oversize,sep,seperation,ra7,dec7,centerX,centerY,cropping, min_star_size_arcsec,hfd_min,delta_ra,current_dist,
+ quad_tolerance,dummy, extrastars,flip,extra : double;
solution, go_ahead ,autoFOV : boolean;
startTick : qword;{for timing/speed purposes}
distancestr,oversize_mess,mess,suggest_str, warning_downsample, solved_in, offset_found,ra_offset,dec_offset,mount_info,mount_offset : string;
@@ -1224,8 +1224,6 @@
radius:=strtofloat2(radius_search1);{radius search field}
-// max_distance:=round(radius/(fov2+0.00001));
-
memo2_message(inttostr(nrstars)+' stars, '+inttostr(nr_quads)+' quads selected in the image. '+inttostr(nrstars_required)+' database stars, '+inttostr(round(nr_quads*nrstars_required/nrstars))+' database quads required for the square search field of '+floattostrF2(fov2,0,1)+'d. '+oversize_mess );
if nr_quads>500 then minimum_quads:=10 else {prevent false detections for star rich images}
@@ -1241,11 +1239,6 @@
if go_ahead then
begin
-// search_field:=fov2*(pi/180);
-// STEP_SIZE:=search_field;{fixed step size search spiral. Prior to version 0.9.211 this was reduced for small star counts}
-// //stackmenu1.Memo2.Lines.BeginUpdate;{do not update tmemo, very very slow and slows down program}
-
-
search_field:=fov2*(pi/180);
STEP_SIZE:=search_field;{fixed step size search spiral. Prior to version 0.9.211 this was reduced for small star counts}
if database_type=1 then
@@ -1257,10 +1250,8 @@
else
max_distance:=round(radius/(fov2+0.00001));{expressed in steps}
-
match_nr:=0;
repeat {Maximum accuracy loop. In case math is found on a corner, do a second solve. Result will be more accurate using all stars of the image}
-
count:=0;{search field counter}
distance:=0; {required for reporting no too often}
{spiral variables}
@@ -1285,21 +1276,28 @@
{adapt search field to matrix position, +0+0/+1+0,+1+1,+0+1,-1+1,-1+0,-1-1,+0-1,+1-1..}
telescope_dec:=STEP_SIZE*spiral_y+dec_radians;
+ flip:=0;
+ if telescope_dec>+pi/2 then begin telescope_dec:=pi-telescope_dec; flip:=pi; end {crossed the pole}
+ else
+ if telescope_dec<-pi/2 then begin telescope_dec:=-pi-telescope_dec; flip:=pi; end;
- if ((telescope_dec<=pi/2+search_field) and (telescope_dec>=-pi/2-search_field)) then {within dec range}
- begin {dec withing range}
- telescope_ra_offset:= (STEP_SIZE*spiral_x/cos(telescope_dec));{step larger near pole. This telescope_ra is an offsett from zero}
+ if telescope_dec>0 then extra:=step_size/2 else extra:=-step_size/2;{use the distance furthest away from the pole}
- if ((telescope_ra_offset<=pi+search_field*2 {required for 180 degrees coverage}) and (telescope_ra_offset>=-pi-search_field*2) ) then {ra and dec within in range, near poles ra goes much faster}
+ telescope_ra_offset:= (STEP_SIZE*spiral_x/cos(telescope_dec-extra));{step larger near pole. This telescope_ra is an offsett from zero}
+ if ((telescope_ra_offset<=+pi/2+step_size/2) and (telescope_ra_offset>=-pi/2)) then {step_size for overlap}
+ begin
+ telescope_ra:=fnmodulo(flip+ra_radians+telescope_ra_offset,2*pi);{add offset to ra after the if statement! Otherwise no symmetrical search}
+
+ ang_sep(telescope_ra,telescope_dec,ra_radians,dec_radians, {out}seperation);{calculates angular separation. according formula 9.1 old Meeus or 16.1 new Meeus, version 2018-5-23}
+ if seperation<=radius*pi/180+step_size/2 then {Use only the circular area withing the square area}
begin
- telescope_ra:=fnmodulo(ra_radians+telescope_ra_offset,2*pi);{add offset to ra after the if statement! Otherwise no symmetrical search}
{info reporting}
//stackmenu1.field1.caption:= '['+inttostr(spiral_x)+','+inttostr(spiral_y)+']';{show on stackmenu what's happening}
if ((spiral_x>distance) or (spiral_y>distance)) then {new distance reached. Update once in the square spiral, so not too often since it cost CPU time}
begin
distance:=max(spiral_x,spiral_y);{update status}
- distancestr:=inttostr( round((distance) * fov2))+'d,';{show on stackmenu what's happening}
+ distancestr:=inttostr(round(seperation*180/pi))+'d,';{show on stackmenu what's happening}
write(distancestr);
end; {info reporting}
@@ -1327,14 +1325,13 @@
memo2_message('Search '+ inttostr(count)+', ['+inttostr(spiral_x)+','+inttostr(spiral_y)+'], position: '+ prepare_ra(telescope_ra,': ')+prepare_dec(telescope_dec,'d ')+#9+' Down to magn '+ floattostrF2(mag2/10,0,1) +#9+' '+inttostr(database_stars)+' database stars' +#9+' '+inttostr(length(quad_star_distances1[0]))+' database quads to compare.');
// for testing purposes
- // create supplement lines for sky coverage testing
- // stackmenu1.memo2.lines.add(floattostr(telescope_ra*12/pi)+',,,'+floattostr(telescope_dec*180/pi)+',,,,'+inttostr(count)+',,-99'); {create hnsky supplement to test sky coverage}
+ // create supplement lines for sky coverage testing and write to log using -log
+ // memo2.add(floattostr(telescope_ra*12/pi)+',,,'+floattostr(telescope_dec*180/pi)+',,,,'+inttostr(count)+',,-99'); {create hnsky supplement to test sky coverage}
solution:=find_offset_and_rotation(minimum_quads {>=3},quad_tolerance);{find an solution}
- end;{ra in range}
- end;{dec within range}
+ end; {within search circle. Otherwise the search is within a kind of square}
+ end;{ra in range}
inc(count);{step further in spiral}
-
until ((solution) or (spiral_x>max_distance));{squared spiral search}
if solution then
@@ -1356,6 +1353,8 @@
inc(match_nr);
end;
until ((solution=false) or (current_dist=2));{Maximum accurcy loop. After match possible on a corner do a second solve using the found ra0,dec0 for maximum accuracy USING ALL STARS}
+
+
end; {enough quads in image}
until ((autoFOV=false) or (solution) or (fov2<=fov_min)); {loop for autoFOV from 9.5 to 0.37 degrees. Will lock between 9.5*1.25 downto 0.37/1.25 or 11.9 downto 0.3 degrees}
@@ -1409,7 +1408,7 @@
dec_offset:=distance_to_string(sep,dec_mount-dec0);
mount_offset:=' Mount offset RA='+ra_offset+', DEC='+dec_offset;{ascii}
- mount_info:=' Mount offset Δα='+ra_offset+ ', Δδ='+dec_offset+'. ';
+ mount_info:=' Mount Δα='+ra_offset+ ', Δδ='+dec_offset+'. ';
end
else
begin
diff -Nru astap-cli-0.9.588/unit_command_line_star_database.pas astap-cli-2022.03.01/unit_command_line_star_database.pas
--- astap-cli-0.9.588/unit_command_line_star_database.pas 2021-11-01 23:06:27.000000000 +0000
+++ astap-cli-2022.03.01/unit_command_line_star_database.pas 2022-03-02 22:39:48.000000000 +0000
@@ -1,18 +1,10 @@
-unit unit_command_line_star_database;
-{HNSKY reads star databases type .290 and 1476}
-{Copyright (C) 2017,2021 by Han Kleijn, www.hnsky.org
- email: han.k.. at...hnsky.org}
-
+unit unit_command_line_star_database; {Reads star databases type .290 and 1476}
{Copyright (C) 2017, 2021 by Han Kleijn, www.hnsky.org
email: han.k.. at...hnsky.org
-This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License (LGPL) as published
-by the Free Software Foundation, either version 3 of the License, or(at your option) any later version.
-
-This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
-
-You should have received a copy of the GNU Lesser General Public License (LGPL) along with this program. If not, see .}
+This Source Code Form is subject to the terms of the Mozilla Public
+License, v. 2.0. If a copy of the MPL was not distributed with this
+file, You can obtain one at https://mozilla.org/MPL/2.0/. }
{$mode delphi}