Picking Library

Picking Record Functions

The following functions are defined for creating and manipulating a Picking Record.

Function NameDescription
XintPickingRecordConnectWidgetAssociates Picking Record and a Seismic widget.
XintPickingRecordCreateCreates an empty Picking Record and associates it with a Seismic widget.
XintPickingRecordDestroyDestroys a Picking Record and other associated data structures.
XintPickingRecordDisconnectWidgetDisassociates a Picking Record from a Seismic widget.
XintPickingRecordHorizonCallbackAssociates horizon callback procedures with a Picking Record.
XintPickingRecordPointCallbackAssociates point callback procedures with a Picking Record.
XintPickingRecordSetCurrentHorizonSets a horizon to be the current horizon.
XintPickingRecordSetCurrentHorizonSymbolSizeSets the symbol size for the points in the current horizon.
XintPickingRecordSetCurrentHorizonSymbolPixelSets the symbol color (using a pixel value) for the points in the current horizon.
XintPickingRecordSetDefaultLineWidthSets the default line width for lines used to display a newly created horizon.
XintPickingRecordSetDefaultSymbolSizeSets the default size for the symbols drawn at the points in a newly created horizon.
XintPickingRecordSetHorizonMoveCallbackAssociates a horizon move callback procedure with a Picking Record.
XintPickingRecordSetPointMoveCallbackAssociates a point move callback procedure with a Picking Record.
XintPickingRecordSetRedrawFlagTo turn on/off redrawing of horizons.
XintPickingRecordSetSnapCallbackAssociates a snap callback procedure with a Picking Record.
XintPickingRecordSetSnapModeSets the snap mode for creating or moving a point.
XintPickingRecordSetTrackerCallbackAssociates a tracker callback procedure with a Picking Record.
XintPickingRecordSetTrackModeSets the tracker mode used when automatic picking is performed.
XintPickingRecordSetTranslationsAssociates translation table with a Picking Record.


XintPickingRecordConnectWidget

This function associates a Seismic widget with a Picking Record so that picks can be performed on the seismic section displayed in the Seismic widget.

     void XintPickingRecordConnectWidget (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
WidgetwidgetSpecifies the widget ID of a Seismic widget to be associated with the Picking Record.


XintPickingRecordCreate

This function creates a Picking Record associated with a widget, and optionally adds a translation table to the Picking Record.

     XintPickingRecord * XintPickingRecordCreate (...)

Widgetwidget Widget ID of any widget (if the widget is a Seismic widget then the picking record will be connected to it).
XtTranslationstranslationsSpecifies a parsed translation table to be installed for widget.
intmodeSpecifies how the translation table is to be installed.

The following constants are used to specify the value for mode:

Constant NameDescription
XintOVERRIDE_TRANSLATIONSOverrides the translations currently defined for widget.
XintAUGMENT_TRANSLATIONSAugments the translations currently defined for widget.
XintREPLACE_TRANSLATIONSReplaces the translations currently defined for widget.


XintPickingRecordDestroy

This function destroys a Picking Record and all associated Horizon and Point data structures.

     void XintPickingRecordDestroy (XintPickingRecord *picking_record)

where picking_record specifies a pointer to a Picking Record.


XintPickingRecordDisconnectWidget

This function disassociates a Seismic widget that is currently connected with a Picking Record so that picks can no longer be performed on the seismic section displayed in the Seismic widget.

     void XintPickingRecordDisconnectWidget (...)

XintPickingRecord *picking_recordPointer to a Picking Record associated with the Seismic widget to be disconnected.
WidgetwidgetSpecifies the widget ID of a Seismic widget that is currently associated with the Picking Record.


XintPickingRecordHorizonCallback

This function associates Horizon callback procedures with a Picking Record.

     void  XintPickingRecordHorizonCallback (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
XtCallbackProchorizon_select_callbackSpecifies the callback to be executed when a horizon is selected.
XtPointerhorizon_select_callback_dataSpecifies the address of the optional application defined data structure to be passed to horizon_select_callback.
XtCallbackProchorizon_add_callbackSpecifies the callback to be executed when a horizon is added.
XtPointerhorizon_add_callback_dataSpecifies the address of the optional application defined data structure to be passed to horizon_add_callback.
XtCallbackProchorizon_delete_callbackSpecifies the callback to be executed when a horizon is deleted.
XtPointerhorizon_delete_callback_dataSpecifies the address of the optional application defined data structure to be passed to horizon_deleted_callback.

If any of the callback procedures or associated callback data structures are not defined, specify NULL as the value of those arguments.


XintPickingRecordPointCallback

This function associates point callback procedures with a Picking Record.

     void XintPickingRecordPointCallback (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
XtCallbackProcpoint_select_callbackSpecifies the callback to be executed when a point is selected.
XtPointerpoint_select_callback_dataSpecifies the address of the optional application defined data structure to be passed to point_select_callback.
XtCallbackProcpoint_add_callback Specifies the callback to be executed when a point is added.
XtPointerpoint_add_callback_dataSpecifies the address of the optional application defined data structure to be passed to point_add_callback.
XtCallbackProcpoint_delete_callbackSpecifies the callback to be executed when a point is deleted.
XtPointerpoint_delete_callback_dataSpecifies the address of the optional application defined data structure to be passed to point_deleted_callback.

If any of the callback procedures or associated callback data structures is not defined, specify NULL as the value of those arguments.


XintPickingRecordSetCurrentHorizon

This function sets a horizon to become the current horizon.

     void XintPickingRecordSetCurrentHorizon (...)

XintPickingRecord *picking_recordPointer to a Picking Record associated with the horizon to be selected as the current horizon.
XintHorizon *horizonPointer to the horizon to be selected as the current horizon.


XintPickingRecordSetCurrentHorizonSymbolSize

This function sets the symbol size for the points in the current horizon. If the symbol size is set to be larger than the normal symbol size for the horizon's points then the points in the current horizon will appear to be highlighted.

     void XintPickingRecordSetCurrentHorizonSymbolSize (...)

XintPickingRecord *picking_recordPointer to a Picking Record associated with the horizon to have the size of its point symbols changed.
intsymbol_sizeSpecifies the size of the point symbols in terms of pixels or specify XintSYMBOL_AUTO_SIZED for a symbol size to be automatically determined.


XintPickingRecordSetCurrentHorizonSymbolPixel

This function sets the color of the symbols used to represent the points in the current horizon. If a color is used that is different from the color normally used for the point symbols, then the current horizon will appear to be highlighted.

     void XintPickingRecordSetCurrentHorizonSymbolPixel (...)

XintPickingRecord *picking_recordPointer to a Picking Record associated with the current horizon to have the color of its point symbols changed.
intpixelSpecifies the color of the point symbols in terms of pixel value.

You can specify XintHORIZON_PIXEL to indicate that the current horizon symbol color should be the same as the normal color for the horizon.


XintPickingRecordSetDefaultLineWidth

This function sets the default line width for the lines connecting the points in a newly created horizon.

     void XintPickingRecordSetDefaultLineWidth (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
intline_widthSpecifies the default line width in pixel units.


XintPickingRecordSetDefaultSymbolSize

This function sets the default size for the symbols representing points in a newly created horizon.

     void XintPickingRecordSetDefaultSymbolSize (...)

XintPickingRecord *picking_recordPointer to a Picking Record whose default symbol size is to be changed.
intsymbol_sizeSpecifies the default symbol size in pixel units.


XintPickingRecordSetHorizonMoveCallback

This function associates a horizon move callback procedure with a PickingRecord. The callback procedure registered using this function will be called by the HorizonEndMove action routine when the end-user moves a horizon.

     void XintPickingRecordSetHorizonMoveCallback (...)

XintPickingRecord *picking_recordPointer to a Picking Record whose default symbol size is to be changed.
XtCallbackProcmove_horizon_callbackSpecifies the callback to be executed when a horizon is moved.
XtPointermove_horizon_callback_dataSpecifies the address of the optional application data structure to be passed to move_horizon_callback or NULL.


XintPickingRecordSetPointMoveCallback

This function associates a point move callback procedure with a PickingRecord. The callback procedure registered using this function will be called by the PointEndMove action routine when the end-user moves a point.

     void XintPickingRecordSetPointMoveCallback (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
XtCallbackProcmove_point_callbackSpecifies the callback to be executed when a point is moved.
XtPointermove_point_callback_dataSpecifies the address of the optional application data structure to be passed to move_point_callback or NULL.


XintPickingRecordSetRedrawFlag

This function prevents redrawing of horizons when the widget's window is updated.

     void XintPickingRecordSetRedrawFlag (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
Booleanredraw_flagSet to False to disable drawing of horizons and to True to enable drawing.


XintPickingRecordSetSnapCallback

This function associates a snap callback procedure with a Picking Record. The default snap callback procedure implemented by the Picking Library will be replaced by the callback procedure specified with this function.

     void XintPickingRecordSetSnapCallback (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
XtCallbackProcsnap_callbackSpecifies the callback to be executed when a point is snapped.
XtPointersnap_callback_dataSpecifies the address of the optional application defined data structure to be passed to snap_callback.

If callback data structure is not defined, then specify NULL as the value of that argument.


XintPickingRecordSetSnapMode

This function sets the snap mode used to snap a point to a location when a new point is inserted into a horizon and when the function XintPickingRecordPointSnap is used to snap a point.

     void XintPickingRecordSetSnapMode (...)

XintPickingRecord *picking_recordPointer to a Picking Record whose snap mode is to be changed.
intsnap_modeSpecifies the snap mode as one of the constants below.

The following defined constants are used to specify the value for snap_mode:

Defined ConstantDescription
XintNO_SNAP (default)Specifies that no snap operation is to be performed.
XintSNAP_MAXIMUMSpecifies that the point should be snapped to the local maximum amplitude on the trace.
XintSNAP_MINIMUMSpecifies that the point should be snapped to the local minimum amplitude on the trace.
XintSNAP_MP_ZERO_CROSSINGSpecifies that the point should be snapped to the location where the trace crosses from the negative side of the zero amplitude line to the positive side.
XintSNAP_PM_ZERO_CROSSINGSpecifies that the point should be snapped to the location where the trace crosses from the positive side of the zero amplitude line to the negative side.


XintPickingRecordSetTrackerCallback

This function associates with a Picking Record a tracker callback procedure to be called when the automatic picking action is activated. There is a default tracker callback procedure implemented by the Picking Library that will be replaced by the callback procedure specified with this function.

     void XintPickingRecordSetTrackerCallback (...)

XintPickingRecord *picking_recordPointer to a Picking Record.
XtCallbackProctracker_callbackSpecifies the callback to be executed when the AutoPick action is executed.
XtPointertracker_callback_dataSpecifies the address of the optional application defined data structure to be passed to tracker_callback.

If the callback data structure is not defined, then specify NULL as the value of that argument. Specify NULL as the value of argument tracker_callback to restore the default tracker callback procedure implemented by the Picking Library.


XintPickingRecordSetTrackMode

This function sets the track mode used when the Tracker is activated by an AutoPick action routine.

     void XintPickingRecordSetTrackMode (...)

XintPickingRecord *picking_recordPointer to a Picking Record whose track mode is to be changed.
inttrack_modeSpecifies the track mode as one of the constants below.
intprojection_modeSpecifies the projection mode as one of the constants described below.
intmax_dipSpecifies the time range (in time increments) above and below the projected point on the next trace in which the Tracker will search for the next picked point. The default value is 8.

The following defined constants are to be used when specifying the value for track_mode:

Defined ConstantDescription
XintTRACK_MAXIMUM (default)Specifies that the next point picked by the Tracker in the horizon should be at the local maximum amplitude on the next trace.
XintTRACK_MINIMUMSpecifies that the next point picked by the Tracker in the horizon should be at the local minimum amplitude on the next trace.
XintTRACK_MP_ZERO_CROSSINGSpecifies that the next point picked by the Tracker in the horizon should be at the location where the next trace crosses from the negative side of the zero amplitude line to the positive side.
XintTRACK_PM_ZERO_CROSSINGSpecifies that the next point picked by the Tracker in the horizon should be at the location where the next trace crosses from the negative side of the zero amplitude line to the positive side.

The following defined constants are to be used when specifying the value for projection_mode:

Defined ConstantDescription
XintLINEAR_PROJECTION (default)Specifies that the Tracker begins its search in the next trace at the point of intersection between the next trace and a line projected through the last two points in the horizon.
XintHORIZONTAL_PROJECTIONSpecifies that the Tracker begins its search in the next trace at the point with the same time value as the current point in the horizon.


XintPickingRecordSetTranslations

This function installs the specified translations in each widget currently connected to a specified Picking Record.

     void XintPickingRecordSetTranslations (...)

XintPickingRecord *picking_recordPointer to a Picking Record associated with one or more widget whose translations will be modified.
XtTranslationstranslationsSpecifies a parsed translation table to be installed for each widget associated with picking_record.
intmodeSpecifies how the translation table is to be installed using one of the constants listed below.

The following constants can be used to specify the value for mode:

Defined ConstantDescription
XintOVERRIDE_TRANSLATIONSOverrides the translations currently defined for the widgets associated with the Picking Record.
XintAUGMENT_TRANSLATIONSAugments the translations currently defined for the widgets associated with the Picking Record.
XintREPLACE_TRANSLATIONSReplaces the translations currently defined for the widgets associated with the Picking Record.