如何在视野中获取BlockReference的boxmin

时间:2018-06-08 03:22:40

标签: eyeshot

我将一些实体添加到一个块中,并将引用添加到viewport中。 我编写了“new blockReference(blockName).boxmin”, 它将捕获异常“NullReferenceException”。 我还需要添加什么代码? 或者它有另一种方法来获得组实体boxsize。

1 个答案:

答案 0 :(得分:0)

执行new blockReference(blockName).BoxMin不会重新生成块。 获取已插入视口中的块并检查该对象边界框。

让我们说块名是" Block1"你可以这样做:

var br = viewportLayout1.Entities.OfType<BlockReference>()
                                 .FirstOrDefault(b => b.BlockName == "Block1");

if(br != null)
{
    var boxMin = br.BoxMin;
    var boxMax = br.BoxMax;
}

ViewportLayout中需要块的原因是BoxMinBoxMax与世界轴对齐,因此需要知道世界上的位置以便计算框。如果您轮播或翻译BlockReference,则BoxMinBoxMax会有所不同。