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

Параметры файла Материалов


Ruslan

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

Nils

У вас случаем build не F000? Он (build) не переваривает тире в наименовании файла материлов.

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


Как-то можно с этим бороться? (тире я так понял в ГОСТе)

<{POST_SNAPBACK}>

Переименовать файл ABS-Starex-HG-0760GP-G-Samsung.mtl в ABS.mtl
Ссылка на сообщение
Поделиться на других сайтах

Nils Выложить не могу, лимит весь выбрал.

Можешь скачать у меня на сайте, но там пока с размножением, позже обновлю форматки.

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

Переименовать файл ABS-Starex-HG-0760GP-G-Samsung.mtl в ABS.mtl

,

Я думал это относится к значению параметров:)...спасибо..

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

suslad

Если в листовой модели изменить толщину металла (например с 0.8 на 1.2), то нужно как я понимаю изменить и материал детали. Или это решается по-другому?

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

Просто в посте №37 было описано, как использовать параметры из файла материалов и если изменить толщину в модели, то как это отразится на файле материалов?

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

Например, уравнение в модели

d1=material_param("Диаметр")

Где Диаметр пользовательский параметр в активном материале.

Ссылка на сообщение
Поделиться на других сайтах
Ruslan, в данном случае материал будет управлять значением толщины. А Karlik хотел обратную совместимость -- чтобы изменение толщины материала отражалось в материале. Раньше это можно было сделать используя параметр с Note и в нем ссылаясь на значение толщины. Как теперь -- я еще не разбирался.
Ссылка на сообщение
Поделиться на других сайтах

Приведенный пример, я считаю более правильным.

Сделал в библиотеке ограничительный список применяемых материалов с разными толщинами и в СТПАШ искать не надо.

Занести в строковый параметр нецелочисленное значение можно, но прямо нельзя, так как нет необходимой функции, нужно писать уравнение преобразования к строковому параметру.

Например, когда возможны 2 значащие цифры после запятой:

if Диаметр<1

   Диам1="0"

else

	  Диам1=itos(floor(Диаметр))

endif

if floor(Диаметр)-Диаметр != 0

  if floor(Диаметр*10)-Диаметр*10 != 0

	Диам2=extract(itos(Диаметр*100),string_length(itos(floor(Диаметр)))+1,string_length(itos(Диаметр*100))-string_length(itos(floor(Диаметр))))

	 If string_length(Диам2)<2

	 Диам2="0"+Диам2

	 endif

  else

	Диам2=extract(itos(Диаметр*10),string_length(itos(floor(Диаметр)))+1,string_length(itos(Диаметр*10))-string_length(itos(floor(Диаметр))))

  endif

   material_param("Наименование")="Лист Д16М "+Диам1+","+Диам2+" ГОСТ 21631-76"

else

   Диам2=""

   material_param("Наименование")="Лист Д16М "+Диам1+" ГОСТ 21631-76"

endif

есно когда возможна только одна значащащая цифра, то будет попроще:

if Диаметр<1

   Диам1="0"

else

	  Диам1=itos(floor(Диаметр))

endif

if floor(Диаметр)-Диаметр != 0

 Диам2=extract(itos(Диаметр*10),string_length(itos(floor(Диаметр)))+1,string_length(itos(Диаметр*10))-string_length(itos(floor(Диаметр))))

   material_param("Наименование")="Лист Д16М "+Диам1+","+Диам2+" ГОСТ 21631-76"

else

   Диам2=""

   material_param("Наименование")="Лист Д16М "+Диам1+" ГОСТ 21631-76"

endif
Ссылка на сообщение
Поделиться на других сайтах
Ruslan, да вы просто маньяк по уравнениям :). Зачем же так усложнять жизнь и себе и другим? Можно и нужно найти более гуманный способ.
Ссылка на сообщение
Поделиться на других сайтах

Гуманный способ, это способ управления толщиной через материал, как я и делаю.

А уравнения, это если кому сильно захочется, так как прямого пути нет, но обходной можно всегда найти.

На вывод и отладку этого уравнения у меня ушло от силы полчаса (есно кое какой опыт написания подобных уравнений у меня уже был).

Проблема в том что строковый параметр может состоять только из строковых переменных. А функция преобразования значений в строку, производит округление до целого значения и не позволяет указать число десятичных разрядов.

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

Гуманный способ, это способ управления толщиной через материал, как я и делаю.

<{POST_SNAPBACK}>

И что тут гуманного? Для каждой толщины листа (их, к примеру, может быть 10 на один ГОСТ) делать отдельный материал? Все же гуманнее сделать один материал а толщину считывать из модели.
Ссылка на сообщение
Поделиться на других сайтах

Я не считаю это не правильным, хоть сто, главное рационально организовать структуру размещения. Зато в справочникнике искать не надо. Да и не применяются они все, только часть (у меня).

Можешь уменьшить величину уравнения или предолжить другой способ?

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

Полностью согласен с Русланом, я тоже придерживаюсь мнения, что необходимо иметь базу материалов, содержащие все необходимые параметры. (Даже толщину, если это необходимо, хотя это все равно обязывает пользователя прописывать уравнение типа d1=material_param("Диаметр"))

Как вариант можно иметь шаблон детали типа Лист, где будет прописано уравнение и указан какой нибудь материал, меняя материал автоматом будет меняться толщина и пользователю больше ни чего не надо делать)

Для перевода численного параметра в строковый я написал вот это уравнение, где исходное число X, а полученное строковое - X_str

X_str=itos(floor(X))+"."+itos(ceil((X-floor(X))*100))

if floor(X)==0

X_str="0"+X_str

endif

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

X_str=itos(floor(X))+"."+itos(ceil((X-floor(X))*100))

Да так компактнее, однако будут лишние нули в конце. Однако функцию cell я бы не использовал.

if Диаметр<1

   Диам1="0"

else

	  Диам1=itos(floor(Диаметр))

endif

if floor(Диаметр)-Диаметр != 0

  if floor(Диаметр*10)-Диаметр*10 != 0

	Диам2=itos(floor((Диаметр-floor(Диаметр))*100))

  else

	Диам2=itos(floor((Диаметр-floor(Диаметр))*10))

  endif

   material_param("Наименование")="Лист Д16М "+Диам1+","+Диам2+" ГОСТ 21631-76"

else

   Диам2=""

   material_param("Наименование")="Лист Д16М "+Диам1+" ГОСТ 21631-76"

endif
Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...

В посте 37

содержится "Размышление на тему "Как решить вопрос с материалом в матмоделях и чертежах"."

В посте 39 дополнения на этот счет.

Так вот если исправить пример, прикрепленный к посту 37 по рекомендациям в посте 39, то в вф3м060 и вф3м070 он перестает работать. В вф3м020 все работает прекрасно.

В чем может быть проблема?

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • mml35
      Я в любом случае благодарен, за потраченное на меня время.) Буду искать ошибки в уравнениях регионов.
    • Ветерок
      Я не знаком с вашими настройками, поэтому не могу сказать. У меня не так. А разбираться в ваших настройках нет никакого желания, уж извините.   Если деталь есть в разделе спецификации, а номер позиции не отображается, это странно. Надо разбираться с настройками спецификации. Может, там ещё какие условия прописаны.
    • mml35
      Про раздел спецификации понятно то, что в при создании файла (в каталоге Camozzi нет этого раздела и его нужно заполнить самостоятельно). Но на основании чего Creo вносит в параметры модели при создании например детали - вносит параметр  РАЗДЕЛ_СПЕЦИФИКАЦИИ - Детали. Потом я создаю так же резиновое кольцо и Creo в РАЗДЕЛ_СПЕЦИФИКАЦИИ - Стандартные детали? На основании чего она так решает. Может потому что нет обозначения-поставил все равно стандартное изделие. Может потому что нет чертежа - создал. Все равно стандартное изделие. Понятно, что можно в ручную изменить, но вопрос каков алгоритм, признак что Creo делает такую разноску?   И я так и не понял, почему в спецификации на этот импортированный штуцер нет номера ПОЗ (запрос rpt.index - стоит), хотя на чертеже позиция ставится? Где искать проблему?     
    • Ветерок
      На сайте производителя смотрели? Или вам нужны чертежи для серийного производства? Тогда точно к производителю :)
    • Ветерок
      Не важно как получена деталь. Номер позиции проставляется автоматически. А вот чтобы деталь попала в соответствующий раздел спецификации, у неё должен быть задан соответствующим образом параметр, который отвечает за раздел спецификации. Этот параметр может называться по-разному в зависимости от того, какими настройками пользуетесь. Например, этот параметр может называться TIP. На картинке в ответе выше этот параметр называется ТИП. Если на вашей картинке это РАЗДЕЛ_СПЕЦИФИКАЦИИ, то там нужно указать нужное значение. Это значение тоже может быть разным. К сожалению, в Крео нет единого стандарта. Каждый дилер (почти каждый) предлагал свои варианты, кроме того, на отдельных предприятиях могли быть совсем свои настройки.   В принципе, как фильтруются модели можно посмотреть в фильтрах соответствующего раздела таблицы спецификации.
    • butlug
      Точно не помню какой именно из параметров - но это параметры на созданный мной подшипник скольжения. В графе позиция у меня стоит запрос &rpt.index Спасибо за ответ. Но чаще всего есть только step и искать исходник сделанный в неизвестной программе через третьи руки перекупов по времени такое себе занятие на несколько дней... - проще уже самому расставить если их не сотни), а если это может сделать машина причем сгруппировав по диаметрам и глубинам - зачем людей по чем зря беспокоить непонятными вопросами)
    • david1920
      В личку смотрите
    • anton7
    • maxx2000
      значит надо что-то изменить в геометрии, делов-то   как вариант построить виток как поверхность, развернуть её (или не разворачивать как удобно) сделать на ней все вырезы, затем преобразовать твёрдое тело, затем в листовое, затем уже развернуть.  
    • g687
      Спасибо! попробовал.  Разогнул, сделал вырез как на картинке, а вот сгибать обратно SW не захотел - пишет ошибка в геометрии. В результате кое как прилепил плоскость к изогнотому шнеку, построил на нем плоскость, сделал вырез на изогнутом шнеке, получил развертку. Но может быть для "Согнуть" есть какой то лайфхак наподобие своетов по построению самого шнека ? (с первого раза конический шнек мне не дался, но благодаря Вашим советам осилил :) )
×
×
  • Создать...