The "seismicfindfirsttrace" web service will find the first traces from a seismic data set based on a series of seismic queries.
A typical URL is http://myserver.mycompany.com/INTGeoServer/json/seismicfindfirstrace?json={"file":"cdp_stack.xgy","query":{"queryType":"seismicRange","keys":[{"name":"INLINE","min":170.0,"max":170.0,"step":1.0},{"name":"XLINE","min":200.0,"max":500.0,"step":1.0},{"name":"Time","min":0.0,"max":5.996,"step":0.004}],"traceOrder":1},"firstTraceQueries":[{"keys":[{"name":"INLINE","min":170.0,"max":170.0,"step":1.0},{"name":"XLINE","min":200.0,"max":500.0,"step":1.0}]},{"keys":[{"name":"XLINE","min":400.0,"max":400.0,"step":1.0}]}]}
Here is a formatted version of the JSON object passd as a parameter:
{
"file":"cdp_stack.xgy",
"query":{
"queryType":"seismicRange",
"keys":[
{
"name":"INLINE",
"min":170.0,
"max":170.0,
"step":1.0
},
{
"name":"XLINE",
"min":200.0,
"max":500.0,
"step":1.0
},
{
"name":"Time",
"min":0.0,
"max":5.996,
"step":0.004
}
],
"traceOrder":1
},
"firstTraceQueries":[
{
"keys":[
{
"name":"INLINE",
"min":170.0,
"max":170.0,
"step":1.0
},
{
"name":"XLINE",
"min":200.0,
"max":500.0,
"step":1.0
}
]
},
{
"keys":[
{
"name":"XLINE",
"min":400.0,
"max":400.0,
"step":1.0
}
]
}
]
}
The following parameters are available:
file: the relative path of the specified dataset. This is a required parameter
query: a query that will be run on the dataset. This query is performed on the dataset before any of the firstTraceQueries are run. See the seismicquery web service for more information.
firstTraceQueries: A series of seismic range queries that are run on the dataset to determine the first traces. Since each of these queries is a Seismic Range Query, only the keys are specified.
Here is an example response based on the above url.
{"traceIndexes":[0,12]}
The traceIndexes represent the first traces found by each firstTraceQueries query.
If the specified file doesn't match a valid seismic dataset, no JSON response will be provided. The HTTP response will only show a "File or Directory Not Found" (error 404) in its headers.
The HTTP header also contains a "dataHash" header. The hash code can be used to track whether the data file underlying the specified dataset has been changed since the last time it was loaded from disk.