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); }