GXSEGYREADER class

class GXSEGYREADER(handle=0)[source]

GXSEGYREADER class.

Convert 3D SEG Y files to voxel or database.

__init__(handle=0)[source]

Initialize self. See help(type(self)) for accurate signature.

add_trace_filter(offset, value1, value2, constraint)[source]

Add a filter based on trace header fields.

Parameters
  • offset (int) – byte-offset of the field to filter by.

  • value1 (int) – If constraint is EQUAL and NOT_EQUAL, this is the value to compare the field to. For IN_RANGE and NOT_IN_RANGE, this is the minimum.

  • value2 (int) – If constraint is EQUAL and NOT_EQUAL, this parameter is ignored For IN_RANGE and NOT_IN_RANGE, this is the maximum.

  • constraint (str) – How the values are compared. Can be “IN_RANGE”, “NOT_IN_RANGE”, “EQUAL” or “NOT_EQUAL”.

New in version 9.7.

License: Geosoft End-User License

check_sane_inline_crossline(is_sane, possibly_swapped, only_one_line)[source]

Checks if the currently-configured inline and crossline fields seem sensible.

Parameters
  • is_sane (bool_ref) – True is inline/crossline values seem sensible.

  • possibly_swapped (bool_ref) – True if it looks like the inline and crossline fields are swapped.

  • only_one_line (bool_ref) – True if it looks like the file only contains one line. This may mean the file is 2D.

New in version 9.6.

License: Geosoft End-User License

clear_trace_dummy_value()[source]

Disables the trace dummy value.

New in version 9.7.

License: Geosoft End-User License

clear_trace_filters()[source]

Remove all active trace filters.

New in version 9.7.

License: Geosoft End-User License

clear_user_range()[source]

Clears inline and crossline ranges to clamp to.

New in version 9.7.

License: Geosoft End-User License

clear_user_z_range()[source]

Clears Z-range to clamp to, disbling z-clamping.

New in version 9.7.

License: Geosoft End-User License

count_traces_that_pass_filters()[source]

Count the number of traces that pass the currently-configured trace filters.

Return type

int

New in version 9.7.

License: Geosoft End-User License

estimate_number_of_traces(data_type_name, number_of_samples)[source]

Get the number of traces that would be in the SEG-Y file, given a trace length and data type.

Parameters
  • data_type_name (str) – The name of a supported data type.

  • number_of_samples (int) – The number of samples to return

Return type

int

New in version 9.6.

License: Geosoft End-User License

export_files()[source]

Exports contents of SEG Y file to voxel and/or database.

New in version 9.7.

License: Geosoft End-User License

export_voxel_and_database(voxel_filename, gdb_filename)[source]

Exports contents of SEG Y file to voxel and/or database.

Parameters
  • voxel_filename (str) – Output voxel file name

  • gdb_filename (str) – Output database file name

New in version 9.6.

License: Geosoft End-User License

get_binary_header()[source]

Get the SEG Y file’s binary header.

Returns

class:’LTB’ containing three columns

the field name, offset, and value. The value column will be in text form, suitable for display to the end user.

Return type

GXLTB

New in version 9.6.

License: Geosoft End-User License

get_clip_xy_extents(is_clip_valid, x_min, x_max, y_min, y_max)[source]

Gets the X,Y extents to clip the voxel.

Parameters

New in version 9.7.

License: Geosoft End-User License

get_endianess()[source]

Returns true if the file is little endian. false if it is big endian.

Return type

bool

New in version 9.6.

License: Geosoft End-User License

get_field_configuration()[source]

Returns information on the data in the trace headers.

Returns

:class:’LTB’ containing trace header information

Return type

GXLTB

New in version 9.6.

License: Geosoft End-User License

get_georeferencing()[source]

Returns the georeferencing of the voxel that would be exported with the current configuration.

Return type

GXIPJ

New in version 9.6.

License: Geosoft End-User License

get_inline_and_crossline_azimuths(inline_azimuth, crossline_azimuth)[source]

Get the inline and crossline azimuths, in degrees

Parameters
  • inline_azimuth (float_ref) – Inline azimuth

  • crossline_azimuth (float_ref) – Crossline azimuth

New in version 9.6.

License: Geosoft End-User License

get_is_3d()[source]

Returns true if the file is 3D false if it is 2D.

Return type

bool

New in version 9.7.

License: Geosoft End-User License

get_last_sample_at(value)[source]

Returns the depth of the last sample in the traces, in the units specified by SetZUnits()

Parameters

value (float_ref) – Out-parameter containing the depth of the last sample in the traces.

New in version 9.6.

License: Geosoft End-User License

classmethod get_num_trace_data_types()[source]

Returns the number of supported trace data types.

Return type

int

New in version 9.6.

License: Geosoft End-User License

get_possible_z_units(z_units_list)[source]

Get a list of the possible values that can be passed to SetZUnits(). The values returned by this function depend on what the z-type is set to.

Parameters

z_units_list (str_ref) – List of possible z-units,separated by newlines

New in version 9.6.

License: Geosoft End-User License

get_sample_interval(sample_interval)[source]

Returns the sample interval of the trace data.

Parameters

sample_interval (float_ref) – output parameter for sample interval

New in version 9.6.

License: Geosoft End-User License

get_sample_interval_configuration(which_header, location)[source]

Specifies where the sample interval comes from: can be a field in the binary file header, a field in the trace header, or a value specified by the user.

Parameters
  • which_header (str_ref) – Out-parameter indicating which header contains the trace length: “file_header” “trace_header”, or “none”

  • location (int_ref) – Out-parameter containing the byte offset of the field within the header (if applicable)

New in version 9.6.

License: Geosoft End-User License

get_slice_filenames(filename_list)[source]

Returns a list of the filenames of the XY slices that will be exported.

Parameters

filename_list (str_ref) – List of filenames,separated by newlines

New in version 9.7.

License: Geosoft End-User License

get_text_header(text)[source]

Get the SEG Y file’s text header.

Parameters

text (str_ref) – The text header contents.

New in version 9.6.

License: Geosoft End-User License

get_tie_point(i, x, y, in_line, cross_line)[source]

Return the currently-active tie points. If SetTiePoints() has not already been called, then the returned points will be the automatically-selected ones.

Parameters
  • i (int) – Tie point indexl must be 0, 1 or 2.

  • x (float_ref) – x-coordinate

  • y (float_ref) – inline-coordinate

  • in_line (int_ref) – Tie point index.

  • cross_line (int_ref) – crossline-coordinate

New in version 9.6.

License: Geosoft End-User License

get_trace_count(count)[source]

Get the number of traces in the SEG Y file

Parameters

count (int_ref) – Trace count

New in version 9.6.

License: Geosoft End-User License

get_trace_data(trace_number)[source]

Get the SEG Y trace file header data for a particular starting trace

Parameters

trace_number (int) – Which trace to read

Returns

:class:’VV’ containing the data from the trace header

Return type

GXVV

New in version 9.10.

License: Geosoft End-User License

get_trace_data_at(data_type_name, number_of_samples, current_trace, is_big_endian)[source]

Get the SEG Y trace file data for a particular data type, number of samples, and starting trace

Parameters
  • data_type_name (str) – The name of a supported data type.

  • number_of_samples (int) – The number of samples to return

  • current_trace (int) – The trace to start at

  • is_big_endian (int) – 1 for big endian, 0 for small

Returns

:class:’VV’ containing the data from the traces

Return type

GXVV

New in version 9.6.

License: Geosoft End-User License

get_trace_data_type(name)[source]

Get the data type of the trace data. This will match one of the names rfeturned by GetTraceDataTypeName()

Parameters

name (str_ref) – The name of data type.

New in version 9.6.

License: Geosoft End-User License

classmethod get_trace_data_type_display_name(index, name)[source]

Get a string, suitable for displaying to the user, describing the type returned by passing the same index value to GetTraceDataTypeName()

Parameters
  • index (int) – Which name to return.

  • name (str_ref) – The display name of a supported data type.

New in version 9.6.

License: Geosoft End-User License

classmethod get_trace_data_type_name(index, name)[source]

Get the name of one of the available data types. These are the names used as identifiers in this API. To get a name suitable for displaying to the user, use `GetTraceDataTypeDisplayName() instead.

Parameters
  • index (int) – Which name to return. Call this function for each value between 0 and the value returned by GetNumTraceTypes() to get a full list of the available types.

  • name (str_ref) – The name of a supported data type.

New in version 9.6.

License: Geosoft End-User License

get_trace_header_as_json(trace_number, text)[source]

Return the contents of a trace header as JSON.

Parameters
  • trace_number (int) – Which trace to read

  • text (str_ref) – Trace header as JSON.

New in version 9.10.

License: Geosoft End-User License

get_trace_header_at(data_type_name, number_of_samples, current_trace, is_big_endian)[source]

Get the SEG Y trace file header data for a particular starting trace

Parameters
  • data_type_name (str) – The name of a supported data type.

  • number_of_samples (int) – The number of samples to return

  • current_trace (int) – The trace to start at

  • is_big_endian (int) – 1 for big endian, 0 for small

Returns

:class:’VV’ containing the data from the trace header

Return type

GXVV

New in version 9.6.

License: Geosoft End-User License

get_trace_length()[source]

Returns the number of data samples per trace.

Return type

int

New in version 9.6.

License: Geosoft End-User License

get_trace_length_configuration(which_header, location)[source]

Specifies where the trace length comes from: can be a field in the binary file header, a field in the trace header, or a value specified by the user.

Parameters
  • which_header (str_ref) – Out-parameter indicating which header contains the trace length: “file_header” “trace_header”, or “none”

  • location (int_ref) – Out-parameter containing the byte offset of the field within the header (if applicable)

New in version 9.6.

License: Geosoft End-User License

get_voxel_cell_size(x, y, z)[source]

Get the cell size of the voxel that would be exported with the current configuration.

Parameters

New in version 9.6.

License: Geosoft End-User License

get_voxel_dimensions(x, y, z)[source]

Get the size of the voxel that would be exported with the current configuration.

Parameters
  • x (int_ref) – Voxel size along X

  • y (int_ref) – Voxel size along Y

  • z (int_ref) – Voxel size along Z

New in version 9.6.

License: Geosoft End-User License

get_xy_units(xy_units)[source]

Get the currently-specified xy-units.

Parameters

xy_units (str_ref) – The name of the units.

New in version 9.6.

License: Geosoft End-User License

get_z_offset(z_offset)[source]

Returns the z-offset (time delay) of the trace data. Positive values correspond to a deeper top-of-trace; negative values to a higher top-of-trace.

Parameters

z_offset (float_ref) – The z offset/time delay

New in version 9.6.

License: Geosoft End-User License

get_z_offset_configuration(which_header, location)[source]

Specifies where the z-offset (time delay) comes from: can be a field in the binary file header, a field in the trace header, or a value specified by the user.

Parameters
  • which_header (str_ref) – Out-parameter indicating which header contains the z offset: “file_header” “trace_header”, or “none”

  • location (int_ref) – Out-parameter containing the byte offset of the field within the header (if applicable)

New in version 9.6.

License: Geosoft End-User License

get_z_offset_units(z_units)[source]

Get the currently-specified units for the z offset.

Parameters

z_units (str_ref) – List of possible z-units,separated by newlines

New in version 9.6.

License: Geosoft End-User License

get_z_type(z_type)[source]

Indicate if the z-dimension is time or depth.

Parameters

z_type (str_ref) – Either “DEPTH” or “TIME”.

New in version 9.6.

License: Geosoft End-User License

get_z_units(z_units)[source]

Get the currently-specified z-units.

Parameters

z_units (str_ref) – The name of the z-units.

New in version 9.6.

License: Geosoft End-User License

is_null()[source]

Check if this is a null (undefined) instance

Returns

True if this is a null (undefined) instance, False otherwise.

Return type

bool

classmethod list_binary_header_fields()[source]

Returns the names and offsets of the fields in the binary header.

Return type

GXLTB

New in version 9.6.

License: Geosoft End-User License

classmethod list_trace_header_fields()[source]

Returns the names and offsets of the fields in the trace header.

Return type

GXLTB

New in version 9.6.

License: Geosoft End-User License

classmethod null()[source]

A null (undefined) instance of GXSEGYREADER

Returns

A null GXSEGYREADER

Return type

GXSEGYREADER

classmethod open_file(filename)[source]

Opens a 3D SEG Y file.

Parameters

filename (str) – File name

Returns

GXSEGYREADER handle, terminates if creation fails.

Return type

GXSEGYREADER

New in version 9.6.

License: Geosoft End-User License

override_navigation_2d(shotpoint_coords, x_coordinates, y_coordinates)[source]

Specify the X/Y coordinates of the traces, instead of using values from the trace headers.

Parameters
  • shotpoint_coords (GXVV) – The shotpoint coordinates, asread from the trace headers.

  • x_coordinates (GXVV) – The x-coordinates

  • y_coordinates (GXVV) – The y-coordinates

New in version 9.7.

License: Geosoft End-User License

recalculate_georeferencing()[source]

Recalculate georeferencing; call after configuration has changed.

New in version 9.6.

License: Geosoft End-User License

reset_tie_points()[source]

Discard user-supplied tie points and auto-choose new ones..

New in version 9.6.

License: Geosoft End-User License

scan_file()[source]

Scans the SEG Y file, and attempts to guess the layout.

New in version 9.6.

License: Geosoft End-User License

set_auto_voxel_cell_size_xy()[source]

Set the XY cell size of the voxel that would be exported to the dimensions calculated from the tie points..

New in version 9.6.

License: Geosoft End-User License

set_crossline_slice_indices(indices)[source]

Which crossline slices to export to a section grid.

Parameters

indices (GXVV) – Which crossline values to export.

New in version 9.7.

License: Geosoft End-User License

set_endianess(is_little_endian)[source]

Set the endianess of the file.

Parameters

is_little_endian (bool) – True is file is little endian, false for big endian.

New in version 9.6.

License: Geosoft End-User License

set_field_configuration(configuration)[source]

Sets the interpretation of the fields in the SEG Y file, and specifies which fields should be exported to GDB.

Parameters

configuration (GXLTB) – GXLTB following the same format as returned by GetFieldConfiguration().

New in version 9.6.

License: Geosoft End-User License

set_gdb_output_filename(filename)[source]

Exports contents of SEG Y file to a database.

Parameters

filename (str) – Output database file name

New in version 9.7.

License: Geosoft End-User License

set_georeferencing(ipj)[source]

Sets the georeferencing of the voxel that would be exported with the current configuration.

New in version 9.6.

License: Geosoft End-User License

set_inline_slice_indices(indices)[source]

Which inline slices to export to a section grid.

Parameters

indices (GXVV) – Which inline values to export.

New in version 9.7.

License: Geosoft End-User License

set_is_3d(is_3d)[source]

Specify if the input SEG-Y file is 3D or 2D.

Parameters

is_3d (bool) – True is file is 3D, false for 2D.

New in version 9.7.

License: Geosoft End-User License

set_sample_interval_configuration(which_header, location, location_or_value)[source]

Specifies where the sample interval comes from: can be a field in the binary file header, a field in the trace header, or a value specified by the user.

Parameters
  • which_header (str) – Which header contains the sample interval: “file_header”, “trace_header” or “none”

  • location (int) – If which_header is “file_header” or “trace_header”, then this parameter is the offset of the field containing the sample interval. If which_header is “none”, thenthis parameter is ignored.

  • location_or_value (float) – If which_header is “file_header” or “trace_header”, then this parameter is ignored. If which_header is “none”, thenthis parameter is the sample interval.

New in version 9.6.

License: Geosoft End-User License

set_section_output_filename(filename)[source]

Exports contents of SEG Y file to a crooked section.

Parameters

filename (str) – Output crooked section file name

New in version 9.7.

License: Geosoft End-User License

set_slice_output_prefix(prefix)[source]

Exports inline or crossline slices to a section grid.

Parameters

prefix (str) – Output section file name prefix

New in version 9.7.

License: Geosoft End-User License

set_tie_point(i, x, y, in_line, cross_line)[source]

Set the currently-active tie points. If SetTiePoints() has not already been called, then the returned points will be the automatically-selected ones.

Parameters
  • i (int) – Tie point index.

  • x (float) – x-coordinate

  • y (float) – inline-coordinate

  • in_line (int) – Tie point index.

  • cross_line (int) – crossline-coordinate

New in version 9.6.

License: Geosoft End-User License

set_trace_data_type(name)[source]

Set the data type of the trace data. This must match one of the names returned by GetTraceDataTypeName()

Parameters

name (str) – The name of data type.

New in version 9.6.

License: Geosoft End-User License

set_trace_dummy_value(dummy_value)[source]

Sets the trace dummy value.

Parameters

dummy_value (float) – trace dummy value

New in version 9.7.

License: Geosoft End-User License

set_trace_length_configuration(which_header, location_or_value)[source]

Specifies where the trace length comes from: can be a field in the binary file header, a field in the trace header, or a value specified by the user.

Parameters
  • which_header (str) – Which header contains the trace length: “file_header”, “trace_header” or “none”

  • location_or_value (int) – If which_header is “file_header” or “trace_header”, then this parameter is the offset of the field containing the trace length. If which_header is “none”, then this parameter is the actual trace length.

New in version 9.6.

License: Geosoft End-User License

set_user_crossline_range(crossline_min, crossline_max, crossline_stride, factor)[source]

Sets crossline-range to clamp to.

Parameters
  • crossline_min (int) – crossline minimum

  • crossline_max (int) – crossline maximum

  • crossline_stride (int) – crossline stride

  • factor (int) – Decimation factor

New in version 9.7.

License: Geosoft End-User License

set_user_inline_range(inline_min, inline_max, inline_stride, factor)[source]

Sets inline-range to clamp to.

Parameters
  • inline_min (int) – inline minimum

  • inline_max (int) – inline maximum

  • inline_stride (int) – inline stride

  • factor (int) – Decimation factor

New in version 9.7.

License: Geosoft End-User License

set_user_voxel_cell_size_xy(x, y)[source]

Set the XY cell size of the voxel that would be exported with the current configuration.

Parameters
  • x (float) – Voxel cell size along X

  • y (float) – Voxel cell size along Y

New in version 9.6.

License: Geosoft End-User License

set_user_z_range(z_min, z_max)[source]

Sets Z-range to clamp to.

Parameters
  • z_min (float) – Z minimum

  • z_max (float) – Z maximum

New in version 9.7.

License: Geosoft End-User License

set_voxel_output_filename(filename)[source]

Exports contents of SEG Y file to voxel.

Parameters

filename (str) – Output voxel file name

New in version 9.7.

License: Geosoft End-User License

set_z_decimation(factor)[source]

Sets Z decimation factor.

Parameters

factor (int) – Decimation factor

New in version 9.7.

License: Geosoft End-User License

set_z_offset_configuration(which_header, location, value)[source]

Specifies where the z-offset (time delay) comes from: can be a field in the binary file header, a field in the trace header, or a value specified by the user.

Parameters
  • which_header (str) – Which header contains the z offset: “file_header”, “trace_header” or “none”

  • location (int) – If which_header is “file_header” or “trace_header”, then this parameter is the offset of the field. If which_header is “none”, then this parameter is ignored.

  • value (float) – If which_header is “file_header” or “trace_header”, then this parameter is ignored. If which_header is “none”, then this parameter is the z offset.

New in version 9.6.

License: Geosoft End-User License

set_z_offset_units(z_units)[source]

Set the units that the z-offset is in.

Parameters

z_units (str) – The Z units. Must be one of the strings returned by GetPossibleZUnits().

New in version 9.6.

License: Geosoft End-User License

set_z_slice_indices(indices)[source]

Which z slices to export to a section grid.

Parameters

indices (GXVV) – Which z values to export.

New in version 9.7.

License: Geosoft End-User License

set_z_type(z_type)[source]

Specify if the z-dimension is time or depth.

Parameters

z_type (str) – Either “DEPTH” or “TIME”.

New in version 9.6.

License: Geosoft End-User License

set_z_units(z_units)[source]

Set the z-units.

Parameters

z_units (str) – The Z units. Must be one of the strings returned by GetPossibleZUnits().

New in version 9.6.

License: Geosoft End-User License