删除已实现的裁剪多维数据集问题

时间:2012-11-29 10:37:03

标签: ocean

我有一个代码执行以下操作:给出一个输入地震立方体,创建一个尺寸减半的裁剪版本,然后实现这个裁剪的立方体。

该插件似乎工作正常。但是,如果我尝试使用Petrel删除已实现的多维数据集(右键单击已实现的多维数据集并选择“删除...”),则多维数据集将保留在Petrel输入树中。

我甚至可以打开它的设置对话框,但我无法在任何窗口中显示它,也无法访问其上下文菜单。除此之外,它下面的任何内联,Xline或时间片的值都会变为似乎是坐标值。

这是一个错误还是我做错了什么?

这是我的代码(立方体是输入地震立方体):

        Index3 start = new Index3(0, 0, 0);
        Index3 end = new Index3(cube.NumSamplesIJK / 2);

        SeismicCube croppedCube;
        using (var t = DataManager.NewTransaction())
        {
            t.Lock(cube);
            VolumeCroppingInfo croppingInfo = new VolumeCroppingInfo(start, end, new Index2(0, 0));
            croppedCube = SeismicSystem.SeismicCroppingService.CreateVirtualCroppedVolume(
                cube, croppingInfo);
            t.Commit();
        }

        var realizeWorkstep =
            PetrelSystem.WorkflowEditor.RegisteredWorksteps.Processes.GetGeophysicsGroup().RealizeSeismic;
        RealizeSeismicArguments realizeArgPack =
            (RealizeSeismicArguments)realizeWorkstep.CreateArgumentPackage(DataManager.DataSourceManager);

        realizeArgPack.RealizationQuality = RealizationBitNumber.Bit32;
        realizeArgPack.Seismic = croppedCube;
        realizeArgPack.UseExactSourceValue = true;

       realizeWorkstep.InvokeSimple(realizeArgPack);

1 个答案:

答案 0 :(得分:3)

如果保存项目,然后在Petrel中执行删除,则会删除裁剪的已实现多维数据集。在保存项目之前,它不会被删除。我通过使用您的代码创建插件来复制您记录的行为。

我不确定它是否是一个bug,但怀疑它可能是一个功能。当然,您的代码不是问题。

也许更多Petrel savy人会评论Petrel在这里使用的逻辑。