Название: Подстановка в слоты Отправлено: Igors от Октября 06, 2015, 13:52 Добрый день
Примечание: к слот/сигнал это не имеет никакого отношения. Есть список напр из 3 объектов. Пользователь нажал бубочку "расчет", в рез-те записался файл который можно использовать, причем не только для тех 3 что были на момент расчета, но и для любых других. Т.е. в списке можно включать/отключать, добавлять, удалять и записанный файл работает с новым списком - так задумано. Сейчас файл хранит просто "слоты" - индексы 0, 1, 2. Ну ясно что если добавит 4 объекта, то с последним ничего не будет - в файле данные только для 3. Но можно заменить любой из 3 на новый, или отключить последний - все нормально. И вот мелкая неприятность: когда отключается (или удаляется) "не последний", напр 0-й, то все сдвигается - 1-й попадает на место 0-го, 2-й на место 1-го. Когда файл используется можно указать ему что такой-то слот сейчас выключен. Но как (на каком основании) это делать? Напр Цитировать - Obj 0 Так хочется чтобы Obj 1(2) оставались слотами 1 и 2, а слот 0 неактивен+ Obj 1 + Obj 2 Цитировать - Obj 0 А так желаемый рез-т чтобы активный Obj_new использовался вместо Obj 0 (как сейчас и работает)+ Obj_new + Obj 1 + Obj 2 Как это разрулить? Спасибо Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 06, 2015, 22:14 сохранять ID слотов, а не только индексы?
Название: Re: Подстановка в слоты Отправлено: m_ax от Октября 06, 2015, 22:35 сохранять ID слотов, а не только индексы? У вас у практиков, по видимому, есть какая то сакральная связь) Я вот раз десять перечитывал, так ничего и не понял) Но, не исключаю, что это чисто мои проблемы) Но всё же..) Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 06, 2015, 23:06 сохранять ID слотов, а не только индексы? У вас у практиков, по видимому, есть какая то сакральная связь) Я вот раз десять перечитывал, так ничего и не понял) Но, не исключаю, что это чисто мои проблемы) Но всё же..) Ну дык это, как же, там бубочка есть, если ее того, то в файл слот того, епта, а потом если еще раз, то оно уже не так, во :( http://tomsk.fm/watch/191979 (http://tomsk.fm/watch/191979) Название: Re: Подстановка в слоты Отправлено: m_ax от Октября 06, 2015, 23:18 Цитировать то в файл слот того, епта, а потом Не, не, в Казани реальные пацаны говорят не ёпта, а ибтэ) "Есть денги ибтэ? А если найду" ;DЖаргон, но всё же..) Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 06, 2015, 23:29 Не, не, в Казани реальные пацаны говорят не ёпта, а ибтэ) "Есть денги ибтэ? А если найду" ;D Век живи - век учись :) Никогда в Казани не был... А как там в моде нынче, кепка-беляш или "классика"-восьмиклинка? :) Название: Re: Подстановка в слоты Отправлено: m_ax от Октября 06, 2015, 23:54 Цитировать Никогда в Казани не был... А как там в моде нынче, кепка-беляш или "классика"-восьмиклинка? Не, ну Казань сейчас цивильный город, можно, конечно, нарваться на гопоту где-нить на "жилке", но там сейчас не так как было раньше) Запуганные они стали какие то.. Помню мы с девчёнками ночью там алкоголь покупали (недогон так сказать) и ничего, побратались с местными пацанами даже) И нормуль) Но это, возможно, мы уже сами под мухой были.. Хотя даже и не возможно, а точно)) Название: Re: Подстановка в слоты Отправлено: Igors от Октября 07, 2015, 05:36 У вас у практиков, по видимому, есть какая то сакральная связь) Я вот раз десять перечитывал, так ничего и не понял) Есть 3 объекта, напр шарик, кубик и плоскость. Запустили физический движок. Шарик начал падать под действием тяжести, отскочил от плоскости, ударил кубик и.т.д. Это "симуляция" которая в общем случае может считаться долго. Естественно записать все посчитанные траектории в файл, чтобы каждый раз симулятор не гонять. Столь же естественно вместо простого шарика подставить что-то посложнее/поинтереснее и пусть оно движется по рассчитанному пути.Но, не исключаю, что это чисто мои проблемы) Но всё же..) сохранять ID слотов, а не только индексы? Неясно что дальше. Позиция 1: файл может быть назначен извне (с диска), имеем какие-то "левые" ID (в файле). Ну может здесь и объективно решения нет (не знаю) Позиция 2: файл "родной" но все "оригиналы" уже заменены. Хмм... "что осталось на трубе"? Как-то я тут растерялся... Название: Re: Подстановка в слоты Отправлено: m_ax от Октября 07, 2015, 07:05 Цитировать Есть 3 объекта, напр шарик, кубик и плоскость. Запустили физический движок. Шарик начал падать под действием тяжести, отскочил от плоскости, ударил кубик и.т.д. Это "симуляция" которая в общем случае может считаться долго. Естественно записать все посчитанные траектории в файл, чтобы каждый раз симулятор не гонять. Столь же естественно вместо простого шарика подставить что-то посложнее/поинтереснее и пусть оно движется по рассчитанному пути. А с чего Вы взяли, что что-то отличное от шарика будет иметь ту же траекторию? В поле тяжести (однородной) у них разве совпадут траектории центов масс и то, только до первого столкновения с чем либо..Название: Re: Подстановка в слоты Отправлено: Igors от Октября 07, 2015, 07:14 А с чего Вы взяли, что что-то отличное от шарика будет иметь ту же траекторию? В поле тяжести (однородной) у них разве совпадут траектории центов масс и то, только до первого столкновения с чем либо.. То юзер решает устраивает ли его аппроксимация сложного объекта шариком (или др "Proxy Shape"). А Вы от темы не отвлекайтесь :)Название: Re: Подстановка в слоты Отправлено: Bepec от Октября 07, 2015, 07:37 Что вы паритесь?
Вы хотите чтобы индексы шли с нуля, по количеству объектов. Так создавайте их всегда при получении данных с файла, а после анализируйте, уже добавляя признаки "отключения/включения". Т.е. вместо использования статичных индексов используйте относительные, перерасчитываемые при вкл/откл объекта. например: Код: загружаем Втыкнули доп объект Код: - Obj // индекс в массиве 0, дополнительный индекс -1 (отключен) Переключили вкл/выкл для Obj, перерасчет дополнительных индексов Код: + Obj // индекс в массиве 0, дополнительный индекс 0 Т.е. вам всего то надо будет работать по дополнительному индексу, а не по индексу массива. PS но всё равно даже на такой ответ Igors скажет - смена темы / непонятная придирка / насмешка / пожелание не слышать больше ответов / добавление условий к задаче / смена задачи / демагогическое усложнение условия :) Название: Re: Подстановка в слоты Отправлено: Igors от Октября 07, 2015, 07:55 Т.е. вам всего то надо будет работать по дополнительному индексу, а не по индексу массива. Пробуем. Юзер выключил первый (нулевой) объект. Вообще-то он его спокойно может удалить - ничем не рискует, файл-то есть (это я к тому что отслеживание неактивных все проблемы не решит).загружаем По "дополнительным" тот же "сдвиг" что и сейчас (и чего хотелось бы избежать). Если он воткнет активный (между первой и второй строками) - будет норм, так это и сейчас так работает- Obj // индекс в массиве 0, дополнительный индекс -1 (отключен) + Obj // индекс в массиве 1, дополнительный индекс 0 + Obj // индекс в массиве 2, дополнительный индекс 1 В общем - не понял Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 07, 2015, 09:12 Цитировать Позиция 2: файл "родной" но все "оригиналы" уже заменены. Хмм... "что осталось на трубе"? В смысле заменены? Их удалили? Тогда старые удалить из файла, а новые заново пересчитать. Имя объекта прт этом может меняться как угодго, главное, чтоб id были уникальными. Название: Re: Подстановка в слоты Отправлено: Igors от Октября 07, 2015, 11:56 Цитировать Позиция 2: файл "родной" но все "оригиналы" уже заменены. Хмм... "что осталось на трубе"? В смысле заменены? Их удалили? Тогда старые удалить из файла, а новые заново пересчитать. [OFF] Вы даете типичные ответы "на основании (богатого) опыта" :) Вот только опыт этот выглядит удивительно однообразно и узковато - из того же ассыстентского ведра :) [/OFF] Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 07, 2015, 12:16 Цитировать Вы даете типичные ответы "на основании (богатого) опыта" Улыбающийся Вот только опыт этот выглядит удивительно однообразно и узковато - из того же ассыстентского ведра Улыбающийся Какие вопросы, такие и ответы :) Как я должен понимать фразу "все "оригиналы" уже заменены"? Название: Re: Подстановка в слоты Отправлено: Bepec от Октября 07, 2015, 17:49 И вот Igors выдал очередное требование - чтобы в массиве были ВСЕ объекты включая отключенные, с индексами по ПОРЯДКУ и чтобы сдвига не было. Но чтобы нулевым объектом, первым и так далее были только активные.
Это взаимоисключающие требования ) Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 07, 2015, 18:00 Если каждый элемент в "файле" будет иметь уникальный ID - то вообще по барабану, есть он, нет, удален, в другом порядке попал и т.д. Это имхо единственное решение и других придумывать смысла нет :)
Название: Re: Подстановка в слоты Отправлено: Igors от Октября 08, 2015, 07:53 И вот Igors выдал очередное требование - чтобы в массиве были ВСЕ объекты включая отключенные, с индексами по ПОРЯДКУ и чтобы сдвига не было. Но чтобы нулевым объектом, первым и так далее были только активные. Ничего не подозревал о таких требованиях, где я их "выдавал"? :) Вообще покажите где я чего "переиначил", т.е. добавил или изменил? Все как было в первом посте, так и осталосьЭто взаимоисключающие требования ) Если каждый элемент в "файле" будет иметь уникальный ID - то вообще по барабану, есть он, нет, удален, в другом порядке попал и т.д. Это имхо единственное решение и других придумывать смысла нет :) Топчемся на месте, тщетно пытаясь всунуть стандартную вещь. См хотя бы название "подстановка", т.е. др объект (ID которого не сохранено в файле) должен работатьМожет как-то "заякорить" их в UI? Типа "где бы ни стоял - его слот 2 в файле". Это пока очень смутно. Очевидно что без доп данных решения нет - ну так никто не запрещал их создавать Название: Re: Подстановка в слоты Отправлено: Bepec от Октября 08, 2015, 10:25 Очередная несвязная тема Igors :D как минимум два решения подходят, но он продолжает требовать невозможного :D
Название: Re: Подстановка в слоты Отправлено: Igors от Октября 08, 2015, 10:59 Очередная несвязная тема Igors :D как минимум два решения подходят, но он продолжает требовать невозможного :D Не поняли - отойдите и не мешайте тем кто понял. Не гадьте в моих темах (да и вообще ни в каких)Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 08, 2015, 11:57 Стоп. Насколько я понимаю ТЕПЕРЬ, то, что лежит в файле - это какие-то абстрактные траектории, и к самим объектам они имеют мало отношения. Ну тогда нужен двойной мэппинг - в файл пишутся траектории и ID этих ТРАЕКТОРИЙ, а каждый объект, имея собственный ID, должен иметь еще и связь с возможной ID траектории. В любом случае через индексы это не решается.
Название: Re: Подстановка в слоты Отправлено: Igors от Октября 08, 2015, 12:39 Стоп. Насколько я понимаю ТЕПЕРЬ, то, что лежит в файле - это какие-то абстрактные траектории, и к самим объектам они имеют мало отношения. Ну тогда нужен двойной мэппинг - в файл пишутся траектории и ID этих ТРАЕКТОРИЙ, а каждый объект, имея собственный ID, должен иметь еще и связь с возможной ID траектории. В любом случае через индексы это не решается. Возможно Вы видели компьютер изнутри :) Там ряд разъемов - так вот они, слоты. Каждый слот имеет индекс и в него можно чего-то воткнуть. Напр у нас пачка видюх и мы суем их в слоты одну за одной. Сейчас тупо подряд: первый из пачки - в слот 0, второй - в слот 1 и.т.д. Но юзеру нужна возможность это контролировать - напр оставить нулевой слот пустым.Ага, кажись начало придумываться... Название: Re: Подстановка в слоты Отправлено: Bepec от Октября 08, 2015, 19:15 Не буду спорить кто гадит и где, у нас противоположные мнения по этому поводу.
Но моё предложение насчёт относительного индекса полностью соответствует вопросу, озвученному в теме :) Другой вопрос, что у вас есть ещё невысказанные условия, по которым оно не подходит - но это проблема ваших тараканов :) Название: Re: Подстановка в слоты Отправлено: Igors от Октября 09, 2015, 03:01 См аттач. Юзер указал (пока неясно каким образом) что объект с таким-то ID соответствует слоту с таким-то индексом. Это не значит что "только этот слот (или объект) используются". Это просто "соответствие которое должно выполняться". Теперь если Object 1 отключен/удален, Slot 1 останется пустым (как и хотели). Если наоборот, 10 новых объектов поставлены выше Object 2 - только первый из них используется (для них есть только Slot 1)
Теперь это надо как-то (лаконично) реализовать в UI. Thoughts? Название: Re: Подстановка в слоты Отправлено: Bepec от Октября 09, 2015, 12:51 Вопрос, как тогда реализуется подстановка во второй и третий слоты?
Т.е. если допустим для 3 слотов, но определён лишь третий, тогда первые любые два встанут в свободные слоты? Или же присутствует разбиение на группы аля слот 1 слот 2 слот 3? Название: Re: Подстановка в слоты Отправлено: Igors от Октября 09, 2015, 14:37 Вопрос, как тогда реализуется подстановка во второй и третий слоты? Да. Тот же пример: из "пачки видюх" мы берем только в возрастающем порядке (хотя можем и не подряд). Напр 1, 3, 4. Также и слоты заполняем в возрастающем (и здесь можем пропускать). Теперь любое заданное соответствие "объект-слот" разбивает оба множества на 2. Внутри подмножеств действует начальное правило "лепи подряд", нет данных/оснований для другого. Т.е. если допустим для 3 слотов, но определён лишь третий, тогда первые любые два встанут в свободные слоты? Или же присутствует разбиение на группы аля слот 1 слот 2 слот 3? Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 09, 2015, 14:38 Цитировать Теперь это надо как-то (лаконично) реализовать в UI. Дык, наверное, так, как на рисунке, и будет лучше всего. И порядок сразу видно, и существующие связи :) Название: Re: Подстановка в слоты Отправлено: Igors от Октября 09, 2015, 14:43 Цитировать Теперь это надо как-то (лаконично) реализовать в UI. Дык, наверное, так, как на рисунке, и будет лучше всего. И порядок сразу видно, и существующие связи :) Название: Re: Подстановка в слоты Отправлено: Racheengel от Октября 11, 2015, 19:24 Цитировать Обильное UI, хотелось бы лаконичнее. UI - это лицо программы.. а оно должно быть максимально понятным пользователю. Не перегруженным и не слишком примитивным. Грань тонка, но как по мне, именно так, как на этой картинке, и отражает саму СУТЬ :) Цитировать И не совсем ясно как это должно роялить на момент нажатия "расчет" (тут-то уже слоты пропускать как-то..) Что значит роялить?Название: Re: Подстановка в слоты Отправлено: Igors от Октября 12, 2015, 11:05 Цитировать И не совсем ясно как это должно роялить на момент нажатия "расчет" (тут-то уже слоты пропускать как-то..) Что значит роялить?Цитировать * Obj 1 Просто бубочка в листбоксе, показывает что этот объект использовался для генерации. Теперь юзер заменил первый объект * Obj 2 * Obj 3 Цитировать Obj new Бубочка исчезла - ага, это уже "подставленный". Или может так* Obj 2 * Obj 3 Цитировать * 1 | Obj 1 Бубочка + индекс слота, бубочка означает что объект закреплен к слоту с этим индексом* 2 | Obj 2 * 3 | Obj 3 [OFF] Racheengel, лучше меньше ответов, но более продуманных. А то пока дубль-пусто ("КО") :) [/OFF] |