 | CVVUOffsetCorrect Method |
Correct locations based on heading and fixed offset.
Namespace:
Geosoft.Desktop.GXNet
Assembly:
geosoft.desktop.gxnet (in geosoft.desktop.gxnet.dll) Version: 2024.2.0.25
Syntaxpublic static void OffsetCorrect(
CVV vv_xi,
CVV vv_yi,
double dist,
int heading,
CVV v_vxo,
CVV v_vyo
)
public static void OffsetCorrect(
CVV vv_xi,
CVV vv_yi,
double dist,
int heading,
CVV v_vxo,
CVV v_vyo
)
Public Shared Sub OffsetCorrect (
vv_xi As CVV,
vv_yi As CVV,
dist As Double,
heading As Integer,
v_vxo As CVV,
v_vyo As CVV
)
Public Shared Sub OffsetCorrect (
vv_xi As CVV,
vv_yi As CVV,
dist As Double,
heading As Integer,
v_vxo As CVV,
v_vyo As CVV
)
public:
static void OffsetCorrect(
CVV^ vv_xi,
CVV^ vv_yi,
double dist,
int heading,
CVV^ v_vxo,
CVV^ v_vyo
)
public:
static void OffsetCorrect(
CVV^ vv_xi,
CVV^ vv_yi,
double dist,
int heading,
CVV^ v_vxo,
CVV^ v_vyo
)
static member OffsetCorrect :
vv_xi : CVV *
vv_yi : CVV *
dist : float *
heading : int *
v_vxo : CVV *
v_vyo : CVV -> unit
static member OffsetCorrect :
vv_xi : CVV *
vv_yi : CVV *
dist : float *
heading : int *
v_vxo : CVV *
v_vyo : CVV -> unit
Parameters
- vv_xi
- Type: GeoEngine.Core.GXNetCVV
Input X - vv_yi
- Type: GeoEngine.Core.GXNetCVV
Input Y - dist
- Type: SystemDouble
Offset distance - heading
- Type: SystemInt32
<define>VVU_OFFSET</define> - v_vxo
- Type: GeoEngine.Core.GXNetCVV
Output X - v_vyo
- Type: GeoEngine.Core.GXNetCVV
Output Y
Remarks
In many applications, measurements are taken with an instrument which
is towed behind, or pushed ahead of where the locations are recorded.
Use this function to estimate the actual location of the instrument.
The method determines the heading along the line, using a "thinned"
version of the line. The degree of thinning is based on the size of the
offset; the larger the offset, the greater the distance between sample
locations used to construct the thinned lined used for determining headings.
The thinned line is splined at a frequency greater than the sample
frequency, and the heading at any given point is determined from the
vector formed by the closest two points on the splined line. The
correction (behind, in front, left or right) is determined with respect
to the heading, and added to the original location.
IF this method fails, no dummies, no duplicated locations, no reversals
are produced.
The algorithm:
1. Determine average distance between each point = D
2. Smoothing interval = MAX(2*D, Offset distance) = I
3. Thin input points to be at least the smoothing interval I apart from each other.
4. Smoothly re-interpolate the thinned points at five times the
original average distance D.
5. For each input point, calculate the bearing using the nearest points
on the smoothed curve
See Also