Interact with 3D Objects : 3D « Windows Presentation Foundation « VB.Net Tutorial






<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">
  <Viewport3D>
    <Viewport3D.Camera>
      <PerspectiveCamera LookDirection="0,0,-1" Position="0,0,5" />
    </Viewport3D.Camera>
    <ModelVisual3D>
      <ModelVisual3D.Content>
        <AmbientLight Color="White" />
      </ModelVisual3D.Content>
    </ModelVisual3D>
    <ModelUIElement3D MouseDown="polygon1_MouseDown">
      <GeometryModel3D>
        <GeometryModel3D.Geometry>
          <MeshGeometry3D Positions="-1,-1,1 1,-1,1 1,1,1" TriangleIndices="0 1 2" />
        </GeometryModel3D.Geometry>
        <GeometryModel3D.Material>
          <DiffuseMaterial Brush="Firebrick" />
        </GeometryModel3D.Material>
      </GeometryModel3D>
    </ModelUIElement3D>
    <ModelUIElement3D MouseDown="polygon2_MouseDown">
      <GeometryModel3D>
        <GeometryModel3D.Geometry>
          <MeshGeometry3D Positions="1,-1,0 1,1,0 -1,1,0" TriangleIndices="0 1 2" />
        </GeometryModel3D.Geometry>
        <GeometryModel3D.Material>
          <DiffuseMaterial Brush="CornflowerBlue" />
        </GeometryModel3D.Material>
      </GeometryModel3D>
    </ModelUIElement3D>
    <ModelUIElement3D MouseDown="polygon3_MouseDown">
      <GeometryModel3D>
        <GeometryModel3D.Geometry>
          <MeshGeometry3D Positions="1,0,0 1,1,0 0,1,0" TriangleIndices="0 1 2" />
        </GeometryModel3D.Geometry>
        <GeometryModel3D.Material>
          <DiffuseMaterial Brush="OrangeRed"/>
        </GeometryModel3D.Material>
      </GeometryModel3D>
    </ModelUIElement3D>
  </Viewport3D>
</Window>
//File:Window.xaml.vb
Imports System.Windows
Imports System.Windows.Input

Namespace WpfApplication1
  Public Partial Class Window1
    Inherits Window
    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub polygon1_MouseDown(sender As Object, e As MouseButtonEventArgs)
      MessageBox.Show("polygon1_MouseDown", "WpfApplication1")
    End Sub

    Private Sub polygon2_MouseDown(sender As Object, e As MouseButtonEventArgs)
      MessageBox.Show("polygon2_MouseDown", "WpfApplication1")
    End Sub

    Private Sub polygon3_MouseDown(sender As Object, e As MouseButtonEventArgs)
      MessageBox.Show("polygon3_MouseDown", "WpfApplication1")
    End Sub
  End Class
End Namespace
WPF Interact With3 D Objects








16.117.3D
16.117.1.Define light and Material for 3D objectDefine light and Material for 3D object
16.117.2.Use 3D in Your ApplicationUse 3D in Your Application
16.117.3.A simple 3D modelA simple 3D model
16.117.4.MeshGeometry3DMeshGeometry3D
16.117.5.GeometryModel3D with MeshGeometry3DGeometryModel3D with MeshGeometry3D
16.117.6.GeometryModel3D Geometry MaterialGeometryModel3D Geometry Material
16.117.7.Setup Viewport3D.CameraSetup Viewport3D.Camera
16.117.8.DiffuseMaterial DemoDiffuseMaterial Demo
16.117.9.AmbientLight DemoAmbientLight Demo
16.117.10.Draw a 3D ModelDraw a 3D Model
16.117.11.Point lightPoint light
16.117.12.Directional lightDirectional light
16.117.13.Spot lightSpot light
16.117.14.Ambient lightAmbient light
16.117.15.Specular MaterialSpecular Material
16.117.16.Diffuse MaterialDiffuse Material
16.117.17.Interact with 3D ObjectsInteract with 3D Objects