skimen

постпроцессоры

73 сообщения в этой теме

Он и на сайте Хааса токарно-револьверный.

Вот Okuma Multus это токарно-фрезерный.

Пост в Спруте 10 в папочке лежит.

Поделиться сообщением


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


Добрых времени суток, мужен постпроцессор для DMU60 mb стойка 530

Поделиться сообщением


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

Добрых времени суток, мужен постпроцессор для DMU60 mb стойка 530

сколько осей ? Какая кинематика ? Постпроцессор нужен для SprutCam или Featurecam ?

Поделиться сообщением


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

Добрых времени суток, мужен постпроцессор для DMU60 mb стойка 530

Посмотри вот этот, скорее всего нужно будет настроить

HEIDENHAIN_TNC530(BC).spp

Поделиться сообщением


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

спасибо, нужен для SolidCam стойка MillPlus v530

 

Изменено пользователем Dee1984

Поделиться сообщением


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

Добрый день.

Поделитесь пожалуйста постпроцессором  фанук oi-td для спрута 7й версии,

 

Поделиться сообщением


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

Доброго времени суток! Нужен постпроцессор на MAZAK integrex 100 поделитесь пожалста если у кого есть, заранее примного благодарен!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 09.08.2017 в 08:56, SHOROH сказал:

Доброго времени суток! Нужен постпроцессор на MAZAK integrex 100 поделитесь пожалста если у кого есть, заранее примного благодарен!

Это двухсотый. Посмотрите, может подойдет. 

MazakIintegrex200 IV-S.spp

Поделиться сообщением


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

Всем добра! Нет ли у кого поста для спрута на MAZAK Vertical center smart 530CL?

Поделиться сообщением


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

Здравствуйте помогите с постпроцессором на нц210 токарную группу

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Здравствуйте помогите с постпроцессором на нц210 токарную группу

Для какой CAM нужен постпроцессор?



Отправлено с моего iPhone используя Tapatalk

Поделиться сообщением


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

Всем, привет

Нужно организовать вызов инструмента следующим образом
...
оп.3
...
N20 M6
N25 T_ Здесь нужно подставить номер инструмента следующей операции
...
op.4

N20 M6
N25 T_ Здесь нужно подставить номер инструмента следующей операции

 

т.е. у станка длинная транспортная система инструмента, он долго идет магазина до сменщика. Поэтому по М6 происходит смена подготовленного в предыдущей операции инструмента, а по T готовится инструмент для следующей операции.
Так вот, может кто подскажет, каким образом в генераторе построцессоров узнать номер инструмента следующей операции?

Поделиться сообщением


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

Нужно организовать вызов инструмента следующим образом
...
N20 M6
N25 T_ Здесь нужно подставить номер инструмента следующей операции

Добрый день

Попробуйте в обработчике команды LoadTL использовать функцию поиска нужно команды: GFindCld

 

Правда предварительно, потребуется объявить переменную для просмотра параметра CLData в обработчике LoadTL:

например, так:

 

aaa: array of real

 

  if FirstTool = 0 then begin         !!! скорее всего вывод первого инструмента будет отличаться,  FirstTool - № первого инструмента, чтобы в конце также его вывести..

    FirstTool = cld[1]                   !!! запоминаем текущий № инструмента

  end 

 

  nttl = FirstTool                         !!!     

  idx = GFindCld("LoadTL", aaa)   !!! здесь мы ищем по всему проекту команды CLData, с именем LoadTL (отвечающие за смену инструмента)

  if idx >0 then begin                   !!! если не нашли,  то idx = -1& а вот если нашли, то проверяем дальше

    nttl = a[1]                              !!! номер инструмента при следующей смене 

 end

 

 Tool_ = nttl

 Msm=6; Msm@=Maxreal
 Call OutBl

 

По идее, он должен теперь выводить № следующего инструмента. 

 

 

Поделиться сообщением


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

 

Попробуйте в обработчике команды LoadTL использовать функцию поиска нужно команды: GFindCld

 

Мне кажется вместо конструкции

 idx = GFindCld("LoadTL", aaa)   !!! здесь мы ищем по всему проекту команды CLData, с именем LoadTL (отвечающие за смену инструмента)

  if idx >0 then begin                   !!! если не нашли,  то idx = -1& а вот если нашли, то проверяем дальше

    nttl = a[1]                              !!! номер инструмента при следующей смене 

  end

можно использовать предопределенную переменную NextToolNum которой присваивается номер инструмента следующей операции
nttl = NextToolNum
если nttl<0 значит текущая операция последняя и T выводить не нужно

Поделиться сообщением


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

По идее, он должен теперь выводить № следующего инструмента.

А если в двух операциях используется один и тот же инструмент, т.е. нет смены инструмента?

Поделиться сообщением


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

А если в двух операциях используется один и тот же инструмент, т.е. нет смены инструмента?

Добрый день, 

в этом случае, скорее всего, сам SprutCAM не выведет в CLData команду LoadTL, т.е хоть и разные операции в проекте, но в текст УП они пойдут одним блоком (при условии, что № инструмента в соседних операциях одинаковый)

 

1 час назад, SNick сказал:

можно использовать предопределенную переменную NextToolNum

да, это более легкий вариант. 

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

 

Поделиться сообщением


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

nttl = a[1]                              !!! номер инструмента при следующей смене

это не ошибка?

Поделиться сообщением


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

это не ошибка?

да, Вы правы..

должно быть nttl = aаа[1]...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 18.07.2018 в 07:46, Dantist сказал:

Попробуйте в обработчике команды LoadTL использовать функцию поиска нужно команды: GFindCld

 

1. Я правильно понял что   в этом выражении  idx = GFindCld("LoadTL", aaa)  в   ааа записываются все номера инструментов используемых в проекте?

2. Если не сложно выложте текст решения с использованием NexToolNum

Поделиться сообщением


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

Я правильно понял что   в этом выражении  idx = GFindCld("LoadTL", aaa)

здравствуйте, 

честно говоря, не совсем правильно Вы поняли. Функция GFindCld ищет первую команду LoadTL среди всех строчек команд, начиная я текущей. И если находит, то все параметры найденной команды сохраняются в переменную aaa (имя вымышленное, и любое совпадение с действующими переменными - случайное :)

Соответственно, этот поиск будет повторяться каждый раз, когда мы зайдем в этот обработчик loadTl

 

Почитал про NexToolNum, его использовать оказалось намного проще, т.к это внутренняя функция самой программы.

 

Я бы оставил эту часть,

if FirstTool = 0 then begin         !!! скорее всего вывод первого инструмента будет отличаться,  FirstTool - № первого инструмента, чтобы в конце также его вывести..

  FirstTool = cld[1]                   !!! запоминаем текущий № инструмента

end 

 

nttl  = NexToolNum                 !!! весь поиск внутри этой функции, и если нашелся следующий инструмент, то выводит его номер, а если нет - то выдается значение =  "-1"

if nttl > 0 then begin

  Tool_ = nttl

end else begin

  Tool_ =  FirstTool

end

Msm=6; Msm@=Maxreal
Call OutBl

 

1 пользователю понравилось это

Поделиться сообщением


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

ID: 61   Опубликовано: (изменено)

22 часа назад, Dantist сказал:

Почитал про NexToolNum, его использовать оказалось намного проще, т.к это внутренняя функция самой программы.

Подредактировал фануковский пост, с GFindCld  не стал заморечиваться.  Dantist спасиба

 

program LoadTl
    aaa: array of real
    if Tool<>99 then begin
      output "G91 G0 G28 Z0."
      output "M1"
    end

  number_of_tools = number_of_tools + 1
  output "N"+str(number_of_tools)
  if CycleOn=1 then begin CycleOn=0; Cycle=80 end

  Tool = cld[1]; Tool@ = MaxReal    ! filling Tool register     ! Это я удалил
  M = 06; M@ = M-1

 

  if FirstTool = 0 then begin        ! это вставил
    FirstTool = cld[1]                 
  end
  nttl  = NexToolNum        
  if nttl > 0 then begin
    Tool_ = nttl
  end else begin
    Tool_ =  FirstTool
  end

  Msm=6; Msm@=Maxreal
  Call OutBl

    Msp = 0; Msp@ = Msp;
    S=0; S@=S


  IsFirstMove = 1    ! tool change mark
  X = MaxReal; X@ = MaxReal
  Y = MaxReal; Y@ = MaxReal
  Z = MaxReal; Z@ = MaxReal
end

Изменено пользователем Rinats
2 пользователям понравилось это

Поделиться сообщением


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

Нужен пост для токартного станка со стойкой Титаниум. Может кто поможет?

1 пользователю понравилось это

Поделиться сообщением


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

Добрый день.

Дорабатываю стандартный пост под карусель с NC200. Следующие момент пока не смог победить:

1. Как заставить постпроцессор вывести в УП символ кавычек - " ? Этот же символ используется в самом посте, как служебный, для разделения, и соотв. пост воспринимает его как "для внутреннего пользования". Может можно как-то через код аски?

 

Поделиться сообщением


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

Может можно как-то через код аски?

Виктор, чувствуется рука мастера!. Хорошо заданный вопрос уже содержит половину ответа, да ? ;)

допустим надо вывести такую строчку в текст УП: (DIS,"Standard")  

cs$ = "(DIS,"+Chr(34)+"Standart"+Chr(34)+")" 

output cs$ 

Изменено пользователем Dantist
1 пользователю понравилось это

Поделиться сообщением


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

Вот! Я ведь догадывался, чувствовал, можно сказать, что есть путь :). Как когда-то, когда html писался вручную, некоторые символы тоже приходилось обходить.

 

Спасибо! Сейчас попробую. Как раз для DIS-а и надо было, и для меток для безусловного перехода - операторы вручную листают программу по кадру, но мне-то стыдно так делать, если надо с середины запустить :).

Работает. Еще раз спасибо!

 Output "(DIS, "+Chr(34) + CLData$ + Chr(34) +  " )"

Поделиться сообщением


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

Можно считать пост для карусели 1Е512/1Е516 с NC200 готовым. Правка, конечно, самая примитивная без использования всех возможностей спрутовского языка постов и среды разработки.

Что удалось/пришлось сделать:

Вывод в начале программы названия файла

закомментированная заготовка безусловного перехода в начале

Выход в станочный ноль G79X0Z0 в начале, конце программы и перед каждой сменой инстурмента

М0 перед каждой сменой инструмента(по-хорошему надо М01, но на этих стойках нет отдельной кнопки типа OptionStop, а трехбуквенные коды - операторы ладно хоть REL знают)

Смена инструмента в формате нц-эшки(Т2.2 М6)

Перед каждой сменой - метка безусловного перехода в формате Т+номер инструмента

Ограничение оборотов жестко забито 150/мин, такие станки(опять же по-хорошему это надо определять в проекте спурта и чтобы оттуда автоматом цеплялось в УП, но я пошел по самому простому пути).

Включение оборотов с выбором второго диапазона тоже забито жестко

Так же тупо вручную жестко при каждой смене прописаны подготовительные G-коды 90,97,95,40

Включение постоянной скорости резания после перемещения в начальную точку и пауза 3сек. Для этого пришлось использовать команду поста для охлаждения, тем более охлаждения на этих станках все равно нет

Вывод подачи в каждый кадр с рабочим перемещением - для запуска "вручную" с середины программы.

Смена круговой интерполяции от стандарта - вместо G2 - G3 и наоборот. Это можно в стойке поправить, но уже имеется не один десяток программ, и все уже привыкли.

 

По трудо- и мозгоемкости примерно сравнимо с правкой фануковского поста солида для той же нц-эшки. Спрутовская среда разработки конечно помогла, но не сильно, т.к. изучать ее досконально некогда, а без этого пользы от нее не сильно много. Солидовский пост просто в блокноте правил. Ну и конечно без инструкций ничего бы вообще не вышло.

 

Кстати, так и не нашел в приложении описания структуры

массива <CLD>, может опять торопился и не там смотрел...

Поделиться сообщением


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

Кстати, так и не нашел в приложении описания структуры

массива <CLD>, может опять торопился и не там смотрел...

Возможно, действительно не удалось найти сразу, она была в справке (F1 - в окне генератора постов),  либо дублируется на сайте  https://www.sprut.ru/files/Inp11/documentation/html_thecldatadictionary.htm

Описание команд доступно в разделе 

5bacc7b20c423__cldata.thumb.PNG.4832e7217d7babae2c0685de72013c0b.PNG

1 пользователю понравилось это

Поделиться сообщением


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

Это технологические команды самого языка, а структура массива, через который спрут в пост данные передает?

CLD[1/2/5/34/58] - это что? А где там номер инструмента? Где переключение с рабочего хода на ускоренный?

Кое-что можно "выловить" из текста поста, к чему-то обратиться через глобальные переменные, а остальное - тайна, покрытая мраком...

Поделиться сообщением


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

Это технологические команды самого языка, а структура массива, через который спрут в пост данные передает?

Виктор, не разочаровывайте меня... Для Человека тыка - Вы слишком сразу как-то сдались :)

3 часа назад, VicktorVR сказал:

CLD[1/2/5/34/58] - это что?

как бы здесь по-проще сказать..

файл CLData, которую формирует SprutCAM содержит набор технологических команд.

 

Для примера скопировал часть файла CLData сюда:

1. STRUCTURE  ON(71), TYPE "HeaderSection", Comment "$Header$"
2. STRUCTURE  ON(71), TYPE "String", Comment "Начало"
3. PPFUN      TECHINFO(58), 250, -204.944, -13.335, -5, 327.5, 212.176, 417, 10, 0, -5, 0, -12.5, -12.5, -335.5, 12.5, 12.5, 1, 3, 0, 0.05, 0.02, 0, 0, 0, 8, 3.3, 16.5, 0, 0, 8, 0, 0, 0, 2, 1929.151, 10000, 100, 100, 100, 100, 100, 300, 1933.38, 1.073, 4.4, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0
4. COMMENT    "Черновая послойная"
5. ORIGIN     X 0, Y 0, Z 120, PPFUN 0, N 54, A 0, B 0, C 0
6. LOADTL     N 8, X 0, Y 0, Z 20, D 3.3, M -8, K 8, L 16.5, P 0, A 0, R 0, H 0, RC 0, PLANE XY(33), Dur 60, HID 8, NX 0, NY 0, NZ 1, NW 0, RevolverID AxisT
7. COMMENT    "@3mm EndMill"
8. PLANE      XY
9. SPINDL     ON(71), NO 1929.151, K 0, MODE RPM(0)
10. CUTCOM     ON(71), LENGTH(9)8, X 0, Y 0, Z 0, N 0, 

 

Во-время обработки, генератор постпроцессоров разбирает каждую команду, для этого есть обработчики этих команд (ну это итак я думаю было ясно).

Так вот, находясь в любом обработчике (допусти возьмем команду Spindl) попробуем ее разобрать : 

  SPINDL     ON(71), NO 1929.151, K 0, MODE RPM(0)

 

Откроем ссылку на описание этой команды  https://www.sprut.ru/files/Inp11/documentation/html_spindle.htm

CLD_spindl.thumb.PNG.ca6d655946bedf94553c31bdc528c24a.PNG

Получается, что в команде Spindel - передается часть информации касающаяся:

 cld[1]  - это включение/выключение шпинделя,

В нашем примере cld[1] равно 71, т.е шпиндель включается, значение оборотов (cld[2]) будет выведено в текст УП  1929.151, cld[4] =0 - значит в об/мин 

 

У каждой команды, набор параметров различен, поэтому в каждом обработчике значение CLD[1]  - разное как по смыслу, так и по значению.

Открываю описание каждой команды - можно понять, что передается в ней (какие параметры за что отвечают)

 

Есть одно исключение: команда PPFUN - она содержит в себе параметры из разных команд, и из нее можно "выудить" предварительную информацию

https://www.sprut.ru/files/Inp11/documentation/ppfuntechinfocommand.htm

 

4 часа назад, VicktorVR сказал:

А где там номер инструмента?

Номер инструмента - в команде LoadTL (либо 26й параметр cld[26] в PPFUN)

 

4 часа назад, VicktorVR сказал:

Где переключение с рабочего хода на ускоренный?

2 команды в CLData отвечают за подачи: RAPID и Feedrat 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 27.09.2018 в 13:41, VicktorVR сказал:

Кстати, так и не нашел в приложении описания структуры

массива <CLD>, может опять торопился и не там смотрел...

Для начала рекомендую посмотреть этот ролик. Ролик старый, но для понимания принципов разработки постов в SprutCAM - самое то.

 

Поделиться сообщением


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

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

Необходимо воткнуть одну строку перед сменой инструмента

 

как сейчас 

39 L X-4.386Y+27.652 R0
40 L Z+5. R0
41 L Z+10. R0 F MAX
42 TOOL CALL 8Y S3150
43 L X+0.Y+21.8 R0 F MAX
44 L Z+2.5 R0 F MAX
45 L Z-5. R0 F300 M13
46 CC X+0.Y+20.4

 

как надо

39 L X-4.386Y+27.652 R0
40 L Z+5. R0
41 L Z+10. R0 F MAX
43 Z+200. R0 M06
45 TOOL CALL 8Z S3150
46 L X+0.Y+21.8 R0 F MAX
47 L Z+2.5 R0 F MAX
48 L Z-5. R0 F300 M13

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 08.11.2018 в 16:11, Meler сказал:

Необходимо воткнуть одну строку перед сменой инструмента

Добрый день, @Meler

В 08.11.2018 в 16:11, Meler сказал:

43 Z+200. R0 M06

возможно, эта строка появится в результате настроек самого проекта (правила подводов/отводов)

 

Отличие в этой строчке? Насколько я заметил, еще в строке вызова TOOL CALL есть отличия (Y S3150 в первом блоке, а должно быть Z S3150)

Если это тоже надо менять, то возможно дело в имени регистра. Надо в посте найти регистр с таким именем (Y S), и заменить его на Z S.

 

 

1 пользователю понравилось это

Поделиться сообщением


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

Добрый день, @Meler

возможно, эта строка появится в результате настроек самого проекта (правила подводов/отводов)

 

Отличие в этой строчке? Насколько я заметил, еще в строке вызова TOOL CALL есть отличия (Y S3150 в первом блоке, а должно быть Z S3150)

Если это тоже надо менять, то возможно дело в имени регистра. Надо в посте найти регистр с таким именем (Y S), и заменить его на Z S.

 

 

Спасибо. Уже решили проблему в посте.

Правда времени заняло кучу.

Изменено пользователем Meler
не все дописал, что следовало
1 пользователю понравилось это

Поделиться сообщением


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

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

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

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



  • Сообщения

    • Николай Е.
      Спасибо! С ошибкой 2065 разобрался. Причина - неправильное расположение контактов.. Теперь загрузчик работает в автоматическом режиме со станком (Biglia B545M), но на кадре M25 (зажим кулачков) станок замирает. Ошибку не выдает. Загрузчик в этот момент подал пруток и отъехал - отработал свою часть. Через 2-3 минуты появляется сообщение об ошибке 1017 "M-code not complete" Расшифровывается в мануале как превышение времени ожидания отклика от какого либо реле. Пытался методом тыка подать сигнал на станок через разъем, реакции никакой... значит сигнала от загрузчика станок в этот момент не ждет... Как понять откуда должен прийти сигнал для продолжения работы УП
    • sereke75
      Деталь по каким-то причинам стала поверхностной. Поэтому возможно и не работает толщина стенки. Сделайте модель твердотельной, тогда все будет работать. Если это при импортировании произошло, то нужно лечить геометрию
    • Вне зоны доступа
      Покажите хоть один вид хайтековской продукции (кроме ядрёной бомбы) где мы доминируем на мировых рынках.   Программирование? Системы искусственного интеллекта? Приборостроение? Микроэлектроника? Роботы? автоматические линии? Станкостроение? Автомобилестроение?   В чём мы доминируем?   Даже космос, где мы испокон веков лидировали, начали "сливать"
    • Meler
      Толщина листа 20 мм.  Детали 17 мм сложой формы. Такие не вырубить. Да и карман один фиг фрезеровать.  
    • Вне зоны доступа
      Ага. Вроде бы ничего плохого нет в том, что русский инженер съездит в Рим посмотреть на сикстинскую капеллу и потратить за границей пару-тройку тысяч евро.   Только в результате этого процесса мы ежегодно вкладываем ДЕСЯТКИ МИЛЛИАРДОВ  евро во вражеские экономики стран НАТО.   Так что не всё так безобидно, как кажется на первый взгляд.   Почему Вы не хотите съездить в Крым, на Байкал и т.п. В России столько интересных мест, что и десяти жизней не хватит посмотреть хотя бы десятую их часть
    • Вне зоны доступа
      Ага. А частникам даже не надо делать вид, что ни работают. Можно открыто заниматься мошенничеством, махинациями и шельмовством. "За что боролись"(с) Плакали ведь в советское время, что у нас всё плохо "потому что хозяина нет"?   Вот теперь "Возьмите и распишитесь"(с) В 80-е годы каждый уважающий себя грузин должен был иметь белую волгу и степень кандидата наук, а лучше доктора наук.  При этом зачастую они даже читали по слогам.   Ваши "к.т.н." из той же оперы
    • Борман
      Доказать Закон Архимеда. Очень весело.
    • Bully
      вы что, посуду-контейнеры не видели? Вы не сказали толщину, но до 4-х мм можно спокойно резать ножницами вручную (качественными, само-собой, но обычными бытовыми). Правда, качество реза соответствующее, конечно    Ну а по фрезам... Чем острее угол зубьев, тем лучше, ест-но. Можете на чипмейкере почитать, там и резину точат, и даже поролон. Но это точение. При фрезеровке же лист будет вырывать в любом случае. Что-то я сомневаюсь в процессе. Не легче будет обрубить? Тем более если объемы большие. Почитайте про ножи для штанц-форм.
    • deflavr
      Здравствуйте форумчанe. Помогите пожалуйста. Не знаю что случилось, но при сечении плоскостью, деталь пустотелая. почему? Функция, толщина стенки, при выдавливании заблокирована. Не могу ее отключить.
      Весь день было нормально, теперь деталь пустая.
    • Plumber
      Оно могло взяться из внешнего вида материала - при указании материала используется его внешний вид, прописанный в свойствах материала