Добрый день!
Подскажите, пожалуйста, каким образом можно использовать так называемую "именнованную" геометрию для создания сопряжений в сборке? Интересует именно механизм сопряжений, т.к. существует задача перенести текущие наработки из одного САПР в T-Flex.
Ниже указан примерный код для создания сопряжения, происходит падение на строчке mate.Element1 = .... Притом, что правая часть выражения нормально приводится к типу Geometry. Возникает NullReferenceException, причем единственным объектом, который равен null
в этой строке, является свойство Element1.
Подскажите, пожалуйста, каким образом можно использовать так называемую "именнованную" геометрию для создания сопряжений в сборке? Интересует именно механизм сопряжений, т.к. существует задача перенести текущие наработки из одного САПР в T-Flex.
Ниже указан примерный код для создания сопряжения, происходит падение на строчке mate.Element1 = .... Притом, что правая часть выражения нормально приводится к типу Geometry. Возникает NullReferenceException, причем единственным объектом, который равен null
в этой строке, является свойство Element1.
Код |
---|
var fragments = _document.GetFragments3D(); if (fragments.Any()) { var lastFragment = fragments.Last(); var mate = new Mate(_document); mate.Type = Mate.MateType.Distance; mate.DistanceValue = 5; mate.Element1 = (Geometry)((dynamic)fragment.GetFragmentDocument(false).GetObjectByName("Низ")).Topol; mate.Element2 = (Geometry)((dynamic)lastFragment.GetFragmentDocument(false).GetObjectByName("Верх")).Topol; mate.Regenerate(true); } |