B-Spline Eğrisi

Benzer belgeler
MAK 210 SAYISAL ANALİZ

Eğri ve Yüzey Modelleme. Prof. Dr. Necmettin Kaya

MAK 210 SAYISAL ANALİZ

İleri Diferansiyel Denklemler

MAK 210 SAYISAL ANALİZ

YAPI STATİĞİ II (Hiperstatik Sistemler) Yrd. Doç. Dr. Selçuk KAÇIN

Kübik Spline lar/cubic Splines

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

Yrd. Doç. Dr. A. Burak İNNER

PROJE ADI: Bir Koniğin Üzerindeki Veya Dışındaki Bir Noktadan Çizilen Teğetlerin Denklemlerini Matrisler Yardımıyla Bulma

6. HAFTA DERS NOTLARI İKTİSADİ MATEMATİK MİKRO EKONOMİK YAKLAŞIM. Yazan SAYIN SAN

İleri Diferansiyel Denklemler

MAK 210 SAYISAL ANALİZ

x e göre türev y sabit kabul edilir. y ye göre türev x sabit kabul edilir.

İÇİNDEKİLER ÖNSÖZ Bölüm 1 SAYILAR 11 Bölüm 2 KÜMELER 31 Bölüm 3 FONKSİYONLAR

YAVAŞ DEĞİŞEN ÜNİFORM OLMAYAN AKIM

5.3. Tekne Yüzeylerinin Matematiksel Temsili

Alıştırmalar 1. 1) Aşağıdaki diferansiyel denklemlerin mertebesini ve derecesini bulunuz. Bağımlı ve bağımsız değişkenleri belirtiniz.

Cebirsel Fonksiyonlar

2 1 fonksiyonu veriliyor. olacak şekilde ortalama değer teoremini sağlayacak bir c sayısının var olup olmadığını araştırınız. Eğer var ise bulunuz.

Tek Değişkenli Optimizasyon OPTİMİZASYON. Gradient Tabanlı Yöntemler. Bisection (İkiye Bölme) Yöntemi

İleri Diferansiyel Denklemler

FEN FAKÜLTESİ MATEMATİK BÖLÜMÜ YAZ OKULU DERS İÇERİGİ. Bölümü Dersin Kodu ve Adı T P K AKTS

1. BÖLÜM Polinomlar BÖLÜM II. Dereceden Denklemler BÖLÜM II. Dereceden Eşitsizlikler BÖLÜM Parabol

ÖĞRENME ALANI TEMEL MATEMATİK BÖLÜM TÜREV. ALT ÖĞRENME ALANLARI 1) Türev 2) Türev Uygulamaları TÜREV

EŞİTLİK KISITLI TÜREVLİ YÖNTEMLER

ELASTİSİTE TEORİSİ I. Yrd. Doç Dr. Eray Arslan

BİLGİSAYAR DESTEKLİ TASARIM HAFTA 6 COSMOSWORKS İLE ANALİZ

Ayrık Fourier Dönüşümü

12.SINIF A VE B GRUBU MATEMATİK-GEOMETRİ DERSİ KURS KONULARI VE TESTLERİ

7.2 Fonksiyon ve Fonksiyon Tanımları (I) Fonksiyon ve Fonksiyon Tanımları (II)

Karabük Üniversitesi, Mühendislik Fakültesi... STATİK (4. Hafta)

BULANIK MANTIK VE SİSTEMLERİ BAHAR DÖNEMİ ÖDEV 1. Müslüm ÖZTÜRK Bilişim Teknolojileri Mühendisliği ABD Doktora Programı

Jeodezide Yaklaşım Yöntemleri: Enterpolasyon ve Kollokasyon

Prof. Dr. Mahmut Koçak.

ÖSYM. 1. Bu testte 40 soru vardır. 2. Cevaplarınızı, cevap kâğıdının Matematik Testi için ayrılan kısmına işaretleyiniz AYT/Matematik

Genel Olarak Bir Yüzeyin Diğer Bir Yüzeye Projeksiyonu

KUADRATİK FORM. Tanım: Kuadratik Form. Bir q(x 1,x 2,,x n ) fonksiyonu

1. GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G (e ye birim eleman denir) vardır.

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

İleri Diferansiyel Denklemler

Şimdi de [ ] vektörünün ile gösterilen boyu veya büyüklüğü Pisagor. teoreminini iki kere kullanarak

Elastisite Teorisi Hooke Yasası Normal Gerilme-Şekil değiştirme

İleri Diferansiyel Denklemler

MAT 103 ANALİTİK GEOMETRİ I FİNAL ÇALIŞMA SORULARI

GÜZ DÖNEMİ ARASINAV SORULARI. 1. Sayısal çözümleme ve fonksiyonu tanımlayarak kullanıldığı alanları kısaca açıklayınız?

EĞİTİM-ÖĞRETİM YILI 12. SINIF İLERİ DÜZEL MATEMATİK DERSİ DESTEKLEME VE YETİŞTİRME KURSU KAZANIMLARI VE TESTLERİ

İzostatik Sistemlerin Hareketli Yüklere Göre Hesabı


SAY 203 MİKRO İKTİSAT

KİRİŞLERDE PLASTİK MAFSALIN PLASTİKLEŞME BÖLGESİNİ VEREN BİLGİSAYAR YAZILIMI

MATEMATİK ÖĞRETMENLİK ALAN BİLGİSİ - DENEME SINAVI DENEME. Diğer sayfaya geçiniz.

Doç. Dr. Bilge DORAN

İleri Diferansiyel Denklemler

SONLU FARKLAR GENEL DENKLEMLER

Fonksiyon Optimizasyonunda Genetik Algoritmalar

MATRİSEL ÇÖZÜM TABLOLARIYLA DUYARLILIK ANALİZİ

MATEMATİK TESTİ LYS YE DOĞRU. 1. Bu testte Matematik ile ilgili 50 soru vardır.

BİLGİSAYAR DESTEKLİ TASARIM HAFTA 6 COSMOSWORKS İLE ANALİZ

Küre Küre Üzerinde Hesap. Ders Sorumlusu Prof. Dr. Mualla YALÇINKAYA 2018

Yapı Elemanlarının Davranışı

İleri Diferansiyel Denklemler


DENEY-6 THEVENİN TEOREMİNİN İNCELENMESİ MAKSİMUM GÜÇ TRANSFERİ

YÖNEYLEM ARAŞTIRMASI - III

1.58 arasındaki her bir değeri alabileceği için sürekli bir

İÇİNDEKİLER. Ön Söz...2. Noktanın Analitik İncelenmesi...3. Doğrunun Analitiği Analitik Düzlemde Simetri...25

Leyla Yıldırım Bölüm BÖLÜM 2

HATA VE HATA KAYNAKLARI...

DİŞLİ ÇARKLAR I: GİRİŞ


( ) ( ) ÖABT Analitik Geometri KONU TESTİ Noktanın Analitik İncelemesi. Cevap D. Cevap C. noktası y ekseni üzerinde ise, a + 4 = 0 A 0, 5 = 1+

Taylor Serisi. Şekil 16. HMS Leviathan. Şekil 17. Taylor serisi ana formu

Bölüm 2. Bir boyutta hareket

Türev Uygulamaları ÜNİTE. Amaçlar. İçindekiler. Yazar Prof.Dr. Vakıf CAFEROV

Bu kısımda işlem adı verilen özel bir fonksiyon çeşidini ve işlemlerin önemli özelliklerini inceleyeceğiz.

Bir özvektörün sıfırdan farklı herhangi bri sabitle çarpımı yine bir özvektördür.

2. HAFTA DERS NOTLARI İKTİSADİ MATEMATİK MİKRO EKONOMİK YAKLAŞIM. Yazan SAYIN SAN

EŞANJÖR (ISI DEĞİŞTİRİCİSİ) DENEYİ FÖYÜ

TEKNE FORMUNUN BELİRLENMESİ

25. KARARLILIK KAPALI ÇEVRİM SİSTEMLERİNİN KARARLILIK İNCELENMESİ

KOÜ. Mühendislik Fakültesi Makine Mühendisliği ( 1. ve 2. Öğretim ) Bölümü Dinamik Dersi (Türkçe Dilinde) 1. Çalişma Soruları / 24 Eylül 2017

KPSS MATEMATÝK. SOYUT CEBÝR ( Genel Tekrar Testi-1) N tam sayılar kümesinde i N için, A = 1 i,i 1

2. Klasik Kümeler-Bulanık Kümeler

SAYISAL ÇÖZÜMLEME Yrd. Doç. Dr. Adnan SONDAŞ Sayısal Çözümleme

Mukavemet-I. Yrd.Doç.Dr. Akın Ataş

İleri Diferansiyel Denklemler

14. SİNÜSOİDAL AKIMDA DİRENÇ, KAPASİTE, İNDÜKTANS VE ORTAK İNDÜKTANSIN ÖLÇÜLMESİ

Üç Boyutlu Uzayda Koordinat sistemi

7. HAFTA DERS NOTLARI İKTİSADİ MATEMATİK MİKRO EKONOMİK YAKLAŞIM. Yazan SAYIN SAN

DÜZLEMDE GERİLME DÖNÜŞÜMLERİ

Dr. Öğr. Üyesi Sercan SERİN

İnce Antenler. Hertz Dipolü

LYS YE DOĞRU MATEMATİK TESTİ

HOMOGEN OLMAYAN DENKLEMLER

TEMEL ELEKTROT SİSTEMLERİ Eş Merkezli Küresel Elektrot Sistemi

İleri Diferansiyel Denklemler

MATEMATÝK GEOMETRÝ DENEMELERÝ

Lys x 2 + y 2 = (6k) 2. (x 2k) 2 + y 2 = (2k 5) 2 olduğuna göre x 2 y 2 =? Cevap: 14k 2

Şekil 7.1 Bir tankta sıvı birikimi

Transkript:

5..4. B-Spline Eğrisi B-spline eğrilerinin teorisi ilk olarak Schoenberg (48) tarafından önerilmiş olmasına rağmen, Bilgisayar Destekli Geometrik Dizayn alanında ilk uygulamalar Gordon ve Riesenfeld (49) tarafından yapılmıştır. B-spline eğri ve yüzeyleri kontrol noktaları adı verilen köşe noktaları ile tanımlanırlar. Bu noktalar kullanılarak elde edilen eğri ve yüzeyler, kontrol noktalarından geçmemekle birlikte, eğri veya yüzeyin formu tamamen bu noktaların konumlarına göre şekillenmektedir. Bu kontrol noktalarının oluşturduğu poligona kontrol poligonu denilmektedir. Bu noktalar bir mıknatıs gibi davranarak eğrinin kontrol poligonunun şeklini takip etmesini sağlar ve sonuçta kontrol poligonunun sınırları içerisinde kalan karakteristik ve düzgün bir eğri elde edilir. Kontrol noktası Düğüm noktası Kontrol poligonu B-spline eğrisi 1. polinom segmenti. polinom segmenti Şekil 5.30. Bir B-spline eğrisi ve kontrol poligonu B-spline eğrilerinin genel olarak Bezier eğrilerinin geliştirilmesi sonucu ortaya çıkmış eğriler olduğunu söyleyebiliriz. Yalnız B-spline eğrileri genelde Bezier eğrisi gibi tek parça bir eğri değil en az bir ya da daha çok polinom segmentinin birleşmesinden oluşmaktadır. B-spline eğrisinin tek bir segmentten oluşması durumunda bu eğri aynı zamanda Bezier eğrisine eşdeğerdir. Bu durumun gerçekleşebilmesi için, eğrinin kontrol noktası sayısı ile mertebesinin (derecenin bir fazlası) birbirine eşit olması gerekmektedir. Şekil 5.31 de görülen eğri dört kontrol noktası kullanılarak oluşturulmuştur. Bu eğrinin mertebesi dört olarak seçildiği (3.derece bir eğri) için bu eğri, hem B-spline eğrisi hem de Bezier eğrisidir. Şekil 5.31. Bezier eğrisine eşdeğer bir B-spline eğrisi B-spline eğrisinin derecesi Bezier eğrilerinde olduğu gibi kontrol noktası sayısına bağlı değildir. Kontrol noktası sayısı eğrinin derecesinin üst sınırını oluşturmaktadır. B-spline eğrisinin mertebesi k, derecesi ise mertebesinin bir eksiğidir (k-1). B-spline eğrisinin mertebesi, polinom segmentlerini etkileyen kontrol noktası sayısını göstermektedir. Şekil 5.3 de, beş kontrol noktası ile çizilmiş 4. mertebeden (3. derece) bir B-spline eğrisi görülmektedir. Bu eğri iki segmentten oluşmakta ve segmentlerin birleştikleri noktalarda düğüm noktaları bulunmaktadır. Şekil 5.3.a. da B-spline eğrisinin 1. segmentini etkileyen 65

kontrol noktaları Şekil 5.3.b. de ise. segmenti etkileyen kontrol noktaları, çerçeve içerisine alınmıştır. Çizilen eğri 4. mertebeden bir eğri olduğundan, her polinom segmentini sadece dört kontrol noktası etkilemektedir. Yani, 1. segment üzerinde 5. kontrol noktasının hiç bir etkisi yoktur. 5. nokta konumu kasti olarak değiştirilip 5 konumuna getirilirse, bu değişimin 1. segment üzerinde herhangi bir etkisinin olmadığı Şekil 5.33 den görülebilmektedir. 4 1 3 5 1.segment Şekil 5.3.a. B-spline eğrisinin 1. segmentini etkileyen kontrol noktaları 4 1 3.segment 5 Şekil 5.3.b. B-spline eğrisinin. segmentini etkileyen kontrol noktaları 4 5 1 3 5 Şekil 5.33. B-spline eğrilerinde yerel kontrol özelliği Kontrol noktası sayısı ile eğrinin mertebesi arasındaki ilişki eğrinin kaç polinom segmentinden oluşacağını belirler. B-spline eğrisinin seçilen mertebe sayısından fazla kontrol noktası ile tanımlanması eğride segment sayısının artmasına yol açmaktadır. Her yeni kontrol noktası eğriye fazladan bir segment kazandıracaktır. B-spline eğrilerinin bu özelliği Şekil 5.34 den görülmektedir. 66

4 k = 4 (mertebe) n+1 = 4 (kontrol noktası) 1 polinom segmenti 1 3 4 k = 4 (mertebe) n+1 = 5 (kontrol noktası) polinom segmenti 1 1. polinom segmenti. polinom segmenti 3 5 3 6 1 1.polinom segmenti. polinom segmenti 3.polinom segmenti k = 4 (mertebe) n+1 = 6 (kontrol noktası) 3 polinom segmenti 4 5 Şekil 5.34. Eğrinin kontrol noktası sayısı ve mertebesinin, segment sayısına etkisi Konuya açıklık kazandırmak için yedi tane kontrol noktası ile tanımlanmış 3. mertebeden (. derece) bir B-spline eğrisini örnek alalım. Şekil 5.35 de her bir polinom segmentini etkileyen kontrol noktaları çerçeve içine alınmıştır. Eğrinin mertebesi 3 olduğundan üçüncü kontrol noktasından sonraki her kontrol noktası için eğriye yeni bir segment daha eklenecektir. Dolayısıyla bu örnekteki B-spline eğrisi beş polinom segmentinden oluşacaktır. 67

1 3 4 5 6 7 1 3 4 5 6 7 1 3 4 5 6 7 1 3 4 5 6 7 1 3 4 5 6 7 1. segment. segment 3. segment 4. segment 5. segment Şekil 5.35. B-spline eğrilerinde ayrık yapı özelliği B-spline eğrisinin formunu etkileyen önemli bir faktör de o eğriye ait olan düğüm vektörüdür. B-spline eğrisi boyunca parametre değişimini gösteren düğüm vektörü B-spline eğrisinin kaç polinom segmentinden oluşacağını belirler. Düğüm vektörünün elemanları olan parametre değerlerine düğüm noktaları denir. Düğüm noktaları polinom segmentlerinin uç kısımlarındaki parametre değerlerini gösterir. Düğüm vektörlerine ilerleyen bölümlerde ayrıntılı olarak değinilecektir. B-spline eğrilerinde her kontrol noktasında (Bi) bir temel fonksiyon (Ni,k) tanımlanmıştır. Böylece, herhangi bir kontrol noktası (Bi) eğriyi ancak temel fonksiyonunun sıfır olduğu yere kadar etkileyebilmektedir. B-spline eğrilerini yerel kontrol kabiliyeti bu özelliğinden ileri gelmektedir. B-spline eğrisinin denklemi bu temel fonksiyonlarının ve kontrol noktalarının lineer kombinasyonu ile elde edilmektedir: P (t) n 1 i1 5..4.1. B-Spline Temel Fonksiyonları (Ni,k ) BiNi,k (t) t min t t max, k n 1 B-spline temel fonksiyonlarının nümerik hesaplama açısından en uygun matematiksel ifadesini Cox (50) ve de Boor (51) vermiştir. Her kontrol noktası için tanımlanan k. mertebeden i. normalleştirilmiş B-spline temel fonksiyonunun ifadesi aşağıdaki gibi verilmiştir: N i,1 1 (t) 0 x i t x i1 aksi takdirde N i,k (t) (t x i ) x x ik1 i N i,k1 (x (t) x i ik k t) x i1 N i1,k1 (t) 1 i n 1 Nümerik hesaplama açısından, bu matematiksel ifade için 0/00 kabulü yapılmaktadır. Bu ifadede; Ni,k : mertebesi (k) olan (i). temel fonksiyonu, t : eğrinin parametresini, k : eğrinin mertebesini, xi : düğüm vektörünün elemanlarını, n+1 : kontrol noktası sayısını, göstermektedir. 68

Cox-de Boor formülasyonundan da görülebileceği gibi k. mertebeden bir temel fonksiyonun hesabı için 1. mertebe dahil olmak üzere k dan düşük mertebede tüm temel fonksiyonların hesaplanması gerekmektedir. B-spline temel fonksiyonlarının birbirleriyle olan ilişkisi Şekil 5.36 da görülmektedir: N i,k N i,k-1 N i+1,k-1 N i,k- N i+1,k- N i+,k- N i,1 N i+1,1 N i+,1 N i+3,1 N i+k-1,1 Şekil 5.36. Ni,k temel fonksiyonunun hesabı için kullanılacak temel fonksiyonlar Normalleştirilmiş B-spline temel fonksiyonlarının bazı özellikleri aşağıda verilmektedir: Ni,k(t) > 0 ; xi < t < xi+k (her parametre değeri için pozitif bir sayıdır) Ni,k(t) = 0 ; x1 < t < xi, xi+k < t < xn+k+1 n 1 N i0 (t) 1 (herhangi bir t parametresi için temel fonksiyonların toplamı birdir.) i,k Ni,k(t) düğüm noktalarında (k-). mertebeden sürekliliğe sahiptir (C k- ) 5..4.. B-Spline Düğüm Vektörünün Tanımı [X] Her B-spline eğrisi için bir düğüm vektörü tanımlanmıştır [X]. Bu vektör, B-spline eğrisinin parametre aralığını göstermektedir B-spline temel fonksiyonlarının denkleminin ifadesinde görülen xi değerleri, eğri boyunca değişen t parametresini gösteren düğüm vektörünün [X] elemanlarıdır. Monoton olarak artan reel sayılardan (xi xi+1) oluşan düğüm vektörünün B- spline fonksiyonlarının şekillenmesinde büyük önemi vardır. B-spline eğrisi bu düğüm vektörünün elemanlarının belirlediği sayıda ve şekilde parçalara ayrılır. Yani bir B-spline eğrisinin kaç polinom segmentinden oluşacağı düğüm vektörü tarafından belirlenir. Düğüm vektörünün elemanları, tmin den tmax a doğru monoton olarak artan t parametre değerleridir. [X] = [ (tmin= t1) (t) (tn+k) (tmax= tn+1+k) ] B-spline eğrisinin üniform, non-üniform veya açık, kapalı bir eğri olup olmadığı düğüm vektörü ile belirlenir. Bir başka deyişle B-spline eğrileri kullanılan düğüm vektörünün tipine göre sınıflandırılır. 69

B-spline Eğrileri Açık Üniform B-spline Eğrileri Açık Non-Üniform B-spline Eğrileri Açık / Kapalı Periyodik B-spline Eğrileri Şekil 5.37. B-spline eğrilerinin sınıflandırılması a) Bir B-spline eğrisinin üniform veya non-üniform bir eğri olup olmadığı düğüm vektörünü oluşturan parametre değerlerinin eşit aralıklı olup olmamasına bağlıdır. b) Periyodik düğüm vektörleri kullanılarak, kapalı B-spline eğrileri oluşturulabilir. Üniform bir düğüm vektörü eşit aralıkla artan parametre değerlerine sahiptir. Bu vektörün elemanları sıfırdan başlayıp maksimum parametre değerine kadar eşit aralıklı olarak artmaktadır. Eğer, normalleştirilmiş parametre aralığı söz konusu ise parametre değerleri 0 ve 1 arasında değişecektir. Bu tip düğüm vektörlerinin kullanılmasıyla genellikle açık üniform B-spline eğrileri oluşturulmaktadır. Açık üniform düğüm vektörlerinin başında ve sonundaki parametre değerleri eğrinin mertebesi (k) kadar tekrar edilmesi gerekmektedir. Bu oluşturulacak eğrinin ilk son kontrol noktalarından geçmesini sağlayacaktır. Örneğin, k = 3 için eğrinin açık üniform düğüm vektörü X = [0 0 0 1 3 3 3] olacaktır. Açık üniform düğüm vektörleri aşağıdaki denklem takımı kullanılarak elde edilmektedir: x x x i i i 0 i k n k 1 i k k 1 i n 1 n i n k 1 Şekil 5.38 de dört kontrol noktası (n+1=4) ile tanımlanmış 3. mertebeden (k=3) bir B-spline eğrisine ait temel fonksiyonlar görülmektedir. Eğriye ait açık üniform düğüm vektörü yukarda verilen denklem takımı kullanılarak aşağıdaki gibi elde edilmiştir: 1 X = [0 0 0 1 ] N1,3 N,3 N3,3 N4,3 t 0 1 Şekil 5.38. Açık üniform B-spline eğrisine ait temel fonksiyonlar, (k = 3, n + 1 = 4) 70

Eğer kontrol poligonuna ait nokta sayısı (n+1) ve eğrinin mertebesi (k) eşitse, açık üniform B- spline temel fonksiyonları Bernstein temel fonksiyonlarına dönüşür. (Bezier eğrileri) Örneğin, dört poligon noktası ile dördüncü mertebeden (k=4) bir eğrinin çizilmek istenirse bir kübik Bezier/B-spline eğrisi oluşturulmuş olacaktır. Bu eğriye ait düğüm vektörü; olacaktır. X = [0 0 0 0 1 1 1 1] Diğer bir düğüm vektörü tipi de non-üniform düğüm vektörüdür. Bu vektör eşit aralıklı olarak artmayan ve tekrar edilebilen parametre değerlerine sahiptir. Örneğin, X = [0 0 0 1 1 ] Şekil 5.39 da non-üniform B-spline temel fonksiyonlarına ait bir örnek görülmektedir. Eğri beş poligon noktası (n+1=5) ile tanımlanmış üçüncü mertebeden (k=3) bir eğridir. Bu düğüm vektöründe t=1 parametre değeri iki kez tekrarlanmaktadır. X = [0 0 0 1 1 3 3 3] 1 N1,3 N3,3 N5,3 N,3 N4,3 0 t 0 1 3 Şekil 5.39. Açık non-üniform B-spline eğrisine ait temel fonksiyonlar, (k = 3, n + 1 = 5) Açık non-üniform düğüm vektörünün elemanları, poligon noktaları arasındaki yay uzunluğu ile orantılı olacak şekilde aşağıdaki denklem takımı kullanılarak hesaplanabilir: x x x i i 0 i k i c (n k ) n c n k i1 i i1 i j1 c j (n k ) 1 i k 1 i n k 1 n i n k 1 Bu denklemde c i B B dir. Eşit aralıklı olarak verilmiş kontrol poligonu noktaları için i 1 i non-üniform düğüm vektörü, üniform düğüm vektörüne dönüşmektedir. Periyodik düğüm vektörlerinin elemanları, 0 ile maksimum parametre değeri olan tmax = n+k arasında değişecektir ve eleman sayısı da n+k+1 olacaktır. Örneğin, ikinci derece (k = 3) ve dört poligon noktası (n+1 = 4) ile tanımlanan bir eğri için, periyodik üniform düğüm vektörü; X = [0 1 3 4 5 6] 71

olacaktır. Eğrinin mertebesi (k) ne olursa olsun, periyodik üniform düğüm vektörleri kullanılarak oluşturulan eğrinin temel fonksiyonları aşağıdaki koşulu her zaman sağlar: N i,k (t) N i 1,k (t 1) N i1, k (t 1) Periyodik temel fonksiyonların bu özelliği Şekil 5.40 da görülmektedir. 1 N1,3 N,3 N3,3 N4,3 0 0 1 3 4 5 6 t Şekil 5.40. Periyodik üniform B-spline eğrisinin temel fonksiyonları, (k = 3, n +1 = 4) Periyodik düğüm vektörleri kapalı eğriler oluşturmak için de kullanılabilir. Şekil 5.41 de kapalı periyodik B-spline eğrilerine ait bir örnek görülmektedir: t=1.0 t=0 t=0.5 t=0.75 t=0.50 Şekil 5.41. Periyodik (kapalı) bir B-spline eğrisi ve parametre değişimi Örnek 5.11 : Üç kontrol noktası ile tanımlanmış (n+1=3), kuadratik bir B-spline eğrisinin (k=3) periyodik temel fonksiyonlarını Ni,3(t), i=1,, 3 hesaplayıp, çizelim. Çözüm : Bu eğrinin parametre aralığı düğüm vektörü ile belirlenir. [X] Düğüm vektörünün eleman sayısı : n+k+1 = 6 Periyodik eğriler için max. parametre değeri (tmax) : n+k=5 Düğüm vektörü : [X] = [ x1 x x3 x4 x5 x6 ] = [ 0 1 3 4 5 ] Bu eğrinin parametre aralığı 0 t < 5 arasında değişmektedir. 3. mertebeden bir temel fonksiyonun hesabı için tüm 1 ve. mertebeden temel fonksiyonların hesabı gereklidir. Son parametre aralığı x5 ve x6 arasında değiştiği için en fazla N5,1 in hesabı mümkündür. N1,1 N,1 N3,1 N4,1 N5,1 N1, N, N3, N4, N1,3 N,3 N3,3 7

Dolayısıyla N1,3, N,3, N3,3 ün hesabı için gerekli temel fonksiyonlar yukardaki şemadan görülmektedir. B-spline temel fonksiyonları her parametre aralığında hesaplanırsa; x1 t < x ; 0 t <1 1.mertebe fonksiyonlar: N1,1(t) = 1 ; Ni,1=0, i1.mertebe fonksiyonlar: (t 0) ( t) N1,(t) = N1,1 N,1 t 0 t (1 0) ( 1) ; Ni,=0, i1 3.mertebe fonksiyonlar: (t 0) (3 t) t t N1,3(t) = N1, N, t 0 ( 0) (3 1) ; Ni,3=0, i1 x t < x3 ; 1 t < 1.mertebe fonksiyonlar: N,1(t) = 1 ; Ni,1=0, i.mertebe fonksiyonlar: (t 0) ( t) N1,(t) = N1,1 N,1 0 ( t) ( - t) (1 0) ( 1) (t 1) (3 t) N,(t) = N,1 N3,1 (t -1) 0 (t -1) ( -1) (3 ) ; Ni,=0, i1, 3.mertebe fonksiyonlar: (t 0) (3 t) t (3 t) N1,3(t) = N1, N, ( - t) (t -1) ( 0) (3 1) (t 1) (4 t) (t -1) N,3(t) = N, N3, (t -1) 0 (3 1) (4 ) (t -1) x3 t < x4 ; t < 3 1.mertebe fonksiyonlar: N3,1(t) = 1 ; Ni,1=0, i3.mertebe fonksiyonlar: N,(t) =(3-t) N3,(t) =(t-) ; Ni,=0, i,3 3.mertebe fonksiyonlar: (3 t) N1,3(t) = (3 t) (t 1) (4 t) N,3(t) = (3 t) (t ) (t ) N3,3(t) = (t ) ; Ni,3=0, i1,,3 x4 t < x5 ; 3 t < 4 1.mertebe fonksiyonlar: N4,1(t) = 1 ; Ni,1=0, i4.mertebe fonksiyonlar: N3,(t) =(4-t) N4,(t) =(t-3) ; Ni,=0, i3,4 3.mertebe fonksiyonlar: ; Ni,3=0, i1, 73

(4 t) N,3(t) = (t ) (5 t) N3,3(t) = (4 t) (t 3) ; Ni,3=0, i,3 x5 t < x6 ; 4 t < 5 1.mertebe fonksiyonlar: N5,1(t) = 1 ; Ni,1=0, i5.mertebe fonksiyonlar: N4,(t) =(5-t) ; Ni,=0, i4 3.mertebe fonksiyonlar: (5 t) N3,3(t) = ; Ni,3=0, i3 Kuadratik N1,3, N,3, N3,3 temel fonksiyonları Şekil 5.4 de görülmektedir. 1 N 1,3 N,3 N 3,3 0 1 3 4 5 Şekil 5.4. Kuadratik B-spline temel fonksiyonları t Örnek 5.1 : Üç kontrol noktası ile tanımlanmış (n+1=3), kuadratik bir B-spline eğrisinin (k=3) açık üniform temel fonksiyonlarını Ni,3(t), i=1,, 3 hesaplayıp, çizelim. Çözüm : Açık üniform düğüm vektörlerinin denkleminden: [X] = [ x1 x x3 x4 x5 x6 ] = [ 0 0 0 1 1 1 ] Düğüm vektörünün eleman sayısı : n+k+1 = 6 Açık üniform eğriler için max. parametre değeri (tmax) : n-k+ = 1 Bu eğrinin parametre aralığı 0 t < 1 arasında değişmektedir. Açık üniform düğüm vektörlerinin özelliği, uç parametre değerlerinin (k) kere yinelenmesidir. Bu değerlerin tekrarlanmasının amacı B-spline eğrisinin kontrol poligonunun uç noktalarından geçmesini sağlamaktır. 0 t < 1 aralığı x3 t < x4 aralığına denk geldiğinden, sadece aşağıdaki şemada üçgen alan içinde kalan temel fonksiyonlar hesaplanacaktır. 74

N1,1 N,1 N3,1 N4,1 N5,1 N1, N, N3, N4, N1,3 N,3 N3,3 x3 t < x4 ; 0 t < 1 1.mertebe fonksiyonlar: N3,1(t) = 1 ; Ni,1=0, i3.mertebe fonksiyonlar: (t 0) (1 t) N,(t) = N,1 N3,1 0 (1 t) (1 t) (0-0) (1 0) (t 0) (1 t) N3,(t) = N3,1 N 4,1 t 0 t (1-0) (11) ; Ni,=0, i,3 3.mertebe fonksiyonlar: (t 0) (1 t) N1,3(t) = N1, N, 0 (1 t)(1- t) (1 t) (0-0) (1 0) (t 0) (1 t) N,3(t) = N, N3, t(1 t) (1- t)t t(1 t) (1-0) (1 0) (t 0) (1 t) N3,3(t) = N3, N 4, t 0 t (1-0) (11) ; Ni,3=0, i1,,3 Kuadratik N1,3, N,3, N3,3 temel fonksiyonları Şekil 5.43 de görülmektedir. Nokta sayısı (n+1=3) ve mertebe sayısı (k=3) eşit olduğundan, elde edilen B-spline temel fonksiyonları aynı zamanda Bezier eğrilerinin temel fonksiyonu olan Bernstein fonksiyonlarıdır. Bu temel fonksiyonlar kullanılarak elde edilen eğri hem B-spline hem Bezier eğrisidir. Aynı örnek için farklı düğüm vektörleri kullanılmasıyla çok farklı sonuçlar elde edildiği görülmektedir. Periyodik üniform vektörleri için parametre aralığı 0 t 5 arasında değişirken, açık üniform vektörler için 0 t 1 arasında değişmektedir. Açık üniform düğüm vektörlerinin kullanılması parametre aralığını oldukça azaltmaktadır. 1 N 1,3 N 3,3 N,3 t 0 1 Şekil 5.43. Kuadratik B-spline temel fonksiyonları 75

Örnek 5.13 : Beş kontrol noktası ile tanımlanmış (n+1=5), kuadratik bir B-spline eğrisinin (k=3) açık non-üniform temel fonksiyonlarını Ni,3(t), i =1,, 3, 4, 5 hesaplayıp, çizelim. Eğrinin non-üniform düğüm vektörü [X] = [ 0 0 0 1 1 ] olarak verilmiş olsun. (Düğüm vektörünün t =1 değeri iki kere tekrar edilmektedir, dolayısıyla bu vektör nonüniform bir vektördür.) [X] = [ x1 x x3 x4 x5 x6 x7 x8] = [ 0 0 0 1 1 ] Düğüm vektörünün eleman sayısı : n+k+1 = 8 Bu eğrinin parametre aralığı 0 t < arasında değişmektedir. Bu düğüm vektörüne göre B-spline eğrisi iki parametre aralığında (0 t < 1 ve 1 t < ) hesaplanacaktır. Aşağıdaki şemada her paramatre aralığı için hesaplanacak temel fonksiyonlar üçgen alanlar içinde görülmektedir: N1,1 N,1 N3,1 N4,1 N5,1 N6,1 N7,1 N1, N, N3, N4, N5, N6, N1,3 N,3 N3,3 N4,3 N5,3 x3 t < x4 x5 t < x6 x3 t < x4; 0 t < 1 1.mertebe fonksiyonlar: N3,1(t) = 1 ; Ni,1=0, i3.mertebe fonksiyonlar: N,(t) = 1-t N3,(t) = t ; Ni,=0, i,3 3.mertebe fonksiyonlar: N1,3(t) = (1-t) N,3(t) = t(1-t)+(1-t)t = t(1-t) N3,3(t) = t ; Ni,3=0, i1,,3 x5 t < x6; 1 t < 1.mertebe fonksiyonlar: N5,1(t) = 1 ; Ni,1=0, i5.mertebe fonksiyonlar: N4,(t) = -t N5,(t) = t-1 ; Ni,=0, i4,5 3.mertebe fonksiyonlar: N3,3(t) = (-t) N4,3(t) = (t-1)(-t)+(-t)(t-1) = (t-1)(-t) N5,3(t) = (t-1) ; Ni,3=0, i3,4,5 Kuadratik N1,3, N,3, N3,3, N4,3, N5,3 temel fonksiyonları Şekil 5.44 de görülmektedir. t = 1 noktası düğüm vektörü içinde iki kere tekrar edildiği için o noktada bir köşe noktası oluşmaktadır. (Non-üniform düğüm vektörlerinin bir özelliği) 76

1 N 1,3 N 3,3 N 5,3 N,3 N 4,3 Örnek 5.14 : Dört kontrol noktası ile tanımlanmış (n+1= 4), açık üniform kuadratik B-spline eğrisinin (k=3) denklemini bulunuz. B1[1,1], B[3,], B3[5,1], B4[7,] Çözüm : t 0 1 Şekil 5.44. Kuadratik B-spline temel fonksiyonları Bu problemde açık üniform düğüm vektörünün eleman sayısı : n+1+k = 7 Düğüm vektörü : [X] = [ x1 x x3 x4 x5 x6 x7 ] = [ 0 0 0 1 ] Bu eğrinin parametre aralığı 0 t < arasında değişmektedir. Bu düğüm vektörüne göre B-spline eğrisi iki parametre aralığında (0 t < 1 ve 1 t < ) tanımlıdır. N1,1 N,1 N3,1 N4,1 N5,1 N6,1 N1, N, N3, N4, N5, N1,3 N,3 N3,3 N4,3 0 t < 1 ( x3 t < x4) aralığında tanımlı temel fonksiyonlar düz çizgili üçgen alan içinde, 1 t < ( x4 t < x5) aralığında tanımlı temel fonksiyonlar ise kesikli alan içinde görülmektedir. Öncelikle her parametre aralığında temel fonksiyonlar hesaplanırsa; x3 t < x4; 0 t < 1 1.mertebe fonksiyonlar: N3,1(t) = 1 ; Ni,1=0, i3.mertebe fonksiyonlar: N,(t) = 1-t N3,(t) = t ; Ni,=0, i,3 3.mertebe fonksiyonlar: N1,3(t) = (1-t) t 4t N,3(t) = t (1-t) + t = 3t t N3,3(t) = ; Ni,3=0, i1,,3 77

x4 t < x5; 1 t < 1.mertebe fonksiyonlar: N4,1(t) = 1 ; Ni,1=0, i4.mertebe fonksiyonlar: N3,(t) = -t N4,(t) = t-1 ; Ni,=0, i3,4 3.mertebe fonksiyonlar: ( t) N,3(t) = t ( t)(3t ) N3,3(t) = ( t) ( t)(t 1) N4,3(t) = (t-1) ; Ni,3=0, i,3,4 B-spline eğrisinin denklemini açık olarak yazarsak; P(t) = B1N1,3(t) + BN,3(t) + B3N3,3(t) + B4N4,3(t) Bu B-spline eğrisi iki polinom segmentinin birleşmesinden oluşmaktadır. 1. polinom segmentinin denklemi 0 t < 1 aralığında; P(t) = B1N1,3(t) + BN,3(t) + B3N3,3(t) = B1(1-t) + B. polinom segmentinin denklemi 1 t < aralığında; ( t) P(t) = BN,3(t) + B3N3,3(t) + B4N4,3(t) = B + B3 4t 3t t + B3 ( t)(3t ) t = 0 parametre değeri için 1. polinom denkleminden; P(0) = B1 olduğu, t = için. polinom denkleminden; P() = B4 olduğu, yani B-spline eğrisinin kontrol poligonun uç noktalarından geçtiği görülmektedir. t=1 değeri için ise her iki polinom denkleminin vereceği değer aynıdır; P(1)=B 1 + B3 1 + B4 (t -1) Şekil 5.45 de bu örnekte denklemi çıkarılan B-spline eğrisi görülmektedir. B B4 t = t =1 t = 0 B1 B3 Şekil 5.45. Örnek B-spline eğrisi 78

Şekil 5.46 da açık üniform ve non-üniform B-spline eğrileri karşılaştırılmaktadır. Kontrol noktaları arasında mesafe olarak radikal farklar yoksa, elde edilen üniform ve non-üniform B- spline eğrileri birbirlerine yakın eğriler olacaktır. B B4 B5 üniform (k=3) non-üniform (k=3) B3 B1 Şekil 5.46. Kuadratik açık üniform ve non-üniform B-spline eğrilerinin karşılaştırılması B-spline eğrilerinde mertebe değişiminin etkileri Şekil 5.47 de görülmektedir. Temelde, eğrinin mertebesi, eğrinin kontrol poligonunu ne kadar yakından takip edeceğini belirler. Eğrinin mertebesi düştükçe, oluşturulan eğri kontrol poligonuna daha yakın geçmekte, arttığı durumda ise giderek uzaklaşmaktadır. İkinci metrebeden bir eğri (k=), kontrol poligonuna eşdeğer birinci dereceden bir eğridir. Eğrinin alacağı mertebe değeri minimum (k=), maksimum ise kontrol noktası sayısı (k=n+1) kadar olabilmektedir. B5 k = B3 B k = 3 k = 4 k = 5 k = 6 B6 B4 B1 Şekil 5.47. B-spline eğrisinin formunun mertebe ile değişimi 79

Şekil 5.48 de kontrol noktalarının tekrarlanması sonucu, eğrinin istenilen kontrol noktasına yaklaştırılabileceği hatta noktadan geçirilebileceği görülmektedir. Bu B-spline eğrilerinin en önemli özelliklerinden biridir. Bir poligon noktasının (k-1) kere tekrar edilmesi B-spline eğrisinin o poligon noktasından geçmesini sağlayacaktır. Şekil 5.48 de B4 kontrol noktasının çeşitli kereler tekrar edilmesiyle oluşan eğriler çizilmiştir. Bu noktanın iki kere tekrar edilmesiyle eğri B4 noktasına yaklaşmakta, üç kere tekrar edilmesiyle ise B4 noktasından geçmektedir. B5 B3 B B 4 noktası tekrar edilmiyor B6 B 4 noktası iki kere tekrar ediliyor B4 B 4 noktası üç kere tekrar ediliyor (eğri B 4 noktasından geçiyor) B1 Şekil 5.48. B4 kontrol noktasının tekrar edilmesinin kübik B-spline eğrisine etkisi, (k=4) Örnek 5.15: Beş kontrol noktası ile tanımlanmış (n+1=5), kuadratik bir açık non-üniform B- spline eğrisinin (k=3) denklemini çıkarınız ve t=0.5 için değerini bulunuz. B1(0,0), B(,6), B3(4,3), B4(6,6), B5(8,6) Not: (Non-üniform düğüm vektörünün denklemi kullanılarak hesaplanacaktır.) Çözüm : Bu problemin açık non-üniform düğüm vektörünün eleman sayısı : n+1+k = 8 Düğüm vektörünün hesabı için öncelikle kontrol noktaları arasındaki yay uzunluklarının hesaplanması gerekir: c1= ( 0) (6 0) 40 6. 33 c= (4 ) (3 6) 13 3. 61 c3= (6 4) (6 3) 13 3. 61 c4= (8 6) (6 6) 4 Toplam yay uzunluğu : c i 15.54 4 i1 Böylece düğüm vektörünün elemanları: c 3 c1 c3 3 c1 c x1=0, x=0, x3=0, x4= 3 1.45, x5= 3.38, x6=3, x7=3, x8=3 15.54 15.54 olarak bulunur. 80

[X] = [ 0 0 0 1.45.38 3 3 3 ] Bu eğrinin parametre aralığı 0 t < 3 arasında değişmektedir. Bu düğüm vektörüne göre B-spline eğrisi üç polinom segmentinin birleşmesinden oluşmuştur ve parametre aralıkları 0 t<1.45, 1.45 t <.38,.38 t <3 şeklindedir. N1,1 N,1 N3,1 N4,1 N5,1 N6,1 N7,1 N1, N, N3, N4, N5, N6, N1,3 N,3 N3,3 N4,3 N5,3 x3 t < x4; 0 t < 1.45 1.mertebe fonksiyonlar: N3,1(t) = 1 ; Ni,1=0, i3.mertebe fonksiyonlar: 1.45 t t N,(t) =, N3,(t) = t 1.45 1.45 ; Ni,=0, i,3 3.mertebe fonksiyonlar: (1.45 t) t(1.45- t) (.38 t)t t N1,3(t) =, N,3(t) =, N3,3(t) = 1.45 1.45.38(1.45) (.38)1.45 x4 t < x5; 1.45 t <.38 1.mertebe fonksiyonlar: N4,1(t) = 1 ; Ni,1=0, i4.mertebe fonksiyonlar:.38 t t -1.45 N3,(t) =, N4,(t) = (.38 1.45) (.38)1.45 ; Ni,=0, i3,4 3.mertebe fonksiyonlar: (.38 t) N,3(t) =.38(.38-1.45) t (.38 t)(3t ) (3 t) (t 1.45) N3,3(t) =.38 (.38 1.45) (3 1.45) (.38 1.45) N4,3(t) = (t -1.45) (3-1.45)(.38-1.45) ; Ni,3=0, i,3,4 Ni,3=0, i1,,3 x5 t < x6;.38 t < 3 1.mertebe fonksiyonlar: N5,1(t) = 1 ; Ni,1=0, i4.mertebe fonksiyonlar: 3 t t -.38 N4,(t) =, N5,(t) = (3 -.38) (3 -.38) ; Ni,=0, i4,5 3.mertebe fonksiyonlar: (3 t) N3,3(t) = (3-1.45)(3-.38) 81

(t -1.45) (3 t) (3 t)(t -.38) N4,3(t) = (3-1.45) (3 -.38) (3.38) (t -.38) N5,3(t) = (3 -.38) ; Ni,3=0, i3,4,5 B-spline eğrisinin denklemini açık olarak yazarsak; P(t) = B1N1,3(t) + BN,3(t) + B3N3,3(t) + B4N4,3(t) + B5N5,3(t) t=0.5 değeri 0 t < 1.45 aralığındaki 1. polinom segmentinin denkleminden bulunur: P(0.5) = 0.43B1 + 0.5B + 0.07B3 + (0)B4 + (0)B5 = (1.8, 3.0) Bu örnekte hesaplanan non-üniform B-spline eğrisi Şekil 5.46 da görülmektedir. 5..4.3. B-spline Eğrilerinin Başlıca Özellikleri B-spline eğrilerinin en temel özellikleri aşağıda verilmektedir: Her kontrol noktası için farklı bir temel fonksiyon tanımlandığından, eğride yapılması istenen değişiklikler eğriyi lokal olarak etkilemektedir. Eğrinin polinom segmentleri, mertebe sayısı kadar ardışık kontrol noktasından etkilenmektedir ve o segment üzerinde diğer kontrol noktalarının hiç bir etkisi bulunmamaktadır. B-spline eğrilerinin bu lokal kontrol özelliği Şekil 5.49 deki kübik B-spline eğrisi (k=4) üzerinde görülmektedir. Beşinci kontrol poligonu noktası B5 in sırayla B5 ve B5 konumlarına getirilmesinin eğrinin formunu sadece lokal olarak etkilediği görülmektedir. B-spline eğrisi P(t) herbir xi t <xi+1 aralığında (k-1). dereceden sürekli bir eğridir ve 1,,, (k-). türevleri de eğri boyunca süreklidir. (C k- ) B-spline eğrilerinde eğrinin mertebesi, kontrol noktası sayısından bağımsızdır. Fakat, eğrinin maksimum alabileceği mertebe değeri ile ilgili bir sınırlama vardır, o da kontrol noktası sayısı kadardır. B B 5 B3 B7 B8 B5 B1 B4 B6 Şekil 5.49. Bir köşe noktasının konumunun değiştirilmesinin B-spline eğrisine etkisi B5 8

B-spline eğrisinin düğüm vektörü, o eğrinin parametre aralığını ve polinom segmentlerinin sürekliliğini göstermektedir. Eğride bulunabilecek köşe ve dönüm noktalarının temsil edilebilmesi için düğüm vektörü elemanlarının tekrar edilmesi gerekmektedir. (ör., tekrar sayısı (r) ise, xi = xi+1 = = xi+r-1, r k-1) Bu durumda temel fonksiyonunun sürekliliği o parametre değerinde azalacaktır (C k-r-1 ). B-spline eğrilerinin bu özelliği, kontrol poligonunun uç noktalarının interpolasyonu için kullanılmaktadır. Düğüm vektörünün ilk ve son elemanları eğrinin mertebesi (k) kadar tekrar edilmesiyle B- spline eğrisinin kontrol poligonunun ilk ve son noktalarından geçmesi sağlanır. (ör. X = [0 0 0 1 1 ], k=3) (k-1). dereceden bir B-spline eğrisi üzerindeki herhangi bir nokta, birbirine komşu k sayıda kontrol noktasının oluşturduğu konveks alanın içerisinde kalacaktır. Bir başka deyişle, her B-spline segmenti ardışık k kontrol noktasının oluşturduğu konveks alan içerisinde yer alacaktır. B-spline eğrisi de tüm bu segmentlerin birleşmesiyle oluşan bir eğri olduğu için, bu konveks alanların içinde kalacaktır. Şekil 5.50 de kontrol poligonu verilmiş ve farklı mertebeden eğriler için konveks alanlar çizilmiştir. k = k = 3 k = 4 k = 5 Şekil 5.50. Farklı mertebeden B-spline segmentleri için çizilen konveks alanlar Kontrol poligonu kullanılarak elde edilen B-spline eğrisi, esas olarak poligonun şeklini andırmasına rağmen, poligonun tüm keskin hatlarından arındırılmış, düzgün bir eğri olacaktır. B-spline eğrilerinin tüm diğer yöntemlere göre üstünlüğü, bir eğrinin alabileceği olası tüm şekiller tek bir matematiksel ifade ile temsil edebilmesidir. Örneğin, eğride süreksizliğe sahip kısımlar (düz kısımlar veya dönüm noktaları) bulunabilir. Şekil 5.51 de bir bölümü doğru parçasına şeklinde olan bir B-spline eğrisi görülmektedir. Şekil 5.5 de ise balblı bir tekne form kesidine uygulanan kübik B-spline eğrisi görülmektedir. Köşe noktası (k-1) kere tekrar edilerek eğrinin köşe noktasından geçmesi sağlanmaktadır. B-spline eğrisinin bu özelliği Şekil 5.5 de daire içine alınıp büyütülmüş kısımdan daha rahat görülmektedir. 83

Kolineer poligon noktaları k = 4 Kolineer eğri segmenti Şekil 5.51. B-spline eğrisi ile doğru parçasının temsili BALBLI KESIT OFSETLER B-SPLINE EGRISI Şekil 5.5. Bir balblı kesidin B-spline eğrisi ile temsili 84

B-spline eğrisinin esnekliği ve düzgünlüğü B-spline temel fonksiyonlarının mertebesi arttıkça doğru orantılı olarak artmaktadır. Fakat verilen ofset noktalarına yüksek dereceden B-spline eğrisi uydurulması eğrinin kontrol poligonundan giderek uzaklaşmasına yol açar. Şekil 5.53 de tipik bir su hattı formuna. dereceden 6. dereceye kadar B-spline eğrileri uygulanmıştır. B-spline eğrilerine ait birinci ve ikinci türev eğrileri, eğrilerin düzgünlüğü hakkında bir fikir vermesi açısından yanlarına çizilmiştir. Genelde ayrık noktalarla tanımlanan eğriler için ikinci türev eğrisi, eğrilik eğrisi (curvature) olarak kabul edilmektedir. Eğrilik eğrisinin düzgün ve monoton bir eğri olması istenir. Şekil 5.53 den B-spline eğrisinin derecesinin artmasıyla. türev eğrisinin daha düzgün bir form aldığı fakat orijinal noktalardan giderek uzaklaştığı görülmektedir. DERECE SU HATTI NO.11 1. TÜREV.TÜREV 3 4 5 6 SU HATTI OFSETLERI B-SPLINE EGRISI Şekil 5.53. Bir su hattı eğrisinin çeşitli derecelerden B-spline eğrileri ile temsili B-spline eğrileri bu özellikleri ile son yıllarda tekne form dizaynı alanında kullanılmaya en uygun eğri tipi olarak karşımıza çıkmaktadır. Tekne form eğrilerinde rastlanabilecek her türlü form (çeneli, balblı kesitler) B-spline eğrileri kullanılarak temsil edilebilmektedir. Genellikle eğrinin mertebesi (4 k 6) aralığında seçilir. Şekil 5.54 de, tipik en kesitlerine uygulanmış kübik üniform B-spline eğrileri görülmektedir. Bu uygulamalar da B-spline eğrilerinin olası tüm eğri formları için kullanılabileceğini göstermektedir. 85

TANKER-KESIT NO.13 1. TÜREV. TÜREV LPD 17-KESIT NO.7 1. TÜREV. TÜREV OFSET NOKTALARI KÜBIK B-SPLINE EGRISI LPD 17-KESIT NO.38 1. TÜREV. TÜREV LPD 17-KESIT NO.44 1. TÜREV. TÜREV Şekil 5.54. Kübik B-spline eğrisinin tipik tekne en kesit formlarına uygulanması 86

5..4.4. Rasyonel B-Spline Eğrileri Matematiksel temsil kabiliyeti açısından en başarılı yöntemlerden biri olan B-spline eğrilerinin tek dezavantajı daire, elips gibi konik şekilleri temsil etmedeki yetersizlikleridir. Versprille (5) B-spline eğrilerinin bu dezavantajını gidermek üzere üniform olmayan rasyonel B-spline eğrilerini (NURBS) önermiş ve Bilgisayar Destekli Geometrik Dizayn alanındaki ilk uygulamaları gerçekleştirmiştir. NURBS eğrilerinin rasyonel olmayan B-spline eğrilerine göre en büyük avantajı, bilgisayar destekli dizayn ortamında karşılaşılabilecek tüm analitik şekilleri (çember, elips, yay) temsil edebilme kabiliyetidir. Rasyonel B-spline eğrileri bu özellikleriyle tekne form dizaynında en çok tercih edilen ve en fazla uygulama alanı bulan matematiksel eğriler olarak karşımıza çıkmaktadır. Rasyonel B-spline eğrilerinin teorisi, B-spline eğrilerine çok benzerdir. Farklı olarak her kontrol noktasında bir ağırlık fonksiyonu tanımlanmıştır. Sıfırdan sonsuza kadar değişen nümerik değerler alan bu ağırlık fonksiyonu eğrinin formunu etkileyen yeni bir faktör olarak karşımıza çıkmaktadır. Ağırlık fonksiyonu ait olduğu kontrol noktasının B-spline eğrisini ne kadar etkileyeceğini belirlemektedir. Ağırlık faktörünü arttırarak B-spline eğrisini ait olduğu kontrol noktasına doğru yaklaştırabilir veya tersine uzaklaştırabiliriz. Rasyonel B-spline eğrileri, B-spline eğrilerinin genelleştirilmiş halidir ve ifadesi aşağıdaki gibidir: P (t) N n1 n1 i i,k BiR i,k (t) Bi n1 i1 i1 h ini,k i1 Bu ifadede, hi her kontrol noktası için tanımlanmış ağırlık fonksiyonunu, Ri,k(t) rasyonel temel fonksiyonu göstermektedir. Eğer tüm ağırlık fonksiyonlarının bire eşit olduğu kabul edilirse, rasyonel B-spline eğrileri standart B-spline eğrilerine dönüşecektir. hi = 1 Ri,k(t) = Ni,k(t) Şekil 5.55 de altı adet kontrol noktası kullanılarak çizilmiş bir rasyonel B-spline eğrisi görülmektedir. Eğrinin mertebesi (k=3), düğüm vektörü açık üniform olarak şeçilmiştir. Ağırlık fonksiyonunun değeri 4. kontrol noktası hariç tüm diğer kontrol noktalarında bir olarak alınmıştır. (hi =1, i4) 4. kontrol noktasındaki ağırlık fonksiyonu (h4) 0 ile 5 arasında değişen değerler almaktadır. Tüm ağırlık fonksiyonlarının bir olması durumunda elde edilen rasyonel B-spline eğrisi, standart B-spline eğrisine eşit olacaktır. h4=0 olması durumunda ise, B4 kontrol noktasının eğri üzerinde hiç bir etkisi olmayacaktır. Bu durumda B3 ve B5 noktalarının bir doğru ile birleşecektir. (bkz. Şekil 5.55 ) h4 değerinin giderek artması eğriyi ait olduğu kontrol noktasına giderek yaklaştırmakla birlikte diğer noktalardan uzaklaştıracaktır. Aynı eğrinin mertebesi bir arttırıldığında, Şekil 5.56 dan görüleceği gibi, k=4 ve h4=0 için B3 ve B5 noktalarının bir doğru ile birleşmediği görülmektedir. Şekil 5.57 de ise 3. kontrol noktasının konumunun değiştirilmesinin rasyonel B-spline eğrisine etkisi görülmektedir. Ağırlık değerleri olarak [H]=[ h1=1 h=1 h3=0.50 h4=1 h5=1 ] seçilmiştir. Eğer h3 =0 olarak seçilseydi B3 noktasını kaydırmanın eğri üzerinde herhangi bir etkisi olmayacaktı. h (t) (t) 87

B3 h 4=0 B5 0.5 1 5 B1 B B4 B6 Şekil 5.55. Ağırlık fonksiyonu değişiminin rasyonel bir B-spline eğrisine etkisi, (n+1=6, k=3), [H] = [1 1 1 h4 1 1] B3 h 4=0 B5 0.5 1 5 B1 B B4 B6 Şekil 5.56. Ağırlık fonksiyonu değişiminin rasyonel bir B-spline eğrisine etkisi, (n+1=6, k=4), [H] = [1 1 1 h4 1 1] B3 B B3 B4 B1 B3 B5 Şekil 5.57. Bir kontrol noktasının konumunun değiştirilmesinin rasyonel B-spline eğrisine etkisi, (n+1=5, k=4), [H]=[ 1 1 0.50 1 1 ] 88

Şekil 5.58 de kontrol noktalarının tekrarlanması sonucu, eğrinin istenilen kontrol noktasından geçirilebileceği görülmektedir. Aynı rasyonel olmayan B-spline eğrilerinde olduğu gibi bir poligon noktasının (k-1) kere tekrar edilmesi sonucu hi değerinden bağımsız olarak B-spline eğrisi istenen poligon noktasından geçirilebilir. B B4 a b B1 c B3 B5 Şekil 5.58. B3 kontrol noktasının çeşitli kereler tekrarlanmasının rasyonel B-spline eğrisine etkisi, (n+1=5, k=4), a eğrisi ) [H] = [ 1 1 0.50 1 1 ], b eğrisi) [H] = [ 1 1 0.50 0.50 1 1 ], c eğrisi) [H] = [ 1 1 0.50 0.50 0.50 1 1 ] NURBS eğrilerinin en önemli özelliğinin elips, daire gibi konik şekilleri temsil edebilme kabiliyeti olduğundan bahsetmiştik. Konik formlar gemi geometrisinde sıkça karşılaşılan şekillerdir. Örnek olarak duvar bordalı bir geminin orta kesit eğrisinde sintine dönümünü verebiliriz. Bu en kesit eğrisini rasyonel B-spline eğrilerini kullanarak tek bir matematiksel ifade ile tanımlamak mümkündür. Konik şekiller kuadratik denklemlerle ifade edildiğinden, rasyonel B-spline eğrisi de kuadratik (k=3) olmalıdır. Bir dairesel yay parçası oluşturabilmek için üç kontrol noktası (n+1=3) ile tanımlanan kuadratik rasyonel bir B-spline eğrisini ele alalım. Bu eğrinin düğüm vektörü [X] = [ 0 0 0 1 1 1 ] olacaktır. İlk ve son kontrol noktalarındaki ağırlık faktörü değerleri birdir. (h1=h3=1). Eğrinin tipi, Tablo 5. den görüleceği gibi, h nin alacağı değere bağlı olarak belirlenir Tablo 5.. Basit geometrik şekiller için ağırlık faktörü değerleri h = 0 Doğru 0 < h < 1 Elips h = 1 h > 0 Parabol Hiperbol h nin sonsuza gitmesi durumunda ise (h ) kontrol poligonun kendisi elde edilecektir. Değişik h değerleri için üç kontrol noktası kullanılarak çizilen konik segmentler Şekil 5.59 da görülmektedir. 89

B h >1 hiperbol h=1 parabol 0 < h < 1 elips h=0 doğru B1 B3 Şekil 5.59. Rasyonel B-spline/Bezier eğrisi ile temsil edilen konik segmentler (n+1=3, k=3) Daire, elipsin özel bir hali olduğundan, dairesel bir yay parçası oluşturmak için, Tablo 5. den de görülebileceği gibi h nin alacağı değer 0 ile 1 arasında olacaktır. B1B ve B1B3 doğru parçası arasındaki h= cos açısını kullanarak oluşturulan dairesel yay parçaları Şekil 5.60 da çizilmiştir. Şekil 5.60.a da 10 0 lik bir daire yayı, Şekil 5.60.b de ise 90 0 lik bir daire yayı görülmektedir. B B1 =45 0 h =cos45=/ B t=1/ h =cos60=0.5 =60 0 B1 (a) B3 (b) B3 Şekil 5.60. Rasyonel B-spline/Bezier eğrisi ile temsil edilen dairesel yay parçaları (n=, k=3) Şekil 5.61 de dört adet kuadratik rasyonel segment birleştirilerek bir tam daire oluşturulmuştur. Bu daireye ait düğüm vektörü ve ağırlık faktörleri şu şekildedir. [X] = [ 0 0 0 1 1 3 3 4 4 4 ] [H] = [1 / 1 / 1 / 1 / 1] 90

B4 B3 B5 B B6 B1 B9 B7 B8 Şekil 5.61. Dört adet 90 0 lik segmentin birleşmesinden oluşan rasyonel B-spline dairesi Şekil 5.6 de iki kuadratik rasyonel B-spline eğrisi birleştirilerek tek bir kuadratik eğri haline dönüştürülmüştür. Dairesel bir yay parçası oluşturmak üzere B1, B, B3 poligonu ve onu takiben B3, B4,B5, B6 poligonu kullanılmıştır. B6 B5 B B3 B4 B1 Şekil 5.6. İki eğri parçasının birleştirilmesinden oluşan rasyonel B-spline eğrisi [X] = [ 0 0 0 1 1 3 3 3 ], [H] = [1 / 1 1 1 1 ] Tekne form eğrilerinde dairesel kısımlara sahip kesit ve suhatları ile sıkça karşılaşılmaktadır. Genelde eğrinin tamamı dairesel olmadığı için diğer kısımlarla düzgün bir şekilde birleştirecek tek bir matematiksel ifadenin eldesi pratik açıdan çok önemlidir. Duvar bordalı bir gemiye ait en kesit eğrisinin sintine dönümü buna güzel bir örnektir. Şekil 5.63.a da görülen kuadratik rasyonel eğri B1 B B3 B4 B5 B6 noktaları kullanılarak, Şekil 5.63.b deki eğri ise B1 B B3 B4 B5 B6 noktaları kullanılarak çizilmiştir. 91

B6 B5 B4 a B4 Şekil 5.63. Rasyonel B-spline eğrisi ile çizilmiş bir en kesit eğrisi, [X] = [ 0 0 0 1 3 3 3 ], [H] = [1 1 / 1 1 1 ] B B1 B B3 b Örnek 5.16 : Bir gemiye ait baş profilini kübik rasyonel B-spline eğrisi ile temsil edelim. Tanımlayıcı kontrol poligonunu oluşturan noktalar B1(0,0), B(5,1), B3(,7), B4(8,9) olsun. Bu noktalar ait ağırlık faktörü matrisi [H]= [ 1 h 1 1 ] şeklindedir. h= değeri için elde edilen eğriyi çiziniz. Çözüm : k=4, n+1=4 ve h= için Düğüm vektörü : [X] = [ 0 0 0 0 1 1 1 1] Ağırlık faktörü vektörü [H]= [ h1=1 h= h3=1 h4=1 ] Bu eğri 0 t < 1 parametre aralığında değişen tek parça bir eğri olduğundan aynı zamanda rasyonel Bezier eğrisidir. Öncelikle temel fonksiyonları hesaplayalım: x4 t < x5; 0 t < 1 N4,1(t) = 1 ; Ni,1=0, i4 N3,(t) = 1-t N4,(t) = t ; Ni,=0, i3,4 N,3(t) = (1-t) N3,3(t) = t (1-t) N4,3(t) =t ; Ni,3=0, i,3,4 N1,4(t) = (1-t) 3 N,4(t) = 3t(1-t) N3,4(t) = 3t (1-t) N4,4(t) =t 3 9

Kübik rasyonel B-spline eğrisinin denklemini açık olarak yazalım; P(t) = B1R1,4(t) + BR,4(t) + B3R3,4(t) + B4R4,4(t) h N R i,k (t) (t) olduğundan öncelikle paydanın değerini hesaplayalım: (t) i i,k n 1 h in i,k i1 n 1 S i 1 h N i i,k (t) h 1 N 1,4 h N,4 h 3 N 3,4 h 4 N 4,4 =(1-t) 3 +6t(1-t) +3t (1-t)+ t 3 S = 3t 3-6t + 3t + 1 h1n R1,4(t)= S h N R,4(t)= S h 3N R3,4(t)= S h 4N R4,4(t)= S 1,4,4 3,4 4,4 3 (1 t) 3 3t - 6t 3t 1 6t(1 t) 3 3t - 6t 3t 1 3t (1 t) 3 3t - 6t 3t 1 3 t 3 3t - 6t 3t 1 Bu eğrinin denklemi; P(t) = B1R1,4(t) + BR,4(t) + B3R3,4(t) + B4R4,4(t) P(t) 0 0 5 1 7 8 9 3t 3t 3 3 3 (1 t) - 6t 3t 1 3 t - 6t 3t 1 3t 3 6t(1 t) - 6t 3t 1 3t 3 3t (1 t) - 6t 3t 1 t=1/ değeri için P(0.5) = [4 3.7] elde edilir. Şekil 5.64 de bu örnekte denklemi çıkarılan B-spline eğrisi görülmektedir. 93

(8,9) (,7) t = 0.5 = (4, 3.7) h=1 h= h=5 (5,1) (0,0) Şekil 5.64. B kontrol noktasına değişik ağırlık faktörü değerleri verilerek çizilen baş profil eğrileri NURBS eğrileri B-spline eğrilerinin genelleştirilmiş hali olduğundan, B-spline eğrileri için geçerli olan tüm özellikler NURBS eğrileri için de geçerlidir. NURBS eğrileri farklı olarak aşağıdaki özelliklere sahiptir: Otomobil, gemi vs. gibi endüstriyel ürünlerde rastlanabilecek her türlü şekil ve formda (Doğru parçalarından, çember, yay gibi analitik şekillere kadar) eğri ve yüzeylerin temsil imkanı Herhangi bir kompleks şekli, az sayıda nokta ile tanımlayarak temsil edebilme imkanı NURBS eğrilerinin ağırlık fonksiyonları, eğrinin lokal kontrol kabiliyetini arttırmaktadır. Ağırlık fonksiyonu değerleri kullanıcı tarafından değiştirilerek, eğri istenildiği kadar kontrol noktalarına yaklaştırılıp uzaklaştırılabilmektedir (ör., ağırlık fonksiyonu değerinin sıfır olması, o kontrol noktasının eğri üzerinde herhangi bir etkisinin olmadığını göstermektedir) Bir NURBS eğrisi tek parça bir eğri ise o eğri aynı zamanda rasyonel bir Bezier eğrisidir. Dolayısıyla NURBS eğrileri hem Bezier eğrilerini hem de B-spline eğrilerini bünyesinde barındıran eğrilerdir NURBS eğrilerinin temel kontrol araçları olarak kontrol noktaları, eğrinin derecesi, düğüm vektörü ve ağırlık fonksiyonları sayılabilir. 94

95

96

97