Официальный форум российского программного комплекса T-FLEX PLM


Поиск  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
Помогите разобратся
 
Доброго времени суток! Очень нужна помощ знающих людей.
В данное время пишу диплом, с чертежной частью работ справился без проблем, но к сожалению он еще связан с програмированием в котором я не силен :(
Задача у меня такая с помощью Delphi изменить переменные в чертеже и показать его после пересчета. Почитал TFlexAPI.chm и форум поискал в инете но так и не понял как связать T-Flex и Delphi.
Обьясните дураку, на примере простого кубика с длинной А и шириной В и высотой С как сделать так чтобы через Delphi я смог бы эти пораметри изменить и в последствии увидеть результат.
С уважением! :-k
 
Здесь в основном выкладывают коды на C#. Вот пример для языка C#, выполняющий подобную задачу:

Код
public class Vars
{
        public static void ChangeVars()
        {
            Document document = TFlex.Application.ActiveDocument;

            document.BeginChanges("Изменяем значения переменных");

            Variable a = document.FindVariable("A");

            if (a != null)
                a.Expression = "5";
            
            //другие переменные

            document.EndChanges();

            document.Redraw();
        }
}


Этот код можно добавить в модуль редактора макросов и скомпилировать Ctrl+F7, а потом запустить из окна "Макросы".
Изменено: Brom25 - 08.04.2010 22:21:43
Кто ищет - тот всегда найдет!
 
Вот только не уверен, работают ли макросы под учебной версией. Вы бы лучше описали суть задачи. Как это часто бывает, решение может быть и без программирования. В T-Flex очень мощная параметризация, позволяющая и без программирования создавать мини САПР. Сам в свое время несколько таких мини Сапров создал - на одних переменных и диалогах. Так, что опишите, что нужно получить в итоге.
 
Суть задачи в следующем
Я начертил металорежущий инструмент: резцы, державки, крепеж. Далее нужно автоматизирвать выбор инструмента для конкретной задачи для пользователя.
Тоесть пользоатель хочет к примеру произветси черновую обработку стали с определенной подачей и т.д. и под это дело моя программа должа вырать ему самый подходящий иснтрумент задать все параметры и проиллюстрировать сборочный чертеж: державка+резец+ крепеж.
P.S. Нашел инфу про механизм ActiveX (OLE Automation), даже с примерами кода, но там опять же не написано как T-Flex то подключить, я просто в програмировании нуб, там надо какую то библиотеку подключать чтобы Delphi с T-Flex начали понимать друг друга? Поясните пожалуйста, не сочтите за труд, остался этот последний шаг в понимании :oops:
 
А я уж было действительно подумал, что студентов заставляют программировать. Тут и программировать не надо - мини САПР, все делается на уровне штатного механизма параметризации...

На сколько помню, в учебной версии макросы работают, а вот плагин подключить не получится.
Изменено: Brom25 - 09.04.2010 17:31:40
Кто ищет - тот всегда найдет!
 
Сергей Максимов прав - в Учебной версии приложения не работают.

Вполне может быть, что смысла использовать API и нет. Может быть получится обойтись обычными переменными, базами данных и возможность создавать пользовательские диалоги?
 
Цитата
На сколько помню, в учебной версии макросы работают, а вот плагин подключить не получится.
Насколько я понял подключить учебную в версию к какому либо языку я не смогу при всем желании?
 
Для T-FLEX можно писать приложения (плагины, как их здесь назвали) и макросы.
Плагины в учебной версии не работают. А вот макросы - очень даже работают.
Макрос можно написать либо на C#, либо на VB. На Delphi написать нельзя. Однако можно воспользоваться таким трюком.
Пишется DLL в как отдельный проект. На любом языке, например, Delphi. Для него пишется небольшой макрос, который загружает этот DLL и вызывает нужную функцию. Задача решена.
Но макрос всё же написать придётся на C#. Заодно и изучите... Это несложно :). Может и Delphi после этого не понадобится. Говорят, что программисту всё равно на каком языке писать.
Страницы: 1