| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > WPF и Silverlight > Как обратиться к MeshGeometry3D в xaml-модели |
| Автор: liri2006 16.9.2010, 15:40 |
| С помощью 3dTools в проект загружается модель, теперь хочу прикрутить возможность обработки событий по клику на части этой самой модели. Нашел пример: <ModelUIElement3D MouseDown="Cube1MouseDown"> <ModelUIElement3D.Transform> <TranslateTransform3D OffsetZ="1.5" /> </ModelUIElement3D.Transform> <ModelUIElement3D.Model> <GeometryModel3D Geometry="{StaticResource CubeMesh}"> <GeometryModel3D.Material> <DiffuseMaterial x:Name="cube1Material" Brush="Blue" /> </GeometryModel3D.Material> </GeometryModel3D> </ModelUIElement3D.Model> </ModelUIElement3D> таким образом MeshGeometry3D разделяется на отдельные элементы, которыми сопсно и манипулируют. Загвоздка в том шо у них мэши прописани там же в коде, а у меня это загружается из файла, вот и вопрос: как засунуть в эту строчку <GeometryModel3D Geometry="{StaticResource CubeMesh}"> свои MeshGeometry3D? |
| Автор: zel25b 20.9.2010, 19:05 |
| У тебя в отдельном файле лежат модели в хамл коде? Если так - то сначала десериализируй 3д модель в обьект, а потом уже этот обьект подключай к коду |
| Автор: liri2006 20.9.2010, 22:26 |
| да модели в XAML файле. А можна небольшой пример? |
| Автор: zel25b 21.9.2010, 11:11 | ||
Принцип таков:
Можно не заменять модель, а добавить в старую модель новую геометрию. Принцип таков, а если у тебя по другому хранится модель в файле - надо уже думать как ее десериализовать |
| Автор: liri2006 1.10.2010, 01:05 |
| Так, с этим разобрался, обошлось без сериализации\десериализации, но за помощь спасибо! |