2009-06-04 4 views
1

Возможно ли внедрить трехмерный редактор внутри моего приложения wxPython? (Я думаю, что Blender, но другие предложения приветствуются.)Встраивание трехмерного редактора (например, Blender) в приложение wxPython

Мое приложение открывает окно wxPython, и я хочу, чтобы внутри него был трехмерный редактор. Конечно, я хочу, чтобы моя программа и трехмерный редактор взаимодействовали друг с другом.

Возможно? Как?

+1

Когда вы говорите, «взаимодействовать с», какие были вы надеетесь на это? –

+0

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

ответ

0

Для Blender конкретно, я сомневаюсь. Blender использует пользовательский интерфейс на основе OpenGL, и я не уверен, что вы можете заставить его использовать ранее существующее окно. Я предлагаю просмотреть код «Ghost», который является настраиваемым уровнем адаптации Blender (отвечающим за взаимодействие с ОС для целей пользовательского интерфейса).

2

Blender имеет плагины для python, вы можете написать плагин для взаимодействия с вашей программой.

+0

http://blenderartists.org/forum/archive/index.php/t-3098.html и http://blenderartists.org/forum/archive/index.php/t-3336.html обсуждают использование сокетов для связи между Экземпляры Blender, что-то подобное можно легко сделать между Python и Blender – dbr

+0

Но в этом случае Blender все еще будет своим окном или будет внутри окна моей программы? Я стремлюсь к последнему. –

+0

Это будет отдельное окно/приложение – dbr

0

Возможно, this script может предоставить определенный контекст для вашего проекта. Он объединяет Blender, ActiveX и wxPython.

Предостережение: Windows только.

1

I вторая идея Luper Rouch о плагинах Blender. Но если у вас есть собственное окно, вам нужно разблокировать Blender. Взгляните на проект makehuman. Раньше Blender был платформой. (Я не уверен, но я думаю, что они имеют различную инфраструктуру сейчас)

0

Для Blender2.5 на Linux вы можете использовать gtk.Socket, пример кода here on pastebin

+0

Добро пожаловать на SO. Поскольку это не слишком долго, я предлагаю вам вставить соответствующую часть. Вы можете сделать это, нажав кнопку «Изменить» ниже своего сообщения. :) – ForceMagic

 Смежные вопросы

  • Нет связанных вопросов^_^