Как сделать много скринов |
Home· Статьи · Вакансии · Чертежи · 3D Галерея · 2D Галерея · Форум · Форум Realtime | Реклама |  Конкурсы | RAR Award | Правила |
Здравствуйте, гость ( Вход | Регистрация )
Как сделать много скринов |
10/01/2017, 12:23
Сообщение
#1
|
|
Наш человек Группа: Пользователи Сообщений: 490 Регистрация: 02/10/2006 Из: Харьков Пользователь №: 37 887 |
Добрый день. У меня такая задача: на винте много макс - файлов (неск. тыс), распиханных по разным папкам. Нужно сделать к каждому файлу картинку - скрин с вьюпорта, которая будет иметь такое-же имя файла, как и сама сцена. Сейчас делаю так: открываю файл, выставляю удобную ориентацию сцены, делаю принтскрин, иду в папку, копирую имя файла, перехожу в граф. редактор, создаю картинку и сохраняю с именем из буфера. Как-то много движений получается. Можно ли как-то автоматизировать?
Например, назначить хоткей или сделать кнопку на Tools - Preview - Grab Viewport - Capture Still Image - но в разделе хоткеев этой ф-ии нет чтоб по умолчанию там был выбран тип файла JPG. Если бы автоматом вставлялось имя исходной сцены - вообще ништяк Сообщение отредактировал cad - 10/01/2017, 12:38 |
|
|
10/01/2017, 14:22
Сообщение
#2
|
|
MaxMan Группа: Пользователи Сообщений: 153 Регистрация: 14/08/2015 Пользователь №: 109 394 |
Например, назначить хоткей или сделать кнопку на Tools - Preview - Grab Viewport - Capture Still Image - но в разделе хоткеев этой ф-ии нет чтоб по умолчанию там был выбран тип файла JPG. Если бы автоматом вставлялось имя исходной сцены - вообще ништяк Попробуйте такой вариант. Пример. Запускаем скрипт. Меню Customize > Customize UI > Keyboard > Category:"_igorznag" Назначаем клавишу для действия igorznag_grab_and_save. Скрипт делает скрин с вьюпорта и сохраняет его в папке сцены с названием сцены и в формате jpg. Код macroscript igorznag_grab_and_save category:"_igorznag"
( m=maxFileName; if m!="" do ( b=gw.getViewportDib(); bn=substring m 1 (m.count-4) bfn=maxFilePath+bn+".jpg"; b.filename=bfn; save b; close b )) |
|
|
10/01/2017, 16:33
Сообщение
#3
|
|
уже всё сделал Группа: Пользователи Сообщений: 2 456 Регистрация: 01/06/2005 Из: z3л3№гр@d Пользователь №: 13 838 |
|
|
|
10/01/2017, 17:01
Сообщение
#4
|
|
Уважаемый Группа: Участник Сообщений: 862 Регистрация: 05/12/2004 Из: Минск Пользователь №: 8 716 |
Код macroscript igorznag_grab_and_save category:"_igorznag" ( m=maxFileName; if m!="" do ( b=gw.getViewportDib(); bn=substring m 1 (m.count-4) bfn=maxFilePath+bn+".jpg"; b.filename=bfn; save b; close b )) а что тут добавить чтобы каждый раз jpeg не перезаписывался, а сохранялся с новым номером? спасибо заранее! |
|
|
10/01/2017, 17:05
Сообщение
#5
|
|
уже всё сделал Группа: Пользователи Сообщений: 2 456 Регистрация: 01/06/2005 Из: z3л3№гр@d Пользователь №: 13 838 |
QUOTE doesFileExist <filename_string> перех сохранением проверить нет ли такого имени и как-то индексировать имя файла если есть |
|
|
10/01/2017, 17:39
Сообщение
#6
|
|
MaxMan Группа: Пользователи Сообщений: 153 Регистрация: 14/08/2015 Пользователь №: 109 394 |
а что тут добавить чтобы каждый раз jpeg не перезаписывался, а сохранялся с новым номером? спасибо заранее! Код macroscript igorznag_grab_and_save category:"_igorznag"
( m=maxFileName; if m!="" do ( b=gw.getViewportDib(); bn=substring m 1 (m.count-4) bfn=maxFilePath+bn+".jpg"; i=1; while doesFileExist bfn do (bfn=maxFilePath+bn+(i as string)+".jpg"; i+=1) b.filename=bfn; save b; close b ) ) |
|
|
10/01/2017, 18:41
Сообщение
#7
|
|
Уважаемый Группа: Участник Сообщений: 862 Регистрация: 05/12/2004 Из: Минск Пользователь №: 8 716 |
Сделал немного по-другому, под свои нужды, перезапись не включал :
Код (
global gl_ScreenMePos global gl_ScreenMeEt global gl_ScreenMeFolder if gl_ScreenMePos == undefined do gl_ScreenMePos = [300,300] if gl_ScreenMeEt == undefined do gl_ScreenMeEt = "" if gl_ScreenMeFolder == undefined do gl_ScreenMeFolder = "" rollout ScreenMe "ScreenMe!" width:250 height:80 ( button setFolder "set folder" width:240 editText eT "Name:" text:gl_ScreenMeEt pos:[5,30] width:240 height:20 button btn1 "Save" pos:[40,55] width:60 fn fn_FolderText = ( if gl_ScreenMeFolder != "" do ( if gl_ScreenMeFolder.count > 40 then ( setFolder.text = "..." + (substring gl_ScreenMeFolder (gl_ScreenMe.count - 37) gl_ScreenMe.count) ) else setFolder.text = gl_ScreenMeFolder ) ) on ScreenMe open do fn_FolderText() on setFolder pressed do ( gl_ScreenMeFolder = getSavePath() fn_FolderText() ) on ScreenMe close do ( gl_ScreenMePos = GetDialogPos ScreenMe ) on eT changed A do gl_ScreenMeEt = eT.text on btn1 pressed do ( if eT.text != "" and setFolder.text !="" do ( local b=gw.getViewportDib() b.filename=gl_ScreenMeFolder + "\\" + eT.text + ".jpg" save b close b ) ) ) createdialog ScreenMe pos:gl_ScreenMePos ) Сообщение отредактировал IOG - 10/01/2017, 18:43 |
|
|
11/01/2017, 11:43
Сообщение
#8
|
|
Наш человек Группа: Пользователи Сообщений: 490 Регистрация: 02/10/2006 Из: Харьков Пользователь №: 37 887 |
а что тут добавить чтобы каждый раз jpeg не перезаписывался, а сохранялся с новым номером? спасибо заранее! Код macroscript igorznag_grab_and_save category:"_igorznag" ( m=maxFileName; if m!="" do ( b=gw.getViewportDib(); bn=substring m 1 (m.count-4) bfn=maxFilePath+bn+".jpg"; i=1; while doesFileExist bfn do (bfn=maxFilePath+bn+(i as string)+".jpg"; i+=1) b.filename=bfn; save b; close b ) ) Спасибо огромное!!!!!!!! Супер! |
|
|
Bots |
Системное сообщение
|
|
|
|
|
Текстовая версия | Сейчас: 25/04/2024 - 20:28 |