Перейти к публикации

NXOpen 8.0 .NET C# Значение переменной ${mom_tool_extension_length}


KlimTV1987

Рекомендованные сообщения

Всем доброго времени дня!

 

Можно ли используя NXOpen и C# получить значение переменной ${mom_tool_extension_length}?

 

Пользователи формируют карту наладки с помощью workshop. Мне программно было необходимо получить все данные этой карты из модели NX. Удалось получить всё, кроме ${mom_tool_extension_length}. http://cccp3d.ru/topic/80262-nxopen-80-net-перебрать-оснастку-инструмент-и-патроны-из/?p=747582

 

К сожалению я не нашел этого параметра в свойствах оснастки. Есть у кого-нибудь идеи, как можно получить значение желаемой переменной?

Изменено пользователем KlimTV1987
Ссылка на сообщение
Поделиться на других сайтах


а что это за параметр и где в NX он задается?


Насколько я понял поискав на житаке - это фактическая длина инструмента,
т.е. длина инструмента+длина держателя-смещение.
Вот и считайте

Изменено пользователем koner
Ссылка на сообщение
Поделиться на других сайтах

Насколько я понял поискав на житаке - это фактическая длина инструмента,

т.е. длина инструмента+длина держателя-смещение.

Вот и считайте

 

Спасибо за совет, так и сделал. Вот код:

        private static void ReadCAMTools(ref Part part)
        {
            // коллекция групп
            NXOpen.CAM.NCGroup[] nxGroup = part.CAMSetup.CAMGroupCollection.ToArray();
            foreach (NXOpen.CAM.NCGroup nxG in nxGroup)
            {
                // отбираем только те, которые являются инструментом
                if (nxG.GetType().ToString() == "NXOpen.CAM.Tool")
                {
                    // инструмент
                    NXOpen.CAM.Tool tool = (NXOpen.CAM.Tool)nxG;
                    // открываем инструмент через билдер
                    NXOpen.CAM.MillToolBuilder millToolBuilder1;
                    millToolBuilder1 = part.CAMSetup.CAMGroupCollection.CreateMillToolBuilder(tool);
                    // считываем параметры
                    Console.WriteLine("Имя = " + tool.Name);
                    Console.WriteLine("Описание = " + millToolBuilder1.TlDescription);
                    Console.WriteLine("Хвостовик = " + millToolBuilder1.TlHolderDescription);
                    Console.WriteLine("Номер инструмента = " + millToolBuilder1.TlNumberBuilder.Value.ToString());
                    Console.WriteLine("Номер по каталогу = " + millToolBuilder1.TlCtlgNum);
                    Console.WriteLine("D = " + millToolBuilder1.TlDiameterBuilder.Value.ToString());
                    Console.WriteLine("L = " + millToolBuilder1.TlHeightBuilder.Value.ToString()); 
                    Console.WriteLine("ap = " + millToolBuilder1.TlFluteLnBuilder.Value.ToString());
                    Console.WriteLine("z = " + millToolBuilder1.TlNumFlutesBuilder.Value.ToString());
                    // Инструмент\Размеры\(L) Длина
                    double mom_tool_length = millToolBuilder1.TlHeightBuilder.Value;
                    // Хвостовик\Размеры\(SL) Длина хвостовика
                    double mom_tool_tapered_shank_length = millToolBuilder1.TaperedShankLengthBuilder.Value;
                    // Хвостовик\Вставка инструмента\(OS) смещение  
                    // Вообще это характеристика держателя, почему вкладка зовется хвостовик непонятно
                    double mom_tool_holder_offset = millToolBuilder1.HolderSectionBuilder.TlHolderOffsetBuilder.Value;
                    // Длина вылета инструмента из держателя
                    double mom_tool_extension_lenght = mom_tool_length + mom_tool_tapered_shank_length - mom_tool_holder_offset;
                    Console.WriteLine("I = " + mom_tool_extension_lenght.ToString());
                    Console.WriteLine(Environment.NewLine + "-------------------------------------");
                }
            }
        }

А где можно формулы для переменных тикля посмотреть? В интернете или локально (а вдруг в самом NX есть).

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...