Exemplo n.º 1
0
 public SpotLightAdorner3D(AdornerSet3D adornerSet, SpotLightAdornerBehavior3D.TypeOfConeAngle typeOfConeAngle)
     : base(adornerSet)
 {
     this.typeOfConeAngle      = typeOfConeAngle;
     this.spotPropertyGeometry = Torus.CreateTorus(1.0, 0.015, 24, 15, this.typeOfConeAngle != SpotLightAdornerBehavior3D.TypeOfConeAngle.InnerConeAngle ? Adorner3D.RedLook : Adorner3D.GreenLook);
     this.AdornerModel         = new Model3DGroup();
     this.AdornerModel.Children.Add((Model3D)this.spotPropertyGeometry);
     this.SetName((DependencyObject)this.AdornerModel, "SpotLightAdorner3D");
 }
Exemplo n.º 2
0
 public SpotLightConeAdorner3D(AdornerSet3D adornerSet, SpotLightAdornerBehavior3D.TypeOfConeAngle typeOfConeAngle)
     : base(adornerSet)
 {
     this.typeOfConeAngle = typeOfConeAngle;
     for (int index = 0; index < 4; ++index)
     {
         this.spotPropertyGeometry.Children.Add((Model3D)Cylinder.CreateCylinder(0.01, 1.0, 8, (Material) new DiffuseMaterial((Brush) new SolidColorBrush(this.typeOfConeAngle != SpotLightAdornerBehavior3D.TypeOfConeAngle.InnerConeAngle ? Color.FromRgb(byte.MaxValue, (byte)0, (byte)0) : Color.FromRgb((byte)0, byte.MaxValue, (byte)0))), (Material)null, (Material)null));
     }
     this.AdornerModel = new Model3DGroup();
     this.AdornerModel.Children.Add((Model3D)this.spotPropertyGeometry);
     this.SetName((DependencyObject)this.AdornerModel, "SpotLightConeAdorner3D");
 }
Exemplo n.º 3
0
 public static double CalculateConeRadius(SpotLight spotLight, SpotLightAdornerBehavior3D.TypeOfConeAngle typeOfConeAngle)
 {
     return(Math.Tan((typeOfConeAngle != SpotLightAdornerBehavior3D.TypeOfConeAngle.InnerConeAngle ? spotLight.OuterConeAngle : spotLight.InnerConeAngle) / 180.0 * Math.PI) * 1.0);
 }