我将一些实体添加到一个块中,并将引用添加到viewport中。 我编写了“new blockReference(blockName).boxmin”, 它将捕获异常“NullReferenceException”。 我还需要添加什么代码? 或者它有另一种方法来获得组实体boxsize。
答案 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
中需要块的原因是BoxMin
和BoxMax
与世界轴对齐,因此需要知道世界上的位置以便计算框。如果您轮播或翻译BlockReference
,则BoxMin
和BoxMax
会有所不同。