/// <inheritdoc /> public void Dispose() { if (Interlocked.CompareExchange(ref _disposed, 1, 0) == 0) { SceneryAPI.DestroyProbe(_ref); _ref = default; } }
public unsafe (ProbeResult result, ProbeInfo info) ProbeTerrain(float x, float y, float z) { var info = new ProbeInfo { structSize = Unsafe.SizeOf <ProbeInfo>() }; var result = SceneryAPI.ProbeTerrainXYZ(_ref, x, y, x, &info); return(result, info); }
public static float MagneticToTrue(float headingDegreesMagnetic) => SceneryAPI.DegMagneticToDegTrue(headingDegreesMagnetic);
public static float TrueToMagnetic(float headingDegreesTrue) => SceneryAPI.DegTrueToDegMagnetic(headingDegreesTrue);
public static float Get(double latitude, double longitude) => SceneryAPI.GetMagneticVariation(latitude, longitude);
public Probe(ProbeType probeType = ProbeType.XplmProbeY) { _ref = SceneryAPI.CreateProbe(probeType); }