如何从海燕中的其他表面生成表面



我有一个任务是在Petrel中创建一个新的表面。我应该生成两个表面的平均值,并使用 Ocean for Petrel 软件从中创建一个新表面(如中间表面)。

这可能吗?我从哪里开始?我也希望链接到对我有帮助的资源。

Seslie,

您可以从集合创建曲面,调用方法CreateRegularHeightFieldSurface(字符串名称,空间LatticeInfo lattice);

将属性创建为 RegularHeightFieldSurface.CreateProperty(模板模板);

然后,您可以通过 I 和 J 索引访问曲面和属性的节点。表面的 X 和 Y 将从晶格自动生成。

Point2[]  world = …
var surf = c.CreateRegularHeightFieldSurface(name, oldSurf.SpatialLattice, PetrelProject.PrimaryProject.CoordinateReferenceSystem));
SurfaceProperty prop = surf.CreateProperty(PetrelProject.WellKnownTemplates.PetrophysicalGroup.Pressure);
prop.Name = " Pressure ";
var sizeIj = surf.SpatialLattice.OriginalLattice.Arrays.SizeIJ;
for (int i = 0; i < sizeIj.I; i++)
{
    for (int j = 0; j < sizeIj.J; j++)
    {
        surf[i, j] = …;
        prop[i, j] = …;
    }
}

安装 Ocean SDK,它附带示例和文档。您应该使用的类是 RegularHeightFieldSurface - 在 Ocean.chm 中检查。有一个名为PreStackSample的示例,其中包含有关如何创建此类表面的示例。

最新更新