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

FAQ/Unigraphics/POST


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

@artem-nafanya

Ни что, именно в обратном и выводятся, для вывода в нужном порядке нужно сделать сортировку, ручную или через встроенную - вариантов масса, для этого скорее всего придется поменять логику создания списка, но об этом как раз можно прочитать в книге, которую я рекомендовал

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


5 часов назад, lexincton сказал:

@artem-nafanya

Ни что, именно в обратном и выводятся, для вывода в нужном порядке нужно сделать сортировку, ручную или через встроенную - вариантов масса, для этого скорее всего придется поменять логику создания списка, но об этом как раз можно прочитать в книге, которую я рекомендовал

Я понял. Книгу эту давно читаю. Если бы понимал что там написано про массивы, то нужен ли бы тут вас спрашивал.

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, artem-nafanya сказал:

Я понял. Книгу эту давно читаю. Если бы понимал что там написано про массивы, то нужен ли бы тут вас спрашивал.

А что конкретно не понятно?

 

Приведу примерный алгоритм для вас:

в первый список записываете значение не строковое, а численное = №инстр*100 + D

 

при чтении сортируем список вручную методом "пузырьков" или проще с помощью lsort (идем в книгу)

далее проходим по списку и число превращаем в нужную нам строку, т.е. сначала делим на 100 и округляем, получаем №инстр, полученный номер вычитаем из первоначального значения, получаем D

строку из 2-х найденных переменных думаю уж составите

 

Ссылка на сообщение
Поделиться на других сайтах
48 минут назад, lexincton сказал:

А что конкретно не понятно?

Спасибо.

Просто за этими словами об алгоритме не возникает образ кода. Видать надо читать дальше. 

 

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

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

@artem-nafanya

запись
global list_tool

set row_tool [expr $mom_tool_number*100+$mom_tool_adjust_register]
if { [Isearch -inline -all $list_tool $row_tool ] < 0 } {
  lappend list_tool $row_tool
}


чтение
lsort -integer $list_tool
foreach number $list_tool {
    set t_num [expr int($number/100)]
    set d_num [expr $number-$t_num]

    set row_output [string format "bla bla %s - %s   " $t_num $d_num]
}
 

Работу не проверял, но примерно так должно выглядеть

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

@lexincton

9 часов назад, lexincton сказал:
Показать содержимое  

@artem-nafanya

запись
global list_tool

set row_tool [expr $mom_tool_number*100+$mom_tool_adjust_register]
if { [Isearch -inline -all $list_tool $row_tool ] < 0 } {
  lappend list_tool $row_tool
}


чтение
lsort -integer $list_tool
foreach number $list_tool {
    set t_num [expr int($number/100)]
    set d_num [expr $number-$t_num]

    set row_output [string format "bla bla %s - %s   " $t_num $d_num]
}
 

Работу не проверял, но примерно так должно выглядеть

Hide  

Вероятно не нравится ему команда string в последней строчке.

Этот код в чтении работает без puts $ofile ?

RO2gUFbmwyg.jpg

Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, artem-nafanya сказал:

@lexincton

Вероятно не нравится ему команда string в последней строчке.

Этот код в чтении работает без puts $ofile ?

RO2gUFbmwyg.jpg

опечатка есть, format без string надо писать, вместо set row_output поставить puts $ofile

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

@lexincton

24 минуты назад, lexincton сказал:

опечатка есть, format без string надо писать, вместо set row_output поставить puts $ofile

Теперь ошибка во время постпроцессирования.

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

@artem-nafanya

запись

global list_tool
if { ![info exists list_tool] } { set list_tool {} }
set row_tool [expr $mom_tool_number*100+$mom_tool_adjust_register]
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}
if { !$bsearch } { lappend list_tool $row_tool }

 

чтение

global list_tool
foreach number [lsort -ascii $list_tool] {
    set t_num [expr int($number/100)]
    set d_num [expr $number-$t_num*100]
    puts $ofile [format "bla bla %s - %s   " $t_num $d_num]
}

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

Уважаемые гуру, подскажите направление, где "копать". Вопрос по трансформациям координат. Взависимости от кинематики станка, если к примеру взять 4 осевые станки, вывод координат отличается. Где собственно происходит весь этот расчет? Вопрос, понятно, очень обширен, что там масса процедур, но хотелось бы понять алгоритм. Можно ли в одном посте две кинематики реализовать?

Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, Jobman21 сказал:

Уважаемые гуру, подскажите направление, где "копать". Вопрос по трансформациям координат. Взависимости от кинематики станка, если к примеру взять 4 осевые станки, вывод координат отличается. Где собственно происходит весь этот расчет?

Боюсь, здесь никто вас не будет посвящать в это)

 

6 часов назад, Jobman21 сказал:

Можно ли в одном посте две кинематики реализовать?

Хоть 10

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

Я же не прошу процедуры выложить, все на блюдечке приподнести. Просто разъяснить. Мда, неужто все это под грифом сектретно? 

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, MiRu сказал:

Занимательно, но не то

Ссылка на сообщение
Поделиться на других сайтах
32 минуты назад, Jobman21 сказал:

Но если не здесь, где черпать эти секреты, может кто-нибудь посоветует. 

Секреты распределены ровным слоем по интернету. Для начала можете изучить в файле *.tcl постпроцессора все PB_CMD, где встречаются mom_angle, mom_out_angle и т.п.

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

@lexincton

22 часа назад, lexincton сказал:
Показать содержимое  

@artem-nafanya

запись

global list_tool
if { ![info exists list_tool] } { set list_tool {} }
set row_tool [expr $mom_tool_number*100+$mom_tool_adjust_register]
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}
if { !$bsearch } { lappend list_tool $row_tool }

 

чтение

global list_tool
foreach number [lsort -ascii $list_tool] {
    set t_num [expr int($number/100)]
    set d_num [expr $number-$t_num*100]
    puts $ofile [format "bla bla %s - %s   " $t_num $d_num]
}

Hide  

Заработало.

На мой взгляд предыдущий вариант кода более гибок для изменений, но если надо вывести пару параметров, то тоже хорош. 

В коде есть какой-то ключ, меняя который можно менять условие сортировки или для этого код переписывать надо?

Снимок.JPG

Ссылка на сообщение
Поделиться на других сайтах
14 минуты назад, artem-nafanya сказал:

На мой взгляд предыдущий вариант кода более гибок для изменений, но если надо вывести пару параметров, то тоже хорош. 

Можно создать сколько угодно массивов с одиннаковыми индексами и записывать в них что угодно

 

16 минут назад, artem-nafanya сказал:

В коде есть какой-то ключ, меняя который можно менять условие сортировки или для этого код переписывать надо?

lsort

Ссылка на сообщение
Поделиться на других сайтах
В 11.01.2018 в 00:33, vicebear сказал:

Количество чистовых проходов: $mom_finish_passes.

Количество черновых проходов: $mom_rough_passes.

555.jpg

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • maxx2000
      @fenics555, я никогда не задавался таким вопросом, а можно ли отключить авторегенрацию компонентов или заморозить? Если прям опции нет, может через Тулкит или Апи?
    • fenics555
      штифты разрезные- понятно, что примонтаже изменяют размер по отверстию.  Резиновое кольцо уплотнительное- оно меняет не только диаметр наружный и внутренний, но и толщину. именно долго открываются сборки, содержащие эти изделия.  можно конечно и без нее обходиться, но мы уже привыкли. Только грузятся сборки очень долго, но это врятли из-за гибкости.
    • Viktor2004
    • UkulyAlex
      Добрый день. Работаю в t-flex 16. Имеется приспособление в котором более 150 позиций деталей, спецификация сделана по структуре изделия. Возникла необходимость изменения конструкции, некоторые детали из середины списка пришлось удалить. После обновления отчёта позиции сдвигаются, как сделать чтобы оставались на месте, т.е. был пропуск позиций в середине раздела "Детали"? 
    • статист
      Спасибо за цитату, полезная для меня   Я знал до этого способ использовать атрибуты LATT для задания направления, но они применялись только к построенным линиям. Если например рассматривать созданный элемент E, 1, 2, где для задания применяются только два узла, то тут уже никак не поменяешь положение третьего узла, так как его нет. Нужно тогда создавать отдельно направляющий узел  и задавать его через EMODIF,EID, 3, NID.   Но получается без создания узла, задать направление нельзя. В настране по крайней мере так можно. А в ансисе нужно плодить лишние узлы. Грустно)
    • FROST_R6
      Есть монорельса размером 12м. Хочу проверить перемещение при нагрузке на середину в 2 тонны. Саму монорельсу фиксировать не нужно, поэтому я поставил ее на 2 призмы и зафиксировал их. Расчет не получается провести - сначала программа пишет, что "деформация в данном исследовании слишком значительная и нереалистичная, хотите остановить программу и перезапустить исследование с меньшими нагрузками или с более жесткой моделью?". Я выбираю "нет". После долгого процесса расчета появляется сообщение о том, что "Состояние равновесия не было достигнута" и "Анализ больших смещений был остановлен до сохранения результата", появляется надпись о сбое расчета. 
    • maxx2000
      подгружаются при повторном открытии сборки или при первой вставке? Ну и гибкость сначала вызвала вопрос, но я не заметил существенной задержки при выборе способа вставки с ней или без неё.
    • Ветерок
      Я не понял зачем в этих деталях задана гибкость. При том, что новые значения размеров определяются не измерением, а вводом вручную.
    • BOJIOD9I
      Добрый день! Подскажите куда внести изменения на стойке fanuc 0i, чтобы когда вводишь коррекцию в графу износа она не отображалась на координатах. Пример: Резец точит размер 100 мм, по факту получается 101мм. В графе износ вносишь -1.0 мм. В итоге по координатам будет показано что резец точит 99мм, а по факту станет 100мм как нужно было.
    • Bot
      В апреле завершилась публикация эпохальной серии «BIM и театр», получила дальнейшее развитие центральная тема современности — «среды общих данных» (именно СОД, а не ИИ), а в заголовке апрельского обзора «Как избежать ошибок проектирования и не сорвать сроки строительства» отразились элементы сокровенного знания. Наша очередная обложка отражает решение компании ЛЕДАС безвозмездно передать всю базу данных ресурса PLMpedia любому российскому юридическому или физическому лицу с единственным условием: наш преемник публично объявит о состоявшейся передаче и взятии на себя ответственности за поддержание данных либо за окончательное закрытие доступа к ним. При необходимости за уточнениями можно обратиться по адресу info@plmpedia.ru. Идея проекта PLMpedia возникла в результате проведения компанией ЛЕДАС трёх международных форумов (2004-2008) и организации портала isicad.ru. В своё время на основе ресурса PLMpedia была с особым полиграфическим качеством издана монография [...] View the full article
×
×
  • Создать...