Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int NumI = InputSCube.NumSamplesIJK.I;
- int NumJ = InputSCube.NumSamplesIJK.J;
- int NumK = InputSCube.NumSamplesIJK.K;
- double[, ,] InputSeismicCubeData = new double[NumI, NumJ, NumK];
- for (int i = 0; i < NumI; i++)
- {
- for (int j = 0; j < NumJ; j++)
- {
- ITrace Trace = InputSCube.GetTrace(i, j);
- for (int k = 0; k < NumK; k++)
- {
- InputSeismicCubeData[i, j, k] = Trace[k];
- }
- }
- }
- using (ITransaction trans1 = DataManager.NewTransaction())
- {
- SeismicCollection Sc = InputSCube.SeismicCollection;
- trans1.Lock(Sc);
- if (Sc.CanCreateSeismicCube(InputSCube))
- {
- SeismicCube NewCube = Sc.CreateSeismicCube(InputSCube, InputSCube.Template);
- if (!NewCube.IsWritable)
- {
- PetrelLogger.ErrorBox("Unable to Write to the Cloned Cube");
- return;
- }
- for (int i = 0; i < NumI; i++)
- {
- for (int j = 0; j < NumJ; j++)
- {
- ITrace trace = NewCube.GetTrace(i, j);
- for (int k = 0; k < trace.Length; k++)
- {
- trace[k] = (float)OutPutSeismicCubeData[i, j, k];
- }
- }
- }
- trans1.Commit();
- arguments.OutputSCube = NewCube;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement