3DCenter.ru

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> скриптом создать массив боксов
v79italya
сообщение 06/05/2017, 21:28
Сообщение #16


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



Jahman, спасибо за коды. результат тот что нужен. только у меня опять вопрос. как быть, если количество плиток будет не 2, а 6 или 11 ? может группировать все плитки, как в инструменте Array, а сдвигать по иксу и игрику значениями двух переменных? и мне было бы понятнее регулировка сдвигов. на рисунках варианты с шестью и одиннадцатью плитками. не могли бы изменить код под раскладку на этих рисунках. извиняюсь за свои просьбы. сам точно не справлюсь да и макро рекордер не записывает массивы.
второй вопрос буду решать инструментом Slice. правда, еще не проверял пишет ли действия этого инструмента макро рекордер.
Прикрепленные изображения
Прикрепленное изображение Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Jahman
сообщение 06/05/2017, 21:48
Сообщение #17


уже всё сделал
Иконка группы

Группа: Пользователи
Сообщений: 2 456
Регистрация: 01/06/2005
Из: z3л3№гр@d
Пользователь №: 13 838



принцип я показал, дальше дело за вами. надо только правильно смещение посчитать.
как передвинуть и повернуть slice-plane тут точно где-то на форуме было,
Go to the top of the page
 
+Quote Post
v79italya
сообщение 06/05/2017, 21:57
Сообщение #18


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



ok. попробую сам.
Go to the top of the page
 
+Quote Post
v79italya
сообщение 07/05/2017, 08:10
Сообщение #19


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



пробовал подогнать код из сообщения 14 уважаемого Jahman под раскладку из шести боксов рисунка 2 из сообщения 16, но из этого ничего не вышло. чересчур сложно для меня. может кто поспособствует и допишет этот код. желательно в коде работать с группой. по моему, так легче циклом размножать по иксу и игрику.
CODE
max select all
max delete

Box lengthsegs:1 widthsegs:1 heightsegs:1 length:200 width:200 height:10 mapcoords:on pos:[0,0,0] isSelected:on
Box lengthsegs:1 widthsegs:1 heightsegs:1 length:200 width:100 height:10 mapcoords:on pos:[100,200,0] isSelected:on
Box lengthsegs:1 widthsegs:1 heightsegs:1 length:100 width:200 height:10 mapcoords:on pos:[-50,150,0] isSelected:on
Box lengthsegs:1 widthsegs:1 heightsegs:1 length:150 width:50 height:10 mapcoords:on pos:[-125,25,0] isSelected:on
Box lengthsegs:1 widthsegs:1 heightsegs:1 length:100 width:100 height:10 mapcoords:on pos:[-150,-100,0] isSelected:on
Box lengthsegs:1 widthsegs:1 heightsegs:1 length:50 width:50 height:10 mapcoords:on pos:[-175,-25,0] isSelected:on
max select all
group selection
d=#group01
Go to the top of the page
 
+Quote Post
Jahman
сообщение 07/05/2017, 09:58
Сообщение #20


уже всё сделал
Иконка группы

Группа: Пользователи
Сообщений: 2 456
Регистрация: 01/06/2005
Из: z3л3№гр@d
Пользователь №: 13 838



главное правильно посчитать смещение, не более того

Прикрепленные изображения
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
v79italya
сообщение 07/05/2017, 12:49
Сообщение #21


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



с тем, чтобы посчитать смещение, я еще справлюсь. а, куда вводить данные в код из #14, с этим проблема. были бы четыре переменные, как #20. и в Tiles array выделены все плитки, а в коде #14 обрабатывается каждый план. или я и этого не понимаю rolleyes.gif . может, ткнете меня носом в параметры кода, регулирующие смещение ВСЕХ выделенных плиток. еще вопрос. гуглю в яндексе: Tiles Array - и никакого скрипта с таким названием не появляется. что за скрипт в сообщении #20?
Go to the top of the page
 
+Quote Post
Jahman
сообщение 07/05/2017, 13:22
Сообщение #22


уже всё сделал
Иконка группы

Группа: Пользователи
Сообщений: 2 456
Регистрация: 01/06/2005
Из: z3л3№гр@d
Пользователь №: 13 838



конечно его нет в гугле, я его за завтраком сидел писал smile.gif

погуглите maxscript reference, если планируете писать нечто подобное на максскрипте.
ну или floor generator погуглите, может это решение всех ваших бед


Go to the top of the page
 
+Quote Post
Jahman
сообщение 07/05/2017, 13:26
Сообщение #23


уже всё сделал
Иконка группы

Группа: Пользователи
Сообщений: 2 456
Регистрация: 01/06/2005
Из: z3л3№гр@d
Пользователь №: 13 838



а что касается смещения всех выделенных
CODE
for s in selection do (

    s.pos += [ offsetX, offsetY, 0 ]

)
Go to the top of the page
 
+Quote Post
v79italya
сообщение 07/05/2017, 13:58
Сообщение #24


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



--я его за завтраком сидел писал--
Вам легче. Вы меня тоже поймите. я по профессии плиточник. с месяца три назад связался с 3d max. собирался клиентам бонусом делать визуализацию. с Max script знаком меньше двух недель. куда вставить эти три строки кода, я не додумаюсь. мне бы полностью код, более-менее понятный в настройках. с цифрами я справлюсь.
Go to the top of the page
 
+Quote Post
v79italya
сообщение 12/05/2017, 10:44
Сообщение #25


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



здравствуйте. опять у меня пару вопросов. не могли бы подсказать.
как вызвать мах скрипт из кода другого скрипта? что нибудь как в макросах excel - call название скрипта
как установить кириллицу для комментариев ? вариант с заменой значения в файле MXS_Editor.properties code.page на 0 (вместо -1) не сработал. у меня 3d max 2009.
Go to the top of the page
 
+Quote Post
v79italya
сообщение 14/05/2017, 18:03
Сообщение #26


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



опять у меня есть вопрос. и снова не в тему названия темы. наверное, потому и нет ответов. smile.gif
хотел узнать есть ли возможность переменной остановить дальнейшее выполнение скрипта? что то типа создал переменную K=270, и скрипт выполняется до 270-ой строки. в блокноте не нумеруются строки, зато в notepadе нумеруется.
Go to the top of the page
 
+Quote Post
Jahman
сообщение 14/05/2017, 19:08
Сообщение #27


уже всё сделал
Иконка группы

Группа: Пользователи
Сообщений: 2 456
Регистрация: 01/06/2005
Из: z3л3№гр@d
Пользователь №: 13 838



CODE
iterations = 270
while iterations > 0 do (

    iterations -= 1
    ...


)


или имеется ввиду строки скрипта что-ли?
так не доходя до этой самой строки можно создать переменную, к примеру proceed = false
а дальше в этой самой строке банальный if proceed then ( ... ) else ( ... )
а лучше на логические элементы/модули/функции разбить скрипт и весь этот головняк с процедурным подходом уйдет сам собой.
Go to the top of the page
 
+Quote Post
v79italya
сообщение 14/05/2017, 20:17
Сообщение #28


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



да, я про строки скрипта. уже набралось больше 200 строк, а самые нижние строки будут задействованы время от времени. и чтобы не удалять или наоборот, когда нада , добавлять строки искал какой нибудь выход чтобы ошибка не выскакивала. нельзя ли в самом начале кода скрипта эту строку <<proceed = false>> заменить примерно такой <<proceed = false после 270 строки>>?
Go to the top of the page
 
+Quote Post
Jahman
сообщение 15/05/2017, 06:12
Сообщение #29


уже всё сделал
Иконка группы

Группа: Пользователи
Сообщений: 2 456
Регистрация: 01/06/2005
Из: z3л3№гр@d
Пользователь №: 13 838



ну так надо обернуть весь код начиная с 270 строки в if ... then ... else конструкцию. никакого волшебства. программа делает лишь то, что ей говорят.

псевдокод:
если proceed равно true тогда ( выполняем то что в между этими скобками ) иначе ( выполняем то что в между этими скобками )

Сообщение отредактировал Jahman - 15/05/2017, 06:16
Go to the top of the page
 
+Quote Post
v79italya
сообщение 15/05/2017, 11:05
Сообщение #30


Ученик
Иконка группы

Группа: Пользователи
Сообщений: 30
Регистрация: 04/05/2017
Пользователь №: 134 636



Jahman, спасибо. буду делать по другому. код пусть выполняется полностью. а потом удалю все ненужное руками.
Go to the top of the page
 
+Quote Post
Bots
сообщение Системное сообщение






4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic

1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 16/04/2024 - 19:39