Ich habe eine Reihe von prozeduralen Bildern, die ich als meine helix 3D-Anwendung als Werbetafeln hinzufügen möchte.Wie fügt man eine procedarally generated billboard Helix 3D
Derzeit meine Anwendung sieht wie folgt:
public partial class _3DControl
{
HelixViewport3D hVp3D;
public _3DControl()
{
InitializeComponent();
createView();
}
public void createView()
{
hVp3D = new HelixViewport3D();
var lights = new SunLight();
lights.Altitude=40;
lights.Ambient=0.4;
this.Content = hVp3D;
hVp3D.Children.Add(lights);
this.Show();
}
public void UploadBillboard(BitmapImage im, System.Windows.Media.Media3D.Point3D position,double width,double height)
{
//create material
var mat = MaterialHelper.CreateImageMaterial(im, 0);
var bboard = new BillboardVisual3D();
bboard.Material = mat;
//set coordinates
bboard.Position = position;
bboard.Width = width;
bboard.Height = height;
//add the billboard
hVp3D.Children.Add(bboard);
}
Allerdings, wenn ich die Funktion aufrufen, eine Plakatwand hinzuzufügen:
HelixLinker.GetHelix().UploadBillboard(((Bitmap)e).bitmapToBitmapImage(),
new System.Windows.Media.Media3D.Point3D(0, 0, 0), 100, 100);
Dann sehe ich nichts hinzugefügt wird, eine Idee, was ich tue‘ falsch?
Ich habe auch mit der RectangleVisual3D Klasse versucht.
public void UploadRect(BitmapImage im, System.Windows.Media.Media3D.Point3D position, double width, double height)
{
var mat = MaterialHelper.CreateImageMaterial(im, 0);
var bboard = new RectangleVisual3D();
bboard.Material = mat;
bboard.Width = width;
hVp3D.Children.Add(bboard);
}
die in der gleichen Art und Weise führt zu einem (viel versprechend) Bild jedoch in diesem Fall das Material nicht, wenn execuded erscheint richtig eingestellt werden.
Hinweis: Ich hoffe, dass die BillboardVisual3D die richtige Klasse ist, ich arbeite an etwas, das mir erlauben wird, Bild "auf den Boden" sozusagen zu legen, ich möchte flache Bilder, die keine haben Tiefe und Transparenz ermöglichen.
Irgendwelche Ideen für weitere Informationen sprechen Sie uns bitte (dies ist das erste, was ich mit Helix mache und als solches habe ich keine Ahnung, welche Informationen wichtig sind. – Thijser