/// <summary> /// overrides the <see cref="PlaneSurface.Normal(double, double)"/> method. /// </summary> /// <param name="u">first parameter.</param> /// <param name="v">second parameter.</param> /// <returns>the normal vector.</returns> public override xyz Normal(double u, double v) { xy value = new xy(u, v); double dir = 1; if (!SameSense) { dir = -1; } u = value.x; v = value.y; if (!Smooth) { return(base.Normal(u, v)); } if (value.dist(A11) < 0.001) { return(N11.normalized() * dir); } if (value.dist(A01) < 0.001) { return(N01.normalized() * dir); } if (value.dist(A10) < 0.001) { return(N10.normalized() * dir); } if (value.dist(A00) < 0.001) { return(N00.normalized() * dir); } if (A10.dist(A01) < 0.00001) { xyz B = BaryCentric(A00, A10, A11, value); return(((N00)*B.x + (N10)*B.y + (N11)*B.z) * dir); } if (((A10 - value) & (A01 - value)) == 0) { } if (((A00 - value) & (A01 - value)) > 0) { xyz B = BaryCentric(A11, A00, A01, value); return(((N11)*B.x + (N00)*B.y + (N01)*B.z) * dir); } else { xyz B = BaryCentric(A00, A11, A10, value); return(((N00)*B.x + (N11)*B.y + (N10)*B.z) * dir); } }
public ActionResult N11Yayinla(int urunID) { if (Session["kullaniciID"] == null) { return(RedirectToAction("Login")); } string mesaj = "Ürün N11'de Yayınlanmış/Güncellenmiştir..."; N11 n11 = new N11(); Urun urun = new Urun(); urun.LoadFromID(urunID); urun.LoadEntegrasyonBilgi(); long n11UrunID = 0; Int64.TryParse(urun.entegrasyonBilgi.n11UrunID.ToString(), out n11UrunID); if (n11UrunID == 0) { SaveProductResponse saveProductResponse = n11.SaveProduct(urun); if (saveProductResponse.result.status != "success") { mesaj = saveProductResponse.result.errorMessage; } } else { UpdateProductBasicResponse updateProductBasicResponse = n11.UpdateProductBasic(urun); if (updateProductBasicResponse.result.status != "success") { mesaj = updateProductBasicResponse.result.errorMessage; } } return(RedirectToAction("UrunDetay", new { id = urunID, hata = mesaj })); }