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


Поиск  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Вопросы начинающего, вопросы от тех, кто только начинает своё знакомство с T-FLEX CAD
 
Вопросы о T-FLEX CAD от тех, кто начинает своё знакомство с T-FLEX CAD.
-------------------------
Новичкам рекомендуем ознакомиться с Учебным Пособием по T-FLEX CAD:
Онлайн: https://www.tflexcad.ru/help/tutorial/17/
Оффлайн: https://www.tflexcad.ru/download/tutorial/
Страницы: Пред. 1 ... 17 18 19 20 21 22 ... 419 След.
Ответы
 
По-моему можно сделать проще. В файле со сборкой Сервис/Анализ геометрии/Характеристики. Главное предварительно в свойствах каждого 3D фрагмента проверить материал. Или я ошибаюсь и такой метод является неправильным?
 
ну у нас пока еще восьмерка. там такого нет.
 
Я и так и так делала. Но вставить переменную в штамп не знаю как.
 
Цитата
Смотритель МВ пишет:

ну у нас пока еще восьмерка. там такого нет.

Не знаю как в восьмерке, а в семерке Сервис>Характеристики. Только эта команда не позволяет создать соответствующую переменную.

Цитата
Alisa пишет:

Но вставить переменную в штамп не знаю как.

Выбрать "Переменные" в контекстном меню форматки, установить галочку "Список переменных" в левом нижнем углу, далее в правом столбце напротив переменной $massa ввести Вашу переменную, при этом необходимо воспользоваться специальной функцией преобразования вещественного числа в строку: FTOA(Масса_3D), где Масса_3D – переменная с массой 3D модели. Если напротив $massa введена переменная текущего чертежа ($Масса), то тоже самое можно проделать с ней.
Изменено: Brom25 - 03.08.2008 23:13:24
Кто ищет - тот всегда найдет!
 
Цитата
Alisa пишет:

вставить переменную в штамп
Можно так:
В редакторе переменных поставить флажок "показать скрытые переменные". Изменить переменную $Масса. Там же удобно менять значение переменных $Обозначение, $Наименование.
 
Господа, я виновата, выразилась неверно.
Эти методы мне известны. Но чтобы вставить в штамп массу сборки автоматом, пришлось изобретать переменную, суммирующую все массы фрагментов и добавлять руками очередное слагаемое (функция get) при вставке фрагмента либо при деталировке. Конечно копипастом с небольшой корректировкой это нетрудно, но такое решение "дубоватое". Вот и хотелось бы найти вариант. Только всё больше приходит мысль, что проще всего просто вставить число руками.
 
Цитата
Alisa пишет:

чтобы вставить в штамп массу сборки автоматом
[quote]
Если модели "честные" используйте выражение:
round(getv("mass",0)/1000,0.1)
Если есть "нечестные" модели например без пустот или наоборот поверхностные, то можно воспользоваться макросом.
 
Цитата
Diso пишет:

Если есть "нечестные" модели

Тело макроса например такое.
//Составим функцию FindVar поиска переменной по имени
private static Variable FindVar(Document doc,string name)
{
foreach(Variable var in doc.Variables)
if (var.Name == name) return var;
return null;
}

public static void Подсчет_масс()
{
Document doc = TFlex.Application.ActiveDocument;

double mass = 0;
double massDet = 0;
string massStr ="";

doc.BeginChanges("Деталировка");

foreach (Fragment Frag in doc.Fragments)
{
Document FRdoc = Frag.OpenPart();

Variable Vmass = FindVar(FRdoc,"$Масса");
if (Vmass != null)
{
massStr = Vmass.TextValue.Replace(".",",");
if (massStr!="")
{
massDet = Convert.ToDouble(massStr);
Variable VArr = FindVar(FRdoc,"ArDet");
if (VArr != null) massDet = massDet*VArr.RealValue;
mass = mass + massDet;
}

FRdoc.Close();

}
Variable vari = FindVar(doc,"$Масса");

vari.Expression = String.Concat("\"", mass.ToString(), "\"");

doc.EndChanges();
}

Здесь переменная фрагмента "ArDet" необходима если использовались массивы фрагмента. Можно просто подсчитать количество в массиве и проставить во внешней переменной. Обратите внимание фрагмент открывается в режиме деталировки, т.е. все параметрические фрагменты будут работать верно.
Изменено: Diso - 05.08.2008 19:22:33
 
Цитата
Alisa пишет:

Только всё больше приходит мысль, что проще всего просто вставить число руками.
Вот именно!
А вообще уже два раза писал разработчикам предложение разработать возможность считывания в переменные данные окна "Характеристики", не только массу, но и площадь, и объем, и др.
 
Цитата
Смотритель РњР’ пишет:

Если честно - чаще всего делаю булеву из всех фрагментов, меряю ее массу, отменяю создание булевой, и вставляю массу в поле форматки.Если фрагментов слишком много, то проще создать новый файл, туда вставить сборку, как фрагмент, и там померять его массу.
Зачем так сложно? попробуйте до расчета в автоменю нажать "Выбрать все тела ". То есть Сервис -> Анализ геометрии -> Характеристики -> Выбрать все тела <А> -> Закончить ввод "зеленая галка" -> Расчет, причем расчет идет с учетом разных материалов, а вот как вставить в форматку я не мучаюсь не люблю ~~:- . Ведь программно сделать проще, а вот почему они не хотят, наверно думаят , что :applanse:
Изменено: Шурик - 05.08.2008 20:21:20
 
Цитата
Шурик пишет:

попробуйте до расчета в автоменю нажать "Выбрать все тела ".
И это необязателбно - сразу жмите "галку" в автоменю - все тела в сцене по умолчанию обсчитаются.
 
Цитата
Шурик пишет:

Зачем так сложно? попробуйте до расчета в автоменю нажать "Выбрать все тела ". То есть Сервис -> Анализ геометрии -> Характеристики -> Выбрать все тела <А> -> Закончить ввод "зеленая галка" -> Расчет, причем расчет идет с учетом разных материалов, а вот как вставить в форматку я не мучаюсь не люблю
А по моему проще в выражение переменной масса вставить измерение всех тел в сцене вот так например
Цитата


round(getv("mass",0)/1000,0.1)
и в в форматке все появится волшебно. В чем сложность?
 
Цитата
Сергей Максимов пишет:

А вообще уже два раза писал разработчикам предложение разработать возможность считывания в переменные данные окна "Характеристики", не только массу, но и площадь, и объем, и др.
Чтобы связать с переменной массу нескольких тел достаточно построить точку в центре масс этих тел и измеренное значение массы этой точки (узла) связать с переменной. Площадь и объем не пробовал, если не измеряет можно попробовать предложить разработчикам измерять у узла в ЦТ тел и площадь и объем.
 
Цитата
Шурик пишет:

Зачем так сложно? попробуйте до расчета в автоменю нажать "Выбрать все тела ". То есть Сервис -> Анализ геометрии -> Характеристики -> Выбрать все тела <А> -> Закончить ввод "зеленая галка" -> Расчет, причем расчет идет с учетом разных материалов, а вот как вставить в форматку я не мучаюсь не люблю
Шурик извиняюсь, прошелся по истории и увидел что
round(getv("mass",0)/1000,0.01) вами используется. Видимо проблема в том что массу нельзя считать так однозначно. И в этом я совершенно с вами согласен. Здесь предлагается много способов измерения массы и все они не являются личностнонезависимыми. Т.е. их нельзя использовать автоматом для всех случаев и всех сотрудников.
Есть еще один способ, на мой взглад самый кандовый, но требующий нажатия кнопки обновить всё.
Я имею ввиду подсчет массы через спецификацию. для этого нужно создать колонку выходящую за границы листа. Чтобы при печати не появлялась. и создать переменну суммирующую значения в этой колонке.
 
Нужна помощь, цепь ПР-12.7 в 3Д. Вариантов много, но какой более простой и правильный, знаю что можно массивом по пути. Кто нибудь решил данную задачу, из примеров не предлагать :-S
 
Цитата
Я же сам и пишет:

Нужна помощь, цепь ПР-12.7 в 3Д.....
Все ~~:- устал! помогите!!! Я уже в полной :shock: Слов нет, одни звуки. Задача - построить цепь, выбрал такой способ решения, тело(звено цепи) массивом по пути. Картинка вот, а файл прицепом.
Capture_15.jpg (123.41 КБ)
 
Вот, станннно, выложил картинку,а вам выдало "скачать архив"
Изменено: Шурик - 07.08.2008 21:30:39
 
К сожалению, учебной нет, а в рабочей не открывается. Не пробовали пользоваться UVScreenCamer http://www.uvsoftium.com Можно было бы посмотреть все Ваши действия.
 
Кажатся одна ошибка прояснилась утром, т.к. два звена то шаг массива равен 2хt, а на звездочки должен быть t. Попробую выкртится, если погасить каждую нечетную копию массива. :-P
P.S. В мануле редакция 11.1 отсутствует описание 3Д коннекторов, кто знает было обновление , а то в слепую непонимаю что происходит.
 
Добил цепь, неудалось точно расчитать межосевое растояние звездочек,поэтому спишем нахлестдвух звеньев на натяжение цепи. Если есть желание покопатся и найти ляпы, то вот 8)
Страницы: Пред. 1 ... 17 18 19 20 21 22 ... 419 След.