21 const char BADALLOC[] =
"Failed to allocate memory for a GeographicLib::MagneticModel";
26 if ( m_pMagneticModel !=
NULL )
28 delete m_pMagneticModel;
29 m_pMagneticModel =
NULL;
38 if ( name ==
nullptr )
throw gcnew GeographicErr(
"name cannot be a null pointer.");
39 if ( path ==
nullptr )
throw gcnew GeographicErr(
"path cannot be a null pointer.");
40 if ( earth ==
nullptr )
throw gcnew GeographicErr(
"earth cannot be a null pointer.");
53 catch ( std::bad_alloc )
57 catch (
const std::exception& err )
67 if ( name ==
nullptr )
throw gcnew GeographicErr(
"name cannot be a null pointer.");
68 if ( path ==
nullptr )
throw gcnew GeographicErr(
"path cannot be a null pointer.");
77 catch ( std::bad_alloc )
81 catch (
const std::exception& err )
89 [System::Runtime::InteropServices::Out]
double% Bx,
90 [System::Runtime::InteropServices::Out]
double% By,
91 [System::Runtime::InteropServices::Out]
double% Bz)
102 [System::Runtime::InteropServices::Out]
double% Bx,
103 [System::Runtime::InteropServices::Out]
double% By,
104 [System::Runtime::InteropServices::Out]
double% Bz,
105 [System::Runtime::InteropServices::Out]
double% Bxt,
106 [System::Runtime::InteropServices::Out]
double% Byt,
107 [System::Runtime::InteropServices::Out]
double% Bzt)
109 double lx, ly, lz, lxt, lyt, lzt;
126 catch ( std::bad_alloc )
128 throw gcnew GeographicErr(
"Failed to allocate memory for a MagneticCircle in MagneticModel::Circle");
134 [System::Runtime::InteropServices::Out]
double%
H,
135 [System::Runtime::InteropServices::Out]
double%
F,
136 [System::Runtime::InteropServices::Out]
double%
D,
137 [System::Runtime::InteropServices::Out]
double%
I)
139 double lh, lf, ld, li;
149 double Bxt,
double Byt,
double Bzt,
150 [System::Runtime::InteropServices::Out]
double%
H,
151 [System::Runtime::InteropServices::Out]
double%
F,
152 [System::Runtime::InteropServices::Out]
double%
D,
153 [System::Runtime::InteropServices::Out]
double%
I,
154 [System::Runtime::InteropServices::Out]
double% Ht,
155 [System::Runtime::InteropServices::Out]
double% Ft,
156 [System::Runtime::InteropServices::Out]
double% Dt,
157 [System::Runtime::InteropServices::Out]
double% It)
159 double lh, lf, ld, li, lht, lft, ldt, lit;
161 lh, lf, ld, li, lht, lft, ldt, lit);
Math::real MaxTime() const
static void FieldComponents(double Bx, double By, double Bz, [System::Runtime::InteropServices::Out] double% H, [System::Runtime::InteropServices::Out] double% F, [System::Runtime::InteropServices::Out] double% D, [System::Runtime::InteropServices::Out] double% I)
MagneticCircle Circle(double t, double lat, double h)
Math::real MinHeight() const
const GeographicLib::MagneticModel * m_pMagneticModel
Header for NETGeographicLib::MagneticModel class.
System::IntPtr GetUnmanaged()
Header for NETGeographicLib::NETGeographicLib objects.
.NET wrapper for GeographicLib::MagneticCircle.
const std::string & Description() const
Math::real MajorRadius() const
Exception class for NETGeographicLib.
Header for GeographicLib::MagneticCircle class.
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy y set format x g set format y g set format x2 g set format y2 g set format z g set angles radians set nogrid set key title set key left top Right noreverse box linetype linewidth samplen spacing width set nolabel set noarrow set nologscale set logscale x set set pointsize set encoding default set nopolar set noparametric set set set set surface set nocontour set clabel set mapping cartesian set nohidden3d set cntrparam order set cntrparam linear set cntrparam levels auto set cntrparam points set size set set xzeroaxis lt lw set x2zeroaxis lt lw set yzeroaxis lt lw set y2zeroaxis lt lw set tics in set ticslevel set tics set mxtics default set mytics default set mx2tics default set my2tics default set xtics border mirror norotate autofreq set ytics border mirror norotate autofreq set ztics border nomirror norotate autofreq set nox2tics set noy2tics set timestamp bottom norotate set rrange [*:*] noreverse nowriteback set trange [*:*] noreverse nowriteback set urange [*:*] noreverse nowriteback set vrange [*:*] noreverse nowriteback set xlabel matrix size set x2label set timefmt d m y n H
Model of the earth's magnetic field.
static System::String DefaultMagneticPath()
.NET wrapper for GeographicLib::Geocentric.
static void FieldComponents(real Bx, real By, real Bz, real &H, real &F, real &D, real &I)
const std::string & MagneticModelDirectory() const
static System::String UnmanagedToManaged(const std::string &s)
Header for NETGeographicLib::Geocentric class.
MagneticModel(System::String^ name, System::String^ path, Geocentric^ earth)
static const Geocentric & WGS84()
Header for GeographicLib::MagneticModel class.
static std::string DefaultMagneticName()
const std::string & MagneticModelName() const
Math::real Flattening() const
Math::real MaxHeight() const
static System::String DefaultMagneticName()
static std::string ManagedToUnmanaged(System::String^ s)
const std::string & MagneticFile() const
.NET wrapper for GeographicLib::MagneticModel.
Math::real MinTime() const
static std::string DefaultMagneticPath()
void Field(double t, double lat, double lon, double h, [System::Runtime::InteropServices::Out] double% Bx, [System::Runtime::InteropServices::Out] double% By, [System::Runtime::InteropServices::Out] double% Bz)
Annotation for function names.
const std::string & DateTime() const
Container::iterator get(Container &c, Position position)
Header for NETGeographicLib::MagneticCircle class.
MagneticCircle Circle(real t, real lat, real h) const