using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using OpenTK;

namespace ObjectManager
{
    public class Vertex
    {
        public Vector3d Coordinates;
        public Vector3d PresetNormals;
        public Vector2d TextureCoordinates;

        #region Constructors

        public Vertex(double vX, double vY, double vZ, double nX, double nY, double nZ, double tX, double tY)
        {
            this.Coordinates = new Vector3d(vX, vY, vZ);
            this.PresetNormals = new Vector3d(nX, nY, nZ);
            this.TextureCoordinates = new Vector2d(tX, tY);
        }

        public Vertex(double vX, double vY, double vZ, double nX, double nY, double nZ)
        {
            this.Coordinates = new Vector3d(vX, vY, vZ);
            this.PresetNormals = new Vector3d(nX, nY, nZ);
            this.TextureCoordinates = Vector2d.Zero;
        }

        public Vertex(double vX, double vY, double vZ)
        {
            this.Coordinates = new Vector3d(vX, vY, vZ);
            this.PresetNormals = Vector3d.Zero;
            this.TextureCoordinates = Vector2d.Zero;
        }

        public Vertex()
        {
            this.Coordinates = Vector3d.Zero;
            this.PresetNormals = Vector3d.Zero;
            this.TextureCoordinates = Vector2d.Zero;
        }

        public Vertex(Vertex vertex)
        {
            this.Coordinates = vertex.Coordinates;
            this.PresetNormals = vertex.PresetNormals;
            this.TextureCoordinates = vertex.TextureCoordinates;
        }

        #endregion
    }
}
