Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
770e6f4
rtknavi_qt: correct freq change in SNR and sky plots
ourairquality Apr 20, 2026
590403b
preceph: fix code_bias_ix system indexing
ourairquality Apr 20, 2026
b8198ef
Fix incorrect install targets for some QT apps (launch, navi, plot, p…
Apr 22, 2026
fe5026c
rtknavi: fix the track plot expand and shrink for plots 3 and 4
ourairquality Apr 22, 2026
72dca37
Add BDS to the systems in the default process options
ourairquality Apr 25, 2026
ca3befa
rnx2rtkp: default nav sys to include Galileo and BDS
ourairquality Apr 25, 2026
dc6218a
Merge pull request #814 from ourairquality/code-bias-ix-sys
rtklibexplorer Apr 26, 2026
58c3066
Merge pull request #817 from ourairquality/rtknavi-track-expand-shrink
rtklibexplorer Apr 26, 2026
8969cc3
Merge pull request #820 from ourairquality/proc-opt-sys-bds
rtklibexplorer Apr 26, 2026
2595a36
Merge pull request #821 from ourairquality/rnx2rtkp-default-gal-bds
rtklibexplorer Apr 26, 2026
397d998
readsp3: handle arbitrary comment lines
ourairquality Apr 27, 2026
d3dc227
rinex header: fix clock file system parsing
ourairquality Apr 27, 2026
0bba414
Fix wrong constant in recent commits: SYS_BDS->SYS_CMP
rtklibexplorer Apr 27, 2026
640929b
Modify iono-free option to use iono-free combination of freq slots 1 …
rtklibexplorer Apr 28, 2026
bd43d0e
Merge pull request #813 from ourairquality/rtknavi-qt-plot-freq
JensReimann May 1, 2026
bf6432a
Merge pull request #815 from pabloleonbarriga/fix/qtapp-install-targets
JensReimann May 1, 2026
a67d8a8
code2bias: guard code being zero, and code_ix not found
ourairquality Apr 27, 2026
f8c403c
Merge pull request #822 from ourairquality/code2bias-guards
rtklibexplorer May 1, 2026
51cf4ea
Merge pull request #823 from ourairquality/readsp3-comments
rtklibexplorer May 1, 2026
30860a5
Merge pull request #824 from ourairquality/rinex-header-clk
rtklibexplorer May 1, 2026
f542de9
Make Beidou SSR clock and orbit correction message parsing functional
rtklibexplorer May 1, 2026
5b59da3
Some .BIA bias files leave SVN field blank, modify file parsing to ha…
rtklibexplorer May 1, 2026
9ada3b7
Apply code biases for PPP solutions as absolute instead of differenti…
rtklibexplorer May 1, 2026
28ad77c
- Initialize timestamps for SSR corrections in rtksvrinit
rtklibexplorer May 1, 2026
bfd6491
readrnxclk: interpolate the standard deviations
ourairquality May 8, 2026
5c9cd9d
satposs: fix to work with precise clocks from sp3 files
ourairquality May 7, 2026
bdb5af2
Merge pull request #832 from ourairquality/sp3-prec-clks
rtklibexplorer May 8, 2026
0a929ca
Merge pull request #833 from ourairquality/readrnxclk-std-interp
rtklibexplorer May 8, 2026
0e9a16a
Move $SAT output code to stat file for PPP solutions from rtkpos.c to…
rtklibexplorer May 8, 2026
17efff8
rtcm3 ssr: update types, codes, BDS offset, remove std-dev
ourairquality May 8, 2026
2c64270
rtksrv update_ssr: remove check for ephemeris iode here
ourairquality May 10, 2026
66082e6
Merge pull request #834 from ourairquality/rtcm-ssr-update
rtklibexplorer May 10, 2026
a9df4ff
Merge pull request #836 from ourairquality/rtksrv-update-ssr
rtklibexplorer May 10, 2026
e31a503
rtknavi mondlg: increase width of ssr biases column
ourairquality May 9, 2026
c365315
Merge pull request #838 from ourairquality/rtknavi-qt-ssr-bias-width
JensReimann May 12, 2026
192ea5b
Extend cycle slip detection for PPP solutions to include freqs beyond…
rtklibexplorer May 12, 2026
eac7c0c
rtkplot: avoid interger overflow in intermediate calcs
ourairquality Nov 20, 2024
50f55bc
cmake include GNUInstallDirs
ourairquality May 12, 2026
7d13645
-Add VTEC spherical harmonics ionospheric model
rtklibexplorer May 13, 2026
5b26d81
Merge pull request #850 from ourairquality/cmake-gnuintalldirs
JensReimann May 14, 2026
e913138
Merge pull request #849 from ourairquality/rtkplot-overflow
JensReimann May 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ message("RTKLIB version: ${VERSION}-${PATCH_LEVEL}")

project(rtklib LANGUAGES C CXX VERSION 2.4.3)

include(GNUInstallDirs)
include(CTest)

option(IERS_MODEL "Use Earth models from IERS" OFF)
Expand Down
2 changes: 1 addition & 1 deletion app/consapp/rnx2rtkp/rnx2rtkp.c
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ int main(int argc, char **argv)
else if (n<MAXFILE) infile[n++]=argv[i];
}
if (!prcopt.navsys) {
prcopt.navsys=SYS_GPS|SYS_GLO;
prcopt.navsys=SYS_GPS|SYS_GLO|SYS_GAL|SYS_CMP;
}
if (n<=0) {
showmsg("error : no input file");
Expand Down
2 changes: 1 addition & 1 deletion app/qtapp/rtklaunch_qt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ set_target_properties(rtklaunch_qt PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)
install(TARGETS rtkget_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
install(TARGETS rtklaunch_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
if (UNIX)
install(FILES rtklaunch_qt.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
install(FILES ../icon/rtklaunch.png DESTINATION ${XDG_APPS_PIXMAPS_DIR})
Expand Down
2 changes: 1 addition & 1 deletion app/qtapp/rtknavi_qt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ set_target_properties(rtknavi_qt PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)
install(TARGETS rtkget_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
install(TARGETS rtknavi_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
if (UNIX)
install(FILES rtknavi_qt.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
install(FILES ../icon/rtknavi.png DESTINATION ${XDG_APPS_PIXMAPS_DIR})
Expand Down
2 changes: 1 addition & 1 deletion app/qtapp/rtknavi_qt/mondlg.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2063,7 +2063,7 @@ void MonitorDialog::setRtcmSsr()
header << tr("SAT") << tr("Status") << tr("UDI (s)") << tr("UDHR (s)") << tr("IOD") << tr("URA") << tr("Datum") << tr("T0")
<< tr("D0-A (m)") << tr("D0-C (m)") << tr("D0-R (m)") << tr("D1-A (mm/s)") << tr("D1-C (mm/s)") << tr("D1-R (mm/s)")
<< tr("C0 (m)") << tr("C1 (mm/s)") << tr("C2 (mm/s²)") << tr("C-HR (m)") << tr("Code Bias (m)") << tr("Phase Bias (m)");
int i, width[] = { 46, 60, 70, 90, 30, 25, 70, 115, 90, 90, 90, 120, 120, 120, 90, 120, 120, 120, 200, 200 };
int i, width[] = { 46, 60, 70, 90, 30, 25, 70, 115, 90, 90, 90, 120, 120, 120, 90, 120, 120, 120, 400, 400 };

ui->tWConsole->setColumnCount(20);
ui->tWConsole->setRowCount(0);
Expand Down
31 changes: 16 additions & 15 deletions app/qtapp/rtknavi_qt/navimain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ MainWindow *mainForm;
#define KACYCLE 5000 // keep alive cycle (ms)
#define TIMEOUT 10000 // inactive timeout time (ms)
#define MAX_PORT_OFFSET 9 // max port number offset
#define MAXTRKSCALE 23 // track scale
#define MAXTRKSCALE 26 // track scale
#define MAXPANELMODE 7 // max panel mode

#define SQRT(x) ((x)<0.0||(x)!=(x)?0.0:sqrt(x))
Expand Down Expand Up @@ -126,7 +126,7 @@ MainWindow::MainWindow(QWidget *parent)
timeSystem = solutionType = 0;
for (int i = 0; i < 4; i++) {
plotType[i] = frequencyType[i] = baselineMode[i] = trackType[i] = 0;
trackScale[i] = 5;
trackScale[i] = 8;
};
solutionsCurrent = solutionsStart = solutionsEnd = numSatellites[0] = numSatellites[1] = 0;
nMapPoint = 0;
Expand Down Expand Up @@ -1720,12 +1720,12 @@ void MainWindow::drawSolutionPlot(QLabel *plot, int type, int freq)
drawText(c, w / 2 + x, 1, s2, Qt::darkGray, 1, 2);
}
} else if (type == 1) { // snr plot rover
drawSnr(c, w, h - topMargin, 0, topMargin, 0, type);
drawSnr(c, w, h - topMargin, 0, topMargin, 0, freq);
s1 = tr("Rover %L1 SNR (dBHz)").arg(fstr[freq]);
drawText(c, x, 1, s1, Qt::darkGray, 1, 2);
} else if (type == 2) { // skyplot rover
drawSatellites(c, w, h, 0, 0, 0, type);
s1 = tr("Rover %L1").arg(fstr[type]);
drawSatellites(c, w, h, 0, 0, 0, freq);
s1 = tr("Rover %L1").arg(fstr[freq]);
drawText(c, x, 1, s1, Qt::darkGray, 1, 2);
} else if (type == 3) { // skyplot+snr plot rover
s1 = tr("Rover %L1").arg(fstr[freq]);
Expand Down Expand Up @@ -1921,7 +1921,7 @@ void MainWindow::drawSatellites(QPainter &c, int w, int h, int x0, int y0,
radius = QFontMetrics(optDialog->panelFont).height();

c.setBrush(!validSatellites[index][k] ? Color::Silver :
(freq < NFREQ ? snrColor(snr[freq]) : color_sys[sysIdx]));
(freq < NFREQ + 1 ? snrColor(snr[freq]) : color_sys[sysIdx]));
c.setPen(Qt::darkGray);
color_text = Qt::white;
if (freq < NFREQ + 1 && snr[freq] <= 0) {
Expand Down Expand Up @@ -2041,17 +2041,18 @@ void MainWindow::drawTrack(QPainter &c, int id, QPaintDevice *plot)
QPoint p1, p2;
QString label;
static const double scale[] = {
0.00021, 0.00047, 0.001, 0.0021, 0.0047, 0.01, 0.021, 0.047, 0.1, 0.21, 0.47,
1.0, 2.1, 4.7, 10.0, 21.0, 47.0, 100.0, 210.0, 470.0, 1000.0, 2100.0,4700.0,
0.000021, 0.000047, 0.0001, 0.00021, 0.00047, 0.001, 0.0021, 0.0047,
0.01, 0.021, 0.047, 0.1, 0.21, 0.47,
1.0, 2.1, 4.7, 10.0, 21.0, 47.0, 100.0, 210.0, 470.0, 1000.0, 2100.0, 4700.0,
10000.0
};
double *x, *y, xt, yt, sx, sy, ref[3], pos[3], dr[3], enu[3];
int i, j, currentPointNo, numPoints = 0, type, scl;
int i, j, currentPointNo, numPoints = 0;

trace(3, "drawTrack\n");

type = id == 0 ? trackType[0] : trackType[1];
scl = id == 0 ? trackScale[0] : trackScale[1];
int type = trackType[id];
int scl = trackScale[id];

x = new double[optDialog->solutionBufferSize];
y = new double[optDialog->solutionBufferSize];
Expand Down Expand Up @@ -2535,10 +2536,10 @@ void MainWindow::loadOptions()
trackType[1] = settings.value("setting/trktype2", 0).toInt();
trackType[2] = settings.value("setting/trktype3", 0).toInt();
trackType[3] = settings.value("setting/trktype4", 0).toInt();
trackScale[0] = settings.value("setting/trkscale1", 5).toInt();
trackScale[1] = settings.value("setting/trkscale2", 5).toInt();
trackScale[2] = settings.value("setting/trkscale3", 5).toInt();
trackScale[3] = settings.value("setting/trkscale4", 5).toInt();
trackScale[0] = settings.value("setting/trkscale1", 8).toInt();
trackScale[1] = settings.value("setting/trkscale2", 8).toInt();
trackScale[2] = settings.value("setting/trkscale3", 8).toInt();
trackScale[3] = settings.value("setting/trkscale4", 8).toInt();
frequencyType[0] = settings.value("setting/freqtype1", 0).toInt();
frequencyType[1] = settings.value("setting/freqtype2", 0).toInt();
frequencyType[2] = settings.value("setting/freqtype3", 0).toInt();
Expand Down
2 changes: 1 addition & 1 deletion app/qtapp/rtkplot_qt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ set_target_properties(rtkplot_qt PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)
install(TARGETS rtkget_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
install(TARGETS rtkplot_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
if (UNIX)
install(FILES rtkplot_qt.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
install(FILES ../icon/rtkplot.png DESTINATION ${XDG_APPS_PIXMAPS_DIR})
Expand Down
8 changes: 4 additions & 4 deletions app/qtapp/rtkplot_qt/plotmain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1532,12 +1532,11 @@ void Plot::mouseDownSolution(int x, int y)
graphTriple[0]->getLimits(xl, yl);
graphTriple[0]->toPoint(x_pos, yl[1], pnt);

if ((x - pnt.x()) * (x - pnt.x()) + (y - pnt.y()) * (y - pnt.y()) < 5*5) {
double dx = x - pnt.x(), dy = y - pnt.y();
if (dx * dx + dy * dy < 5 * 5) {
setCursor(Qt::SizeHorCursor);

dragState = 20;
refresh();

return;
}
}
Expand Down Expand Up @@ -1582,7 +1581,8 @@ void Plot::mouseDownObservation(int x, int y)
graphSingle->getLimits(xl, yl);
graphSingle->toPoint(x_pos, yl[1], pnt);

if ((x - pnt.x()) * (x - pnt.x()) + (y - pnt.y()) * (y - pnt.y()) < 5*5) {
double dx = x - pnt.x(), dy = y - pnt.y();
if (dx * dx + dy * dy < 5 * 5) {
setCursor(Qt::SizeHorCursor);
dragState = 20;
refresh();
Expand Down
2 changes: 1 addition & 1 deletion app/qtapp/rtkpost_qt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ set_target_properties(rtkpost_qt PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)
install(TARGETS rtkget_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
install(TARGETS rtkpost_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
if (UNIX)
install(FILES rtkpost_qt.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
install(FILES ../icon/rtkpost.png DESTINATION ${XDG_APPS_PIXMAPS_DIR})
Expand Down
2 changes: 1 addition & 1 deletion app/qtapp/srctblbrows_qt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ set_target_properties(srctblbrows_qt PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)
install(TARGETS rtkget_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
install(TARGETS srctblbrows_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
if (UNIX)
install(FILES srctblbrows_qt.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
install(FILES ../icon/srctblbrows.png DESTINATION ${XDG_APPS_PIXMAPS_DIR})
Expand Down
2 changes: 1 addition & 1 deletion app/qtapp/strsvr_qt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ set_target_properties(strsvr_qt PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)
install(TARGETS rtkget_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
install(TARGETS strsvr_qt RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
if (UNIX)
install(FILES strsvr_qt.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
install(FILES ../icon/strsvr.png DESTINATION ${XDG_APPS_PIXMAPS_DIR})
Expand Down
2 changes: 1 addition & 1 deletion app/winapp/rtknavi/mondlg.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1918,7 +1918,7 @@ void __fastcall TMonitorDialog::SetRtcmSsr(void)
"Phase Bias(m)"
};
int i,width[]={
25,30,30,30,30,25,15,115,50,50,50,50,50,50,50,50,50,50,180,180
25,30,30,30,30,25,15,115,50,50,50,50,50,50,50,50,50,50,250,250
};
char *code;

Expand Down
47 changes: 38 additions & 9 deletions app/winapp/rtknavi/navimain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,8 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
CmdEna[i][0]=CmdEna[i][1]=CmdEna[i][2]=0;
}
TimeSys=SolType=PlotType1=PlotType2=FreqType1=FreqType2=0;
TrkType1=TrkType2=0;
TrkScale1=TrkScale2=5;
TrkType1=TrkType2=TrkType3=TrkType4=0;
TrkScale1=TrkScale2=TrkScale3=TrkScale4=8;
BLMode1=BLMode2=BLMode3=BLMode4=0;
PSol=PSolS=PSolE=Nsat[0]=Nsat[1]=0;
NMapPnt=0;
Expand Down Expand Up @@ -1011,6 +1011,34 @@ void __fastcall TMainForm::BtnShrink2Click(TObject *Sender)
TrkScale2++;
UpdatePlot();
}
// callback on button expand-2 ----------------------------------------------
void __fastcall TMainForm::BtnExpand3Click(TObject *Sender)
{
if (TrkScale3<=0) return;
TrkScale3--;
UpdatePlot();
}
// callback on button shrink-3 ----------------------------------------------
void __fastcall TMainForm::BtnShrink3Click(TObject *Sender)
{
if (TrkScale3>=MAXTRKSCALE) return;
TrkScale3++;
UpdatePlot();
}
// callback on button expand-4 ----------------------------------------------
void __fastcall TMainForm::BtnExpand4Click(TObject *Sender)
{
if (TrkScale4<=0) return;
TrkScale4--;
UpdatePlot();
}
// callback on button shrink-4 ----------------------------------------------
void __fastcall TMainForm::BtnShrink4Click(TObject *Sender)
{
if (TrkScale4>=MAXTRKSCALE) return;
TrkScale4++;
UpdatePlot();
}
// callback on button-rtk-monitor -------------------------------------------
void __fastcall TMainForm::BtnMonitorClick(TObject *Sender)
{
Expand Down Expand Up @@ -1292,6 +1320,7 @@ void __fastcall TMainForm::SvrStart(void)
strsetopt(stropt);
strcpy(rtksvr.cmd_reset,ResetCmd.c_str());
rtksvr.bl_reset=MaxBL;
//rtksvrinit(&rtksvr); // uncomment this to make RTKNAVI repeatable from run to run (useful for debug)

// start rtk server
if (!rtksvrstart(&rtksvr,SvrCycle,SvrBuffSize,strs,(const char **)paths,Format,
Expand Down Expand Up @@ -2037,12 +2066,12 @@ void __fastcall TMainForm::DrawTrk(TImage *plot)
10000.0
};
double *x,*y,xt,yt,sx,sy,ref[3],pos[3],dr[3],enu[3];
int i,j,k,n=0,type,scl;
int i,j,k,n=0;

trace(3,"DrawTrk\n");

type=plot->Name=="Plot1"?TrkType1 :TrkType2 ;
scl =plot->Name=="Plot1"?TrkScale1:TrkScale2;
int type=plot->Name=="Plot1"?TrkType1:plot->Name=="Plot2"?TrkType2:plot->Name=="Plot3"?TrkType3:TrkType4;
int scl =plot->Name=="Plot1"?TrkScale1:plot->Name=="Plot2"?TrkScale2:plot->Name=="Plot3"?TrkScale3:TrkScale4;

x=new double[SolBuffSize];
y=new double[SolBuffSize];
Expand Down Expand Up @@ -2611,10 +2640,10 @@ void __fastcall TMainForm::LoadOpt(void)
TrkType2 =ini->ReadInteger("setting","trktype2", 0);
TrkType3 =ini->ReadInteger("setting","trktype3", 0);
TrkType4 =ini->ReadInteger("setting","trktype4", 0);
TrkScale1 =ini->ReadInteger("setting","trkscale1", 5);
TrkScale2 =ini->ReadInteger("setting","trkscale2", 5);
TrkScale3 =ini->ReadInteger("setting","trkscale3", 5);
TrkScale4 =ini->ReadInteger("setting","trkscale4", 5);
TrkScale1 =ini->ReadInteger("setting","trkscale1", 8);
TrkScale2 =ini->ReadInteger("setting","trkscale2", 8);
TrkScale3 =ini->ReadInteger("setting","trkscale3", 8);
TrkScale4 =ini->ReadInteger("setting","trkscale4", 8);
FreqType1 =ini->ReadInteger("setting","freqtype1", 0);
FreqType2 =ini->ReadInteger("setting","freqtype2", 0);
FreqType3 =ini->ReadInteger("setting","freqtype3", 0);
Expand Down
8 changes: 4 additions & 4 deletions app/winapp/rtknavi/navimain.dfm
Original file line number Diff line number Diff line change
Expand Up @@ -707,7 +707,7 @@ object MainForm: TMainForm
B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
OnClick = BtnExpand2Click
OnClick = BtnExpand3Click
end
object BtnShrink3: TSpeedButton
Left = 1
Expand Down Expand Up @@ -735,7 +735,7 @@ object MainForm: TMainForm
B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
OnClick = BtnShrink2Click
OnClick = BtnShrink3Click
end
end
object Panel25: TPanel
Expand Down Expand Up @@ -833,7 +833,7 @@ object MainForm: TMainForm
B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
OnClick = BtnExpand2Click
OnClick = BtnExpand4Click
end
object BtnShrink4: TSpeedButton
Left = 1
Expand Down Expand Up @@ -861,7 +861,7 @@ object MainForm: TMainForm
B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
OnClick = BtnShrink2Click
OnClick = BtnShrink4Click
end
end
end
Expand Down
4 changes: 4 additions & 0 deletions app/winapp/rtknavi/navimain.h
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,10 @@ class TMainForm : public TForm
void __fastcall BtnShrink1Click(TObject *Sender);
void __fastcall BtnExpand2Click(TObject *Sender);
void __fastcall BtnShrink2Click(TObject *Sender);
void __fastcall BtnExpand3Click(TObject *Sender);
void __fastcall BtnShrink3Click(TObject *Sender);
void __fastcall BtnExpand4Click(TObject *Sender);
void __fastcall BtnShrink4Click(TObject *Sender);
void __fastcall BtnMarkClick(TObject *Sender);
void __fastcall Panel24Resize(TObject *Sender);
void __fastcall Panel25Resize(TObject *Sender);
Expand Down
8 changes: 5 additions & 3 deletions app/winapp/rtkplot/plotmain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1519,8 +1519,9 @@ void __fastcall TPlot::MouseDownSol(int X, int Y)

GraphG[0]->GetLim(xl,yl);
GraphG[0]->ToPoint(x,yl[1],pnt);

if ((X-pnt.x)*(X-pnt.x)+(Y-pnt.y)*(Y-pnt.y)<25) {

double dx = X - pnt.x, dy = Y - pnt.y;
if (dx * dx + dy * dy < 5 * 5) {
Screen->Cursor=crSizeWE;
Drag=20;
Refresh();
Expand Down Expand Up @@ -1568,7 +1569,8 @@ void __fastcall TPlot::MouseDownObs(int X, int Y)
GraphR->GetLim(xl,yl);
GraphR->ToPoint(x,yl[1],pnt);

if ((X-pnt.x)*(X-pnt.x)+(Y-pnt.y)*(Y-pnt.y)<25) {
double dx = X - pnt.x, dy = Y - pnt.y;
if (dx * dx + dy * dy < 5 * 5) {
Screen->Cursor=crSizeWE;
Drag=20;
Refresh();
Expand Down
9 changes: 7 additions & 2 deletions src/ephemeris.c
Original file line number Diff line number Diff line change
Expand Up @@ -808,8 +808,13 @@ extern void satposs(gtime_t teph, const obsd_t *obs, int n, const nav_t *nav,
time[i]=timeadd(obs[i].time,-pr/CLIGHT);

/* satellite clock offset from precise products or broadcast ephemeris */
if (ephopt==EPHOPT_PREC&&nav->nc>0) {
if(!pephclk(time[i],obs[i].sat,nav,&dt,NULL)) {

// Note: this uses as input the estimated satellite clock time without
// correction but the precise clock corrections are wrt GPST. The
// satellite clock drift over this small period is considered
// negligible to the clock offset lookup here.
if (ephopt == EPHOPT_PREC) {
if (!pephclk(time[i], obs[i].sat, nav, &dt, NULL)) {
trace(3,"no precise clock %s sat=%2d\n",time2str(time[i],tstr,3),obs[i].sat);
continue;
}
Expand Down
Loading