Пример #1
0
        public IHttpActionResult Putgp(int id, gp gp)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != gp.id_gp)
            {
                return(BadRequest());
            }

            db.Entry(gp).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!gpExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            gp gp = db.gp.Find(id);

            db.gp.Remove(gp);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #3
0
        public IHttpActionResult Getgp(int id)
        {
            gp gp = db.gp.Find(id);

            if (gp == null)
            {
                return(NotFound());
            }

            return(Ok(gp));
        }
Пример #4
0
 public ActionResult Edit([Bind(Include = "id_gp,nome,local_gp,data_gp,temporada_id_temporada")] gp gp)
 {
     if (ModelState.IsValid)
     {
         db.Entry(gp).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.temporada_id_temporada = new SelectList(db.temporada, "id_temporada", "nome", gp.temporada_id_temporada);
     return(View(gp));
 }
Пример #5
0
        public IHttpActionResult Postgp(gp gp)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.gp.Add(gp);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = gp.id_gp }, gp));
        }
Пример #6
0
        public IHttpActionResult Deletegp(int id)
        {
            gp gp = db.gp.Find(id);

            if (gp == null)
            {
                return(NotFound());
            }

            db.gp.Remove(gp);
            db.SaveChanges();

            return(Ok(gp));
        }
Пример #7
0
        // GET: gps1/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            gp gp = db.gp.Find(id);

            if (gp == null)
            {
                return(HttpNotFound());
            }
            return(View(gp));
        }
Пример #8
0
        // GET: gps1/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            gp gp = db.gp.Find(id);

            if (gp == null)
            {
                return(HttpNotFound());
            }
            ViewBag.temporada_id_temporada = new SelectList(db.temporada, "id_temporada", "nome", gp.temporada_id_temporada);
            return(View(gp));
        }
        private void GenerateBuffers(gp.Pnt[] points, gp.Pnt2d[] uvpoints, int[] triangles)
        {
            Vector3 edge1, edge2, normal;
            uint[] normalsCount = new uint[points.Length];
            Vector3[] normals = new Vector3[points.Length];
            VertexPositionNormalTexture[] vertex = new Microsoft.Xna.Framework.Graphics.VertexPositionNormalTexture[points.Length];

            for (int ind = 0; ind < triangles.Length; ind += 3)
            {
                edge1 = new Vector3(
                    (float)(points[triangles[ind]].x - points[triangles[ind + 1]].x),
                    (float)(points[triangles[ind]].y - points[triangles[ind + 1]].y),
                    (float)(points[triangles[ind]].z - points[triangles[ind + 1]].z));
                edge2 = new Vector3(
                    (float)(points[triangles[ind + 2]].x - points[triangles[ind + 1]].x),
                    (float)(points[triangles[ind + 2]].y - points[triangles[ind + 1]].y),
                    (float)(points[triangles[ind + 2]].z - points[triangles[ind + 1]].z));
                Vector3.Cross(ref edge1, ref edge2, out normal);
                edge1 = new Vector3(
                    (float)(points[triangles[ind]].x),
                    (float)(points[triangles[ind]].y),
                    (float)(points[triangles[ind]].z));
                if (Vector3.Dot(normal, edge1) < 0)
                    normal *= -1.0f;
                normal.Normalize();
                normals[triangles[ind]] += normal;
                ++normalsCount[triangles[ind]];
                normals[triangles[ind + 1]] += normal;
                ++normalsCount[triangles[ind + 1]];
                normals[triangles[ind + 2]] += normal;
                ++normalsCount[triangles[ind + 2]];
            }
            for (int i = 0; i < points.Length; i++)
            {
                normals[i] /= (float)normalsCount[i];
                Vector3 pos = new Vector3((float)points[i].x, (float)points[i].y, (float)points[i].z);
                //pos *= 5;
                Vector2 tex = new Vector2((float)uvpoints[i].x, (float)uvpoints[i].y);
                vertex[i] = new Microsoft.Xna.Framework.Graphics.VertexPositionNormalTexture(
                    pos, normals[i], tex);
            }

            indexData.Add(triangles);
            vertexData.Add(vertex);
        }