Trace Axes
A XSection window supports multiple levels of axes for the trace annotation. Each axis corresponds to a particular trace header field. The code sample creates two axes for a XSection window xsectionWindow and a ISeismicLayer layer.
import com.interactive.intviewerapi.windows.TraceAxis;
import com.interactive.intviewerapi.data.IKeyRange;
import com.interactive.intviewerapi.data.IFieldDesc;
...
// remove the current axes
TraceAxis[] axes = xsectionWindow.getAllTraceAxis();
for (TraceAxis axis: axes) {
xsectionWindow.removeTraceAxis(axis.getFieldName());
}
List<IKeyRange> keyRangeList = layer.getData().getDataRange();
// Add axis for INLINE
IFieldDesc field = layer.getReader().getTraceHeaderField(keyRangeList.get(0).getName());
if (field != null) {
TraceAxis axis = new TraceAxis(field);
xsectionWindow.addTraceAxis(axis);
}
// Add axis for XLINE
field = layer.getReader(). getTraceHeaderField(keyRangeList.get(1).getName());
if (field != null) {
TraceAxis axis = new TraceAxis(field);
xsectionWindow.addTraceAxis(axis);
}