Новости • Форум • Помощь • Поиск • Участники • Календарь • База |
Гость ( Вход | Регистрация ) | Выслать повторно письмо для активации |
Страницы: (16) « Первая ... 7 8 [9] 10 11 ... Последняя » ( Перейти к первому непрочитанному сообщению ) | Ответ Новая тема |
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
спасибо, понял)
а возможно ли удалять шейдер по ProgID ? Он когда удаляет пишет имя Gescort ты ж как раз писал вроде материал либрэри свой, все про маты и шейдеры уже знаешь там )) или например все с таким то ProgID удалить с обьекта, например "Softimage.material-phong.1.0" |
Gescort Профиль Статус: слон Группа: Заслуженные артисты Рейтинг: 3 |
Вот код найти все фонги и удалить
Соответственно если только в выделенном, то дополнительно узнаешь для найденного фонга Parent3DObject и есть ли он в Selection, если да, то на удаление. В материал либрари там было немного по другому, как таковую работу с материалами и не делал - только импорт/экспорт. Но как-то все коряво с реализацией вышло и не совсем удобно. Сейчас сам лично использую для перебрасывания матов из проекта в проект. Ну и некоторые базовые пресеты храню. А так чтобы реально библиотекой не очень пошло. |
||
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
а как проверять наличие обьектов? все не могу с этим разобраться.. постоянно нужна проверка, если есть этот обьект значить не запускать код, к примеру сейчас надо проверить есть ли Texture_Coordinates_AUTO или Texture_Projection, не знаю что из них, но пробую писать типа
хотя понимаю что не то, но найти в сдк как правильно не могу, понимаю что в этом случае надо булеан вызвать, а с чем сравнить допереть не могу) у тебя в предыдущих кодах сравнения с стринг именем, хз тут то так сканает ли |
||
Angel 07 Профиль Статус: слон Группа: Артисты Рейтинг: 7 |
|
||
Gescort Профиль Статус: слон Группа: Заслуженные артисты Рейтинг: 3 |
Можно как Angel 07 подсказал, но надо будет знать имя объекта, который нужно проверять. Или вот общий цикл проверки на наличие текстурных проекций у объекта.
|
||
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
Спасибо люди добрые, чтоб я без вас делал :) дабы разобраться пока убрал все лишнее и достаточно такой строчки чтоб работало
позже уже нагружу условиями типа множеств обьектов и кластеров |
||
Gescort Профиль Статус: слон Группа: Заслуженные артисты Рейтинг: 3 |
eistan
только учти, что если задача найти все-таки текстурную проекцию, то этот код учитывает наличие любых кластеров. Т.е. если будет полигональный кластер и не будет проекции, то он посчитает True, поэтому проверять их по типу придется обязательно. |
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
Gescort ну да, я так и понял что он кластеры все считает, но пока норм) просто почему то твой не хочет работать если так пишу
не пойму почему ругается на 4 строчку, если с твоим не отличается, только лишь for убрал |
||
Gescort Профиль Статус: слон Группа: Заслуженные артисты Рейтинг: 3 |
Вообще у меня не ругается. Но наверное все зависит от того объекта на котором тестируешь.
Особенность порядка кластеров в том, что они хранятся в порядке их добавления. Если объекту был первым добавлен семл кластер с текстурной проекцией, а потом все остальные, то забирая нулевой объект oClusters = oSel.ActivePrimitive.Geometry.Clusters(0) все будет ок, а если наоборот - сначала любые другие кластеры, а потом семпл кластер, то получишь другой кластер и условие if не выполнится. Именно по этому я пробегал по ним всем циклом for. |
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
не, я тестирую на обьекте где нет вообще ничего, мне вот надо чтоб такие обьекты тоже проверялись) простое условие, либо есть, либо нет текстур прожекшн
|
Gescort Профиль Статус: слон Группа: Заслуженные артисты Рейтинг: 3 |
Тогда правильно ругается - забирая первый индек кластера ты получаешь "NoneType", а у него нет свойства Type.
Вставляй условие if oClusters.Count > 0 |
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
а можно ли как то получить данные размера картинки? хочу сделать сркипт создающий плэейн с размером пикчи, или может уже есть такой ?) апд. получил такой строчкой
но выдал 128 цифру, это что ? размер картинки в пикселях 1200х1200 апд. а вот нашел
|
||||
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
вобщем вдруг кому надо) кидаем картинку в материал менеджер, выделяем ее, и запускаем скрипт, создает плэйн размером с картинкой и назначает сразу как текстурой констант createGridFromImage
и как работает собственно, хотя можно было и не писать видео) и так все понятно |
||
eistan Профиль Статус: леонардо Группа: Заслуженные артисты Рейтинг: 2 |
а есть ли в питоне возможность вернуть глобальный размер обьекта как bounding box? чтоб потом учитывая эти размеры расчитывать расстояния и прочее
|
Gescort Профиль Статус: слон Группа: Заслуженные артисты Рейтинг: 3 |
GetBBox - возвращает глобальные размеры введенных объектов, т.е. можно в него пихать не один, а сразу несколько (Selection) и вернет параметры для этой группы: http://docs.autodesk.com/SI/2015/ENU/Softi...ds/GetBBox.html
И различные варианты - для объекта x3dobject: http://docs.autodesk.com/SI/2015/ENU/Softi...oundingBox.html И для Geometry: http://docs.autodesk.com/SI/2015/ENU/Softi...oundingBox.html Там же можно вызывать GetBoundingCapsule и GetBoundingSphere. |
Страницы: (16) « Первая ... 7 8 [9] 10 11 ... Последняя » | Ответ Новая тема |