Мы используем файлы cookie, чтобы упростить навигацию на этом сайте. Если вы даете свое согласие на использование файлов cookie и обработку ваших персональных данных, нажмите «Принимаю».

Клонирование и последующее удаление…

Домой Форумы Puzzles Клонирование и последующее удаление…

Просмотр 13 сообщений - с 1 по 13 (из 13 всего)
  • Автор
    Сообщения
  • #16296
    Аватарosho
    Участник

    Предположим нужно сделать конфигуратор для лестницы. Есть потребность менять в нем модели балясин. Вроде сначала все просто. Заказчик нажимает на иконку с симпатичной балясиной, она закачивается в сцену и клонируется по «заранее купленным местам»… Но посмотрев на итог, заказчику хочется поменять балясину на другую! Он нажимает на иконку с новой балясиной, она закачивается в сцену и клонируется по «заранее купленным местам», но перед этим нужно удалить все клоны предыдущей балясины… Как их удалить? Или я в принципе пошел не тем путем?

    • Тема изменена 7 месяцев, 1 неделя назад пользователем Аватарosho.
    #16302

    Для этого есть пазл Remove Object.

    Вложения:
    Вы должны войти для просмотра вложений.

    Co-founder and lead graphics specialist at Soft8Soft.

    #16310
    Аватарosho
    Участник

    Этот пазл я нашел, я просто никак не могу понять, что ему скармливать в названии объекта, что б он все удалил… Сорри, но я не программист, а дизайнер… :unsure:

    #16311

    Этот пазл я нашел, я просто никак не могу понять, что ему скармливать в названии объекта, что б он все удалил… Сорри, но я не программист, а дизайнер…

    Список имен обьектов через лист. Ну например ваши балясина называлась Balasina то скопированные варианты в зависимости от количеств будут Balasina.000 Balasina.001 Balasina.002 и.п. вот можно их списком и подать в этот пазл.

    • Ответ изменён 7 месяцев назад пользователем Mikhail LuzyaninMikhail Luzyanin.

    Co-founder and lead graphics specialist at Soft8Soft.

    #16314
    Аватарosho
    Участник

    Спасибо, с этим понятно… И еще один вопрос, смещение при клонирование происходит в каких единицах? Если мне нужно сместить мою балясину на 15 см. по одной оси и на 25 см. по другой оси, что нужно вводить при клонировании?

    #16315

    Лучше всего расставить на нужнык местах empty/dummy и перемещать клонирвоанные обьекты к ним используя пазл Snap to.

    Co-founder and lead graphics specialist at Soft8Soft.

    #16895
    АртёмАртём
    Участник

    Добрый! Подскажите пожалуйста, борюсь над реализацией функции удаления клонированного объекта.

    Если на нём висит функция when dragged over -drag move, не могу добавить удаление нажатием клавиши, так как тогда она перекрывает перетаскивание и при нажатии объект просто удаляется.

    В функции on event of больше возможных действий (например можно сделать удаление не одинарным, а двойным кликом), но она работает только для элементов HTML-интерфейса, при этом пазлы функций клонов в неё вставляются, но она не работает)

    Пробовал при клонировании объекта закреплять за ним клона кнопки (через родительское назначение parent to object), которая при нажатии на ней удаляет объект, но это работает только для последнего клона.

    Как правильнее это реализовать?

    https://yadi.sk/d/8PqzkiV9T4bpig (исходник прототипа)

    #16896

    Если на нём висит функция when dragged over -drag move, не могу добавить удаление нажатием клавиши, так как тогда она перекрывает перетаскивание и при нажатии объект просто удаляется.

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

    Co-founder and lead graphics specialist at Soft8Soft.

    #16897
    АртёмАртём
    Участник

    Если на нём висит функция when dragged over -drag move, не могу добавить удаление нажатием клавиши, так как тогда она перекрывает перетаскивание и при нажатии объект просто удаляется.

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

    Пытаюсь реализовать функцию удаления при нажатии на объекте. Т.е. чтобы объекты можно было не только добавлять и передвигать, но и удалять созданных клонов при необходимости. Не получается сделать из-за того, что при подходе через клонирование кнопки удаления (в виде обезьяней головы) она работает только для последнего клона, для остальных почему-то прикреплённые кнопки клоны не работают.

    Как альтернативный вариант пробовал сделать через двойной клик (чтобы функция не конфликтовала с перетаскиванием клонов), но двойной клик можно установить только для ХТМЛ интерфейса :scratch:

    #16898

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

    Co-founder and lead graphics specialist at Soft8Soft.

    #16905
    АртёмАртём
    Участник

    Михаил, благодаря подсказанной логике удалось добавить механику удаления добавленных клонов и вращения посредством двух имеющихся в сцене кнопок (suz и suz.001).
    Но почему-то не получается эти самые кнопки делать видимыми при нажатии на клона. Для этого даже создал отдельную переменную button_enable. Пытаюсь пазлами объяснить, что когда я кликаю на клона, ей назначается значение «enable». И далее снаружи процедуры уже через логические блоки пытаюсь показать или спрятать кнопки действия (suz и suz.001) в зависимости от того был нажат или нет клон. Но кнопки не хотят показываться. То ли значение переменной button_enable не может выйти за пределы процедуры cloning, то ли не до конца понимаю как правильно производить присваивания переменным и как они их хранят. :wacko:

    Вложения:
    Вы должны войти для просмотра вложений.
    #16907

    Блок с hide/unhide надо выполнять каждый раз после изменения статуса переменной Button Enable. В данном случае у вас этот блок выполняется единожды при запуске приложения, поэтому то ничего не раскрыается и не прячется.

    Co-founder and lead graphics specialist at Soft8Soft.

    #16913
    АртёмАртём
    Участник

    Блок с hide/unhide надо выполнять каждый раз после изменения статуса переменной Button Enable. В данном случае у вас этот блок выполняется единожды при запуске приложения, поэтому то ничего не раскрыается и не прячется.

    Спасибо большое, Михаил! Снова заработало благодаря вашему совету! :yahoo:

Просмотр 13 сообщений - с 1 по 13 (из 13 всего)
  • Для ответа в этой теме необходимо авторизоваться.