Ejemplo n.º 1
0
 private void TriangleDied(Vector3 position, Enums.EntityType triangleType)
 {
     for (int i = 0; i < 10; i++)
     {
         TriangleEntity triangle = new TriangleEntity(triangleType, position, Vector3.Zero, 0.3f, new BoomMovement());
         triangle.TriangleDied += (p) => EntitiesToDelete.Add(triangle);
         Entities.Add(triangle);
     }
 }
 /// <inheritdoc />
 /// <summary>
 /// Gets Triangle type.
 /// </summary>
 /// <returns>Returns TriangleT type.</returns>
 public TriangleType GetTriangleType()
 {
     try
     {
         return(TriangleEntity.FindTriangle());
     }
     catch (InvalidOperationException invalOperaEx)
     {
         throw invalOperaEx;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 3
0
 public MainModel()
 {
     Entities.Add(new Entity(Enums.EntityType.Nvidia, new Vector3(5, 15, 0), new Vector3((float)Math.PI, (float)Math.PI / 2, (float)Math.PI / 30), 1f));
     _orbit1 = new Orbit(new Vector3(2, 0, 0), new Vector3(0, 0.5f, 0), new Vector3(0, 0, 0), Vector3.Zero);
     Entities.Add(new Entity(Enums.EntityType.Radeon, new Vector3(5, 15, 0), new Vector3((float)Math.PI, (float)Math.PI / 2, (float)Math.PI / 30), 1f));
     _orbit2 = new Orbit(new Vector3(2, 0, 0), new Vector3(0, 0.5f, 0), new Vector3(0, 0, 0), new Vector3(0, (float)Math.PI, 0));
     Entities.Add(new Entity(Enums.EntityType.Sphere, new Vector3(0f, 10f, 0f), new Vector3(2, 0, 0.5f), 3f));
     for (int i = 0; i < 6; i++)
     {
         TriangleEntity triangle = new TriangleEntity(Enums.EntityType.NvidiaParticle, new Vector3(5, 15, 0), Vector3.Zero, 0.4f, new ArchMovement(i * 2));
         triangle.TriangleDied += (position) => TriangleDied(position, triangle.Type);
         Entities.Add(triangle);
         _baseTriangleIndices.Add(Entities.Count - 1);
     }
     for (int i = 0; i < 6; i++)
     {
         TriangleEntity triangle = new TriangleEntity(Enums.EntityType.RadeonParticle, new Vector3(5, 15, 0), Vector3.Zero, 0.4f, new ArchMovement(i * 2));
         triangle.TriangleDied += (position) => TriangleDied(position, triangle.Type);
         Entities.Add(triangle);
         _baseTriangleIndices.Add(Entities.Count - 1);
     }
     Entities.Add(new Entity(Enums.EntityType.Voronoi, Vector3.Zero, Vector3.Zero, 1));
 }
Ejemplo n.º 4
0
 /// <inheritdoc />
 /// <summary>
 ///     Checks if passed Triangle values are greater than Zero.
 /// </summary>
 /// <param name="entity">Triangle entity object.</param>
 /// <returns>Returns error string if values are invalid.</returns>
 /// <exception cref="ArgumentNullException"></exception>
 /// <exception cref="ArgumentException"></exception>
 /// <exception cref="Exception"></exception>
 public string GreaterThanZero(TriangleEntity entity)
 {
     try
     {
         if (entity.Length <= 0 || entity.Height <= 0 || entity.Base <= 0)
         {
             return("Some Triangle values are equal or less than zero.");
         }
         return(string.Empty);
     }
     catch (ArgumentNullException argNullEx)
     {
         throw argNullEx;
     }
     catch (ArgumentException argEx)
     {
         throw argEx;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Checks if two sides summation are greater than the third side.
 /// </summary>
 /// <param name="entity">Triangle entity object.</param>
 /// <returns>Returns error string if values are invalid.</returns>
 /// <exception cref="ArgumentNullException"></exception>
 /// <exception cref="ArgumentException"></exception>
 /// <exception cref="Exception"></exception>
 public string AxisesValidForTriangle(TriangleEntity entity)
 {
     try
     {
         if (!(entity.Length + entity.Height > entity.Base) || !(entity.Length + entity.Base > entity.Height) ||
             !(entity.Height + entity.Base > entity.Length))
         {
             return(TriangleType.Unknown + " triangle type. Triangle passed values are invalid.");
         }
         return(string.Empty);
     }
     catch (ArgumentNullException argNullEx)
     {
         throw argNullEx;
     }
     catch (ArgumentException argEx)
     {
         throw argEx;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 6
0
 public static IntersectTriangleResult?IntersectTriangle(this RayEntity rayEntity, TriangleEntity polygon)
 {
     return(rayEntity.IntersectTriangle(polygon.VertexA, polygon.VertexB, polygon.VertexC, polygon.Normal));
 }