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);
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)
MagneticCircle Circle(double t, double lat, double h)
Math::real MinTime() 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 & MagneticModelName() const
Math::real Flattening() const
Exception class for NETGeographicLib.
Header for GeographicLib::MagneticCircle class.
static std::string ManagedToUnmanaged(System::String^s)
Math::real MajorRadius() const
Math::real MaxHeight() const
Math::real MaxTime() const
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()
MagneticCircle Circle(real t, real lat, real h) const
const std::string & MagneticFile() const
.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 & Description() 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)
MagneticModel(System::String^name, System::String^path, Geocentric^earth)
static System::String UnmanagedToManaged(const std::string &s)
Header for NETGeographicLib::Geocentric class.
static const Geocentric & WGS84()
Header for GeographicLib::MagneticModel class.
static std::string DefaultMagneticName()
string::const_iterator It
static System::String DefaultMagneticName()
.NET wrapper for GeographicLib::MagneticModel.
const std::string & DateTime() const
static std::string DefaultMagneticPath()
Math::real MinHeight() const
Annotation for function names.
Container::iterator get(Container &c, Position position)
const std::string & MagneticModelDirectory() const
Header for NETGeographicLib::MagneticCircle class.