Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Управление мышкой 3Д моделями


Автор: LEVON 15.4.2008, 19:28
Всем привет!!

помогите чем можете буду сильно благодарен.

Хочу знать как манипулировать мышкой 3Д объектами. Тоисть вращение выделение перемещение и так далее. 

Кто что знает пишите.

Надо на С_шарп, под Managed DRD9.

Автор: mr.DUDA 16.4.2008, 09:41
Лови у формы (или контрола), куда рендерится объект, событие MouseMove и в обработчике крути вокруг Y (поворот Yaw) при горизонтальном перемещении курсора, и вокруг X (Pitch) при вертикальном. Последнюю координату курсора запоминай в отдельном поле, чтобы вычислять относительные перемещения.

Автор: LEVON 16.4.2008, 13:11
рендер произвожу в Panel. С вражением делаю как ты говориш, но у меня отна прыгает. вращаю приблизительно так 
Код

device.Transform.World = Matrix.RotationAxis(new Vector3(X, Y, 0), 1);
.

и еще. - когда работал с формой проблем с обновлением рисунка не было. обновлял с помощью Invalidate(); и менал стиль  this.SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.Opaque, true);, но когда пришлось начал рендерить в панельке, она начала у меня мерцать сильно, не знаю чо делать, подскажите пожалуйста  smile 

Автор: Мурлыкатам_ 21.4.2008, 10:12
Когда-то я рисовал на Win32 API и там мерцание возникало, если не использовалась двойная буферизация изображения, мот и тут че-то похожее?

Мот поможет (буферизация):
http://forums.realcoding.net/index.php?showtopic=19427

Вроде очень хорошая статья про GDI+:
http://www.rsdn.ru/article/gdi/gdiplus3.xml

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)