DDS Fortran application "PtNorms2grid" program
PtNorms2grid reads a description of a gridded surface from a dds
dictionary and a PtNorms file and creates gridded surfaces in any dds
supported format. (usp, segy, disco, cube, sep, ...)
The structure of the gridded surfaces is specified by dx, dy, x0, y0, nx,
and ny defined in the dds dictionaries named.
The gridded surfaces consist of two conformable files.
One file contains grids of values and the other grids of masks describing
the values. If several PtNorms data points lay on the same grid point,
then multiple valued gridded surfaces will be generated.
The value and mask dictionaries may be cross linked by including
link:value= value.dict_filename in the mask dictionayr and
link:mask= mask.dict_filename in the value dictionary.
See also: grid2Ptnorms, 3ddepth2time, 3dtime2depth, PTNFilter_win
Options:
originally_gridded - assume that the data comes from rays traced from
vertices of a regular, rectangluar grid nxo by nyo with origin x0o, y0o
and increments dxo, dyo specified in the dds dictionarys named.
And interpolate
from the PtNorms z or t values that were close on the original grid
to get values on the target grid. If the target grid point lays inside
a triangle formed by PtNorms points that were originally adjacent,
then use triangular interpolation. Otherwise use the value at
the closest point. We assume that the nearest neighbors of interior
point (i,j) of the original grid are (i+1,j), (i-1,j), (i,j+1), and
(i,j-1). And we compute indices into a linear array equivalent to the
2d array using the mapping (i,j)==> i+(j-1)*nx.
originally_triangulated= trisurf_name
Assume that the PtNorms file came from tracing rays from the
triangulated surface specified by trisurf_name. If the grid point
is inside a triangle formed by PtNorms points that came from a
triangle of the original trisurf, then interpolate to get the grid
value. Otherwise use the value at the closest point.
The indices of the trisurf vertices are assumed to be the same
as the indices of the PtNorms rays.
nearest_neighbor - Associate the PtNorms data with the grid point closest
to the PtNorms coordinates (but within dxo and dyo of the grid point).
(Should I use dx and dy instead??)
type= [time | depth] put the time or depth values onto the output grid