1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

move and copy

Тема в разделе "MAXScript", создана пользователем Di_di_0, 19 дек 2007.

Модераторы: Savin Denis
  1. Di_di_0

    Di_di_0 Активный участник

    С нами с:
    08.12.2007
    Сообщения:
    64
    Симпатии:
    0
    Баллы:
    5
    Здравствуйте! Даже не знаю с какой стороны подойти.
    Написал такой скрипт
    -------------------------------------------------------------
    Rollout copy "copy"
    (
    button mv "move"
    button cp "copy"

    on mv pressed do
    (
    move $selection (pickPoint () - $selection.center)
    $.pos.z= p
    )
    on cp pressed do
    (
    p = $.pos.z
    instance $ isSelected:eek:n
    move $selection (pickPoint () - $selection.center)
    $.pos.z= p
    )
    )
    nf = newRolloutFloater "copy" 200 89

    addRollout copy nf
    -----------------------------------------------------------------
    Панелька с двумя кнопками "move" и "copy"
    Выделяешь объект щелкаешь move и щелкаешь курсором туда куда надо его поставить, он туда ставится.
    Примерно тоже самое с кнопкой копи только он туда копируется.
    Проблема в том, что хочется скопировать объект много раз, а получается только один. Подскажите пожалуста
    как можно зациклить этот процесс. (Щелкнуть один раз кнопку copy и копировать до потери пульса, а потом щелкнуть допустим
    правой кнопкой и остановить этот процесс, или escap-ом.) Еще не получатся копировать группу объектов почему-то.
    Помимо этого была мысль сделать еще кнопку "Copy with base point" Чтобы копировалось относительно базовой точки, как в автокаде. Мне кажется что в максе нехватает этой команды, очень удобно было-бы. Спасибо!
     
  2. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    Нужно зациклить используй цикл for или бесконечный while
    синтаксис смотри в хелпе.

    В качестве условия выхода из бесконечного цикла указываеш инвертированный флаг отпускание клавиши мышки.
    (можно сделать если просто мышкой то копируется один объект если с зажатым шифтом то серия пока не отпустиш. проверить нажатие можно: keyboard.shiftPressed )

    для клонирования масивов с объектами используй maxOps.cloneNodes
    можно сразу задавать дельту смещения парамером offset:<point3>




     
Модераторы: Savin Denis

Поделиться этой страницей