Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 01.06.2016
Сообщений: 8
1

Отображение нескольких объектов stl

15.02.2020, 00:37. Показов 2216. Ответов 7

Author24 — интернет-сервис помощи студентам
Здравствуйте. Возникла проблема при отображении нескольких stl-файлов с помощью numpy-stl и matplotlib. В моем случае красный объект находится внутри желтого, но отображается так, будто находится позади него. Если я правильно понял, на первый план выходит тот объект, у которого наименьшее расстояние от наблюдателя до ближайшей точки меньше, чем у другого объекта. Другой объект при этом уходит на второй план. Как можно исправить это, не соединяя два stl-файла в один?

На первой картинке то, что должно получиться. Но второй то, что получается.

Код имеет следующий вид:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from stl import mesh
from mpl_toolkits import mplot3d
from matplotlib import pyplot
 
fig = pyplot.figure()
axes = mplot3d.Axes3D(fig)
 
mgrid = mesh.Mesh.from_file('external_clip.stl')
b = mplot3d.art3d.Poly3DCollection(mgrid.vectors)
b.set_edgecolor('k')
b.set_facecolor('y')
 
 
mgrid = mesh.Mesh.from_file('inner_clip.stl')
c = mplot3d.art3d.Poly3DCollection(mgrid.vectors)
c.set_edgecolor('k')
c.set_facecolor('r')
 
axes.add_collection3d(c)
axes.add_collection3d(b)
 
scale = mgrid.points.flatten('F')
axes.auto_scale_xyz(scale, scale, scale)
 
pyplot.show()
Миниатюры
Отображение нескольких объектов stl   Отображение нескольких объектов stl  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2020, 00:37
Ответы с готовыми решениями:

Отображение obj/stl объектов
Здравствуйте,пишу отображение obj/stl объектов на сайте,вот полный код var _loaders = {}, ...

STL вектор динамических объектов
Нужно время от времени ложить в std::vector (или std::list) динамические объекты. Под динамическим...

STL. Сортировка объектов в контейнере
Имеется список list из объектов Time (минуты:секунды). Через собственный метод...

Копирование данных из файла в отображение. STL
Суть такова. Написал программку. Предполагается, что работает она так: открывает текстовый файл,...

Отображение нескольких таблиц в нескольких dataGridView
Доброго всем времени суток, пишу программу на C# которая работает с БД access 2007. БД состоит из...

7
1287 / 672 / 365
Регистрация: 07.01.2019
Сообщений: 2,251
15.02.2020, 00:47 2
Покрутите все это, сейчас непонятно, то ли оно съехало, то ли модель некорректная
0
0 / 0 / 0
Регистрация: 01.06.2016
Сообщений: 8
15.02.2020, 00:56  [ТС] 3
Вот картинки с других ракурсов. На второй и третьей все как надо, в остальных случаях опять красная деталь уходит на задний план.
Миниатюры
Отображение нескольких объектов stl   Отображение нескольких объектов stl   Отображение нескольких объектов stl  

Отображение нескольких объектов stl   Отображение нескольких объектов stl  
0
1287 / 672 / 365
Регистрация: 07.01.2019
Сообщений: 2,251
15.02.2020, 01:03 4
Можете еще сделать фото с открытого торца?
0
0 / 0 / 0
Регистрация: 01.06.2016
Сообщений: 8
15.02.2020, 01:20  [ТС] 5
Вот:
Миниатюры
Отображение нескольких объектов stl   Отображение нескольких объектов stl  
0
1287 / 672 / 365
Регистрация: 07.01.2019
Сообщений: 2,251
15.02.2020, 01:48 6
Лучший ответ Сообщение было отмечено hatijat как решение

Решение

Модель всегда нормальная, а вот рендер не правильный, видно переоптимизировали проверку на видимость, тут особо ничего не сделаешь, если только открыть issue вот здесь https://github.com/matplotlib/matplotlib/issues и запостить всю эту проблему
1
0 / 0 / 0
Регистрация: 26.05.2019
Сообщений: 1
15.04.2020, 18:08 7
Если вы решили проблему, не могли бы подсказать, делать надо тоже самое
0
0 / 0 / 0
Регистрация: 01.06.2016
Сообщений: 8
01.05.2020, 17:24  [ТС] 8
Проблему не решил, перешел от stl файлов к схематичному изображению примитивами
0
01.05.2020, 17:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.05.2020, 17:24
Помогаю со студенческими работами здесь

Как средствами STL построить список объектов
Подскажите как реализуется данная задача, желательно с примером кода. Спасибо

работа с STL. Передача пользовательских объектов в предикаты по ссылке
/*не могу понять почему в свои некоторые предикаты компилятор позволяет передавать ссылки. А в...

Как создать STL stack объектов пользовательского класса?
Всем привет! Скажите пожалуйста, как создать STL stack объектов пользовательского класса в WinForm...

Информация о работниках нескольких фирм с использованием STL
Помогите написать код. ПОЖАЛУЙСТА! 2 фирмы (А и В). следует обеспечить возможность ввода...

Существует ли объект STL для хранения объектов производных классов
привет чтобы хранить объекты разных производных классов используют указатель на базовый. но это...

Разработать класс для хранения списка объектов классов, используя STL-контейнер
Разработать класс для хранения списка объектов классов, используя контейнер библиотеки STL. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru