Сергей Колос, мне просто интересно как вы пришили к выводу о том, что язык D является более производительным, относительно языка C. Насколько мне известно, тесты без фундаментальных исследований не являются достаточным основанием. Однако, если вам что ни будь известно о существовании подобных исследований, был бы признателен если укажите на источник.
Сергей Колос, интересно, почему вы решили что язык D является более производительным, относительно языка C. Вы понимаете устройство компилятора языка D, или так показалось?!...
[QUOTE]Сергей Колос написал: Интересно насколько быстрее стал бы T-Flex на D чем на C, C++.[/QUOTE] ... они собственные модули пишут на C#, а вы о какой то производительности на языке D... :-)
SaprOnOff написал: хотите сказать, что в Инвенторе нет отдельного редактора макросов, нет окна со списком переменных, а только Ilogic, всё в одном месте ?)
Не нужно путать понятия. Если провести аналогию: редактор макросов в Autodesk Inventor это примерно тоже самое что и редактор макросов в T-FLEX CAD. В iLogic параметры модели доступны примерно также как в редакторе переменных T-FLEX CAD на уровне выражений. Т.е. для этого вам не нужна ссылка на объект документа; не нужна функция для получения ссылки на объект переменной. Вы просто пишете,
Код
If (P1 > P2) Then
...
End If
Переменные, в редакторе переменных T-FLEX CAD, могут быть связаны отношениями в выражениях. Что такое выражение в T-FLEX CAD? Это примерно тоже самое что в iLgic называется правилом. Только синтаксически тернарные операторы выглядят иначе,
Код
P1 > P2 ? P1 : P2
Однако, правила в iLogic могут изменять значения статических переменных, чего нельзя сделать в выражениях редактора переменных T-FLEX CAD. Но суть не в этом. Проблема в том, что выражения в табличном представлении сложнее читаются по сравнению традиционного кода, написанного в текстовом редакторе (по аналогии с iLogic). И потом, выражения в полях операции, это уже слишком... Было бы проще, не мой взгляд, вынести всю логику (выражения) в отдельные функции (только не в табличном представлении), и запретить выражения в полях операции (чтобы избежать путаницы при изучении модели теми, кто эту модель видит впервые). Посмотрите на проблему комплексно. Выражение в редакторе переменных может быть удобным, если оно небольшое. Если модель сложная, нужен редактор описания функций с представлением, удобным для чтения. То что, на данном этапе, может делать редактор переменных T-FLEX CAD, недостаточно для комплексного управления моделью. Вот несколько недостающих возможностей:
1. Нельзя вернуть значение по умолчанию (защита от дурака); 2. Нельзя изменять значения статических переменных из пользовательских функций.
SaprOnOff написал: ну по своему субъективному опыту, много проблем это не привносит в работу.
Это понятно... я к тому, что тип "Функция" отличается от переменной по сигнатуре. Как мне видится реализация: например, в отдельном окне создаётся пользовательская функция; затем она становится видимой в окне "Переменные" также, как встроенные функции. Однако, чтобы исключить проблемы при удалении функции (на уровне выражения, там где используются пользовательская функция), нужно просто вернуть значение по умолчанию по типу (вещественный или строка). Отделение пользовательских функций от переменных, позволит расширить функциональность создания и настройки функций. И вообще, на мой взгляд, сложное выражение в определении переменной не очень хорошая практика, лучше вынести логику в пользовательскую функцию.
Посмотрите как это реализовано в Autodesk Inventor. То что описывается здесь как "Функция" представлено как "Правила" (пишутся правила в окне "iLogic"). При этом, обращение к объектам модели выполняется по щелчку в интерактивном режиме. Правило пишется как обычный код в текстовом редакторе (а не в табличном представлении, как это реализовано в редакторе переменных T-FLEX CAD). А переменные выполняют роль только привязки к параметрам модели.
Понятно, что концепт реализации в Autodesk Inventor и в T-FLEX CAD сильно отличается. В T-FLEX CAD представлен редактор макросов, который нельзя использовать в том смысле, как сейчас работают переменные (имеется ввиду, доступ к переменным на уровне объектной модели API). Речь идёт об расширенном представлении выражения с областью видимости переменных также как на уровне редактора переменных, только в окне "Функции". В текущей реализации T-FLEX CAD, объект переменной это такой универсальный комбайн, который может содержать статические данные разных типов, выражение и пользовательские функции. Теперь добавьте к этому выражения на уровне где то там в свойствах операции + выражения на уровне слоёв. Т.е. чтобы разобраться с тем, что вообще происходит в модели, нужно потратить огромное количество времени. В место того, чтобы всю логику вынести в одно место.
В общем нужно чтобы было окно "Переменные" и окно "Функции", а в идеале прототип iLogic...
SaprOnOff написал: ...флажок можно поставить только в момент создания переменной.
Это печально... по видимому есть причина, которая привела к этому. Может быть стоит рассмотреть вариант исключения типа "Функция" из объекта переменной?! Например, добавить отдельное окно "Пользовательские функции". Однако, тогда придётся отслеживать зависимости... как бы там ни было, блокировка на изменение свойства --- это не есть хорошо...
[QUOTE]Hydra написал: Картинка не загружается.[/QUOTE] основной вопрос не в картинке, а в... [QUOTE]Шурик написал: как одной кнопкой УДАЛИТЬ все иконки[/QUOTE] по видимому никак... так что, [URL=https://rutube.ru/video/private/6ef0c87f111b9add12b7b008d77ed057/?p=Pv9L0m97JKk8WKtwYPcPTQ]крутите педали[/URL] Шурик... :-)
Hydra, класс [B]ExportToBitmap3D[/B] поддерживает свойство [B]Constructions[/B] для исключения построений из экспорта. По поводу исключения сетки прослеживается явная недоработка API. Кроме того, метод [B]document.ImportIcon[/B] также недоработан в плане обновления иконки на вкладке документа.
[QUOTE]Шурик написал: 2 создаются ВСЕ иконки, это аж 10КБ к фрагменту (про соломинку и верблюда - был печальный опыт)[/QUOTE] По видимому ПК слабенький... :-( теперь понятно, зачем вам понадобилась иконка только 256 х 256... хотя если прикинуть на 1 000 000 файлов, разница должна быть существенной...
[QUOTE]Шурик написал: У меня тут губа раскаталась - Жмем кнопку, появляется окно просмотра 3Д, где можно выставить модель (как в проводнике просмотр) и жмем кнопку создание иконки.[/QUOTE] Ну и в чем суть автоматизации, если вам нужно еще [B]вручную[/B] скорректировать положение модели?
[QUOTE]Шурик написал: делал пару раз движения не по алгоритму и она висла....[/QUOTE] если ПО зависает, нужно исправлять,.... а для этого нужен файл конфигурации с примером....
[QUOTE]Hydra написал: Или можно делать это пакетно в сборке: сначала для каждого отдельного фрагмента и, потом, для сборки целиком.[/QUOTE] пакетная обработка всегда быстрее, особенно когда задача сводится к обработке проекта...
Roman, список фрагментов можно получить из состава изделия средствами API. Для этого не нужно ничего выгружать!
Как я понял, вам нужна функция автоматического селектора файлов по составу изделия. Принцип работы примерно следующий: 1) пользователь выбирает файл сборки, 2) затем, применяет функцию автоматического селектора файлов по составу изделия.
Иначе говоря, выбор файлов в каталоге ввода пользователь делегирует функции. В контексте существующей модели селектора ничего не изменится. После применения функции, пользователь как и раньше сможет дополнить или исключить ненужное.
Roman написал: T-FLEX Package Manager программа хорошая, но ее нужно завязать на состав изделия.
На панели инструментов есть кнопка "Структура сборки" для переключения режима отображения сборочных единиц. Однако, чтобы увидеть сборку и вложенные детали нужно предварительно выбрать файлы. В режиме "Структура сборки" можно легко определить какие детали включены в сборку, а какие нет.