gps_pvt 0.1.4 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -2
- data/Rakefile +9 -4
- data/exe/gps_pvt +4 -4
- data/ext/gps_pvt/Coordinate/Coordinate_wrap.cxx +5 -3
- data/ext/gps_pvt/GPS/GPS_wrap.cxx +4229 -508
- data/ext/gps_pvt/SylphideMath/SylphideMath_wrap.cxx +7 -5
- data/ext/ninja-scan-light/tool/navigation/GPS.h +5 -4
- data/ext/ninja-scan-light/tool/navigation/GPS_Solver.h +62 -15
- data/ext/ninja-scan-light/tool/navigation/GPS_Solver_Base.h +6 -5
- data/ext/ninja-scan-light/tool/navigation/QZSS.h +62 -0
- data/ext/ninja-scan-light/tool/navigation/RINEX.h +571 -113
- data/ext/ninja-scan-light/tool/navigation/SBAS.h +2330 -0
- data/ext/ninja-scan-light/tool/navigation/SBAS_Solver.h +329 -0
- data/ext/ninja-scan-light/tool/swig/GPS.i +197 -65
- data/lib/gps_pvt/receiver.rb +311 -132
- data/lib/gps_pvt/version.rb +1 -1
- metadata +9 -7
- data/gps_pvt.gemspec +0 -57
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b49839b2da332d30293697783114af90a441fe477dfb85e17ac166c381970836
|
4
|
+
data.tar.gz: 4227cc97c2bdd1c5994a598ab1723c9bad86331478f0cc60aaa8435302bc9838
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a81577f725c28dfe949342076d10826eb14238ec791bc58bc8b7797715b5bc6d6b014fd10454e8f2c56a66ac6b6d03965c79f9e94f39ac65b193fa815cd83924
|
7
|
+
data.tar.gz: f7eb1d3c1eb4e4ef61d8ada6b12efe1a0d4a9c167d87fc6d2ee7f829dcddb0f3b3c50c6a47a58b08cce57ca220283e2f73af24fafed27da3bb112e4af71a5efd
|
data/README.md
CHANGED
@@ -72,8 +72,9 @@ receiver.parse_rinex_obs(rinex_obs_file){|pvt, meas| # per epoch
|
|
72
72
|
}
|
73
73
|
|
74
74
|
# Customize solution
|
75
|
-
receiver.solver.
|
76
|
-
receiver.solver.
|
75
|
+
receiver.solver.gps_options.exclude(prn) # Exclude satellite; the default is to use every satellite if visible
|
76
|
+
receiver.solver.gps_options.include(prn) # Discard previous setting of exclusion
|
77
|
+
receiver.solver.gps_options.elevation_mask = Math::PI / 180 * 10 # example 10 [deg] elevation mask
|
77
78
|
receiver.solver.hooks[:relative_property] = proc{|prn, rel_prop, rcv_e, t_arv, usr_pos, usr_vel|
|
78
79
|
# control weight per satellite per iteration
|
79
80
|
weight, range_c, range_r, rate_rel_neg, *los_neg = rel_prop # relative property
|
data/Rakefile
CHANGED
@@ -30,6 +30,8 @@ namespace :git do
|
|
30
30
|
"sparse-checkout set" + (<<-__SPARSE_PATTERNS__).lines.collect{|str| str.chomp.gsub(/^ */, ' ')}.join,
|
31
31
|
/tool/param/
|
32
32
|
/tool/navigation/GPS*
|
33
|
+
/tool/navigation/SBAS*
|
34
|
+
/tool/navigation/QZSS*
|
33
35
|
/tool/navigation/coordinate.h
|
34
36
|
/tool/navigation/EGM.h
|
35
37
|
/tool/navigation/MagneticField.h
|
@@ -69,12 +71,15 @@ task :swig do
|
|
69
71
|
sh [:make, :clean, wrapper,
|
70
72
|
"BUILD_DIR=#{out_dir}",
|
71
73
|
"SWIGFLAGS='-c++ -ruby -prefix \"GPS_PVT::\"#{" -D__MINGW__" if ENV["MSYSTEM"]}'"].join(' ')
|
72
|
-
|
73
|
-
|
74
|
-
|
74
|
+
open(wrapper, 'r+'){|io|
|
75
|
+
lines = io.read.lines.collect{|line|
|
76
|
+
line.sub(/rb_require\(\"([^\"]+)\"\)/){ # from camel to underscore downcase style
|
77
|
+
"rb_require(\"#{$1.sub('GPS_PVT', 'gps_pvt')}\")"
|
78
|
+
}
|
75
79
|
}
|
80
|
+
io.rewind
|
81
|
+
io.write(lines.join)
|
76
82
|
}
|
77
|
-
open(wrapper, 'w').write(lines.join)
|
78
83
|
}
|
79
84
|
}
|
80
85
|
end
|
data/exe/gps_pvt
CHANGED
@@ -11,12 +11,12 @@ File format is automatically determined based on its extention described in abov
|
|
11
11
|
Note: YY = last two digit of year.
|
12
12
|
__STRING__
|
13
13
|
|
14
|
-
options =
|
14
|
+
options = []
|
15
15
|
|
16
16
|
# check options
|
17
17
|
ARGV.reject!{|arg|
|
18
18
|
next false unless arg =~ /^--([^=]+)=?/
|
19
|
-
options[$1.to_sym
|
19
|
+
options << [$1.to_sym, $']
|
20
20
|
true
|
21
21
|
}
|
22
22
|
|
@@ -27,11 +27,11 @@ ARGV.each{|arg|
|
|
27
27
|
|
28
28
|
rcv = GPS_PVT::Receiver::new(options)
|
29
29
|
|
30
|
-
puts
|
30
|
+
puts rcv.header
|
31
31
|
|
32
32
|
# parse RINEX NAV
|
33
33
|
ARGV.reject!{|arg|
|
34
|
-
next false unless arg =~ /\.\d{2}
|
34
|
+
next false unless arg =~ /\.\d{2}[nq]$/
|
35
35
|
rcv.parse_rinex_nav(arg)
|
36
36
|
}
|
37
37
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/* ----------------------------------------------------------------------------
|
2
2
|
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
-
* Version 4.0.
|
3
|
+
* Version 4.0.2
|
4
4
|
*
|
5
5
|
* This file is not intended to be easily readable and contains a number of
|
6
6
|
* coding conventions designed to improve portability and efficiency. Do not make
|
@@ -1612,6 +1612,8 @@ SWIGRUNTIMEINLINE char *
|
|
1612
1612
|
SWIG_Ruby_MangleStr(VALUE obj)
|
1613
1613
|
{
|
1614
1614
|
VALUE stype = rb_iv_get(obj, "@__swigtype__");
|
1615
|
+
if (NIL_P(stype))
|
1616
|
+
return NULL;
|
1615
1617
|
return StringValuePtr(stype);
|
1616
1618
|
}
|
1617
1619
|
|
@@ -1872,7 +1874,7 @@ static VALUE mCoordinate;
|
|
1872
1874
|
#define SWIG_RUBY_THREAD_END_BLOCK
|
1873
1875
|
|
1874
1876
|
|
1875
|
-
#define SWIGVERSION
|
1877
|
+
#define SWIGVERSION 0x040002
|
1876
1878
|
#define SWIG_VERSION SWIGVERSION
|
1877
1879
|
|
1878
1880
|
|
@@ -2205,7 +2207,7 @@ SWIG_ruby_failed(VALUE SWIGUNUSEDPARM(arg1), VALUE SWIGUNUSEDPARM(arg2))
|
|
2205
2207
|
}
|
2206
2208
|
|
2207
2209
|
|
2208
|
-
/*@SWIG:/usr/share/
|
2210
|
+
/*@SWIG:/usr/local/share/swig/4.0.2/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
|
2209
2211
|
SWIGINTERN VALUE SWIG_AUX_NUM2DBL(VALUE arg)
|
2210
2212
|
{
|
2211
2213
|
VALUE *args = (VALUE *)arg;
|