Mega Code Archive

 
Categories / VB.Net Tutorial / WPF
 

Ambient light

<Window  x: Class="WpfApplication1.Window1"   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   Title="" Height="300" Width="300" Loaded="Window1_Loaded">     <Window.Resources>         <MeshGeometry3D x:Key="triangleMesh" Positions="-1,-1,0 1,-1,-2 1,1,0" TriangleIndices="0 1 2" />     </Window.Resources>     <UniformGrid>         <Viewport3D x:Name="vp1">             <Viewport3D.Camera>                 <PerspectiveCamera LookDirection="0,0,-1" Position="0,0,5" />             </Viewport3D.Camera>             <ModelVisual3D>                 <ModelVisual3D.Content>                     <AmbientLight Color="White" />                 </ModelVisual3D.Content>             </ModelVisual3D>         </Viewport3D>       </UniformGrid> </Window> //File:Window.xaml.vb Imports System.Windows Imports System.Windows.Controls Imports System.Windows.Media Imports System.Windows.Media.Media3D Namespace WpfApplication1   Public Partial Class Window1     Inherits Window     Public Sub New()       InitializeComponent()     End Sub     Private Sub Window1_Loaded(sender As Object, e As RoutedEventArgs)       Dim triangleMesh As MeshGeometry3D = DirectCast(TryFindResource("triangleMesh"), MeshGeometry3D)       CreateTriangles(vp1, 4, triangleMesh)     End Sub     Private Sub CreateTriangles(viewport3D As Viewport3D, triangleCount As Integer, triangleMesh As MeshGeometry3D)       Dim modelVisual3D As New ModelVisual3D()       Dim geometryModel3D As New GeometryModel3D()       geometryModel3D.Geometry = triangleMesh       geometryModel3D.Material = New DiffuseMaterial(Brushes.Firebrick)       modelVisual3D.Content = geometryModel3D       Dim rotateTransform As New RotateTransform3D()       rotateTransform.Rotation = New AxisAngleRotation3D(New Vector3D(0, 0, -1), 20)       modelVisual3D.Transform = rotateTransform       viewport3D.Children.Add(modelVisual3D)     End Sub   End Class End Namespace