Я добавляю объект в блок и добавляю ссылку в область просмотра. Я закодировал «new blockReference(blockName).boxmin», и он поймает исключение «NullReferenceException». какой еще код мне нужно добавить? Или у него есть другой способ получить размер окна группового объекта.
Как получить boxmin от BlockReference в поле зрения
Ответы (1)
Выполнение 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
будут другими.
person
Franck
schedule
08.06.2018