Добрый день!
[B]Подскажите, пожалуйста, каким образом можно использовать так называемую "именнованную" геометрию для создания сопряжений в сборке?[/B] Интересует именно механизм сопряжений, т.к. существует задача перенести текущие наработки из одного САПР в T-Flex.
Ниже указан примерный код для создания сопряжения, происходит падение на строчке [B]mate.Element1 = ....[/B] Притом, что правая часть выражения нормально приводится к типу Geometry. Возникает [B]NullReferenceException[/B], причем единственным объектом, который равен null
в этой строке, является свойство [B]Element1[/B].
[CODE]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);
}[/CODE]
[B]Подскажите, пожалуйста, каким образом можно использовать так называемую "именнованную" геометрию для создания сопряжений в сборке?[/B] Интересует именно механизм сопряжений, т.к. существует задача перенести текущие наработки из одного САПР в T-Flex.
Ниже указан примерный код для создания сопряжения, происходит падение на строчке [B]mate.Element1 = ....[/B] Притом, что правая часть выражения нормально приводится к типу Geometry. Возникает [B]NullReferenceException[/B], причем единственным объектом, который равен null
в этой строке, является свойство [B]Element1[/B].
[CODE]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);
}[/CODE]