我試着在運行時將材料應用到我的GeometryModel3D像這樣:WPF 3D圖像刷物質上的幫助
var model3D = ShardModelVisual.Content as GeometryModel3D;
var materialGroup = model3D.Material as MaterialGroup;
BitmapImage image;
ResourceLoader.TryLoadImage("pack://application:,,,/AnzSurface;component/path file/img.png", out image, ".png");
var iceBrush = new ImageBrush(image);
var grp = new TransformGroup();
grp.Children.Add(new ScaleTransform(0.25, 0.65, 0.5, 0.5));
grp.Children.Add(new TranslateTransform(0.0, 0.0));
iceBrush.Transform = grp;
var iceMat = new DiffuseMaterial(iceBrush);
materialGroup.Children.Add(iceMat);
這一切工作正常,並且被添加的材料。
我不明白的是我如何將用戶點擊屏幕上的地圖映射到需要應用到TranslateTransform的偏移量。
I.e.目前,X:-0.25向後移動沿X軸的材質,但我不知道如何讓這種類型的從用戶點擊鼠標的座標...
當我這樣做:
e.MouseDevice.GetPosition(ShardsViewPort3D);
,讓我正常的X /鼠標點擊Y的corrds ...
感謝您的幫助,您可以給!
有可能是一個更好的方法來做到這一點,但顯而易見的方法是實施http://en.wikipedia.org/wiki/Ray_casting – 2009-11-16 03:07:07
嗯,不太清楚你的意思是什麼關於我的問題..你能否請進一步解釋這將如何幫助我的情況? – Mark 2009-11-16 03:55:55