في هذا المثال، يتم رسم منحنى جيبي مباشرة على النموذج لمنع إخراج الرسومات غير المكتملة أثناء تبديل النوافذ، يتم وضع الرموز الأساسية لرسم الرسومات في عملية OnPaint الخاصة بالنموذج، ويكون الرمز كما يلي:
الإجراءTForm1.FormPaint(Sender:TObject);
فار
س:عدد صحيح؛
ذ،أ:مزدوج؛
يبدأ
Canvas.Pen.Width:=3;
Canvas.MoveTo(0,Trunc(self.ClientHeight/2));
forx:=0toself.ClientWidthdo
يبدأ
أ:=(x/self.ClientWidth)*2*Pi;
ذ:=الخطيئة(أ);
y:=(1-y)*self.ClientHeight/2;
Canvas.LineTo(Trunc(x),Trunc(y));
نهاية؛
نهاية؛
يقوم البرنامج أولاً بتعيين عرض الفرشاة في كائن Canvas الخاص بالنموذج، وينقل نقطة بداية الرسم إلى الموضع (0,Trunc(self.ClientHeight/2)) في النموذج. ثم قم بتحويل قيمة الزاوية خلال الفترة الجيبية إلى قيمة راديان من خلال عبارة a:=(x/self.ClientWidth)*2*Pi في حلقة، وقم بتخزين نتيجة حساب الجيب في المتغير y. أخيرًا، سترسم عبارة Canvas.LineTo(Trunc(x),Trunc(y)) في الحلقة منحنى جيبي مستمر في النموذج.
رمز البرنامج هو كما يلي:
UnitUnit1;
واجهة
الاستخدامات
Windows، الرسائل، SysUtils، المتغيرات، الفئات، الرسومات، عناصر التحكم، النماذج،
مربعات الحوار، ExtCtrls، StdCtrls؛
يكتب
TForm1=الفئة(TForm)
الإجراءFormPaint(Sender:TObject);
الإجراءFormResize(Sender:TObject);
الإجراءFormCreate(Sender:TObject);
خاص
{التصريحات الخاصة}
عام
{التصريحات العامة}
نهاية؛
فار
Form1:TForm1;
تطبيق
{$R*.dfm}
الإجراءTForm1.FormPaint(Sender:TObject);
فار
س:عدد صحيح؛
ذ،أ:مزدوج؛
يبدأ
Canvas.Pen.Width:=3;
Canvas.MoveTo(0,Trunc(self.ClientHeight/2));
forx:=0toself.ClientWidthdo
يبدأ
أ:=(x/self.ClientWidth)*2*Pi;
ذ:=الخطيئة(أ);
y:=(1-y)*self.ClientHeight/2;
Canvas.LineTo(Trunc(x),Trunc(y));
نهاية؛
نهاية؛
الإجراءTForm1.FormResize(Sender:TObject);
يبدأ
ينعش؛
نهاية؛
الإجراءTForm1.FormCreate(Sender:TObject);
يبدأ
self.DoubleBuffered:=true;
// منع الرسومات من الخفقان
نهاية؛
نهاية.
احفظ الملف ثم اضغط F9 لتشغيل البرنامج. أثناء تشغيل البرنامج، سيتم رسم منحنى جيبي تلقائيًا على النموذج، وتظهر نتائج التشغيل في الشكل 1.
الشكل 1: نتائج تشغيل البرنامج
من خلال تعلم هذا البرنامج، لا يمكنك رسم منحنيات الجيب فحسب، بل يمكنك أيضًا رسم منحنيات مختلفة مثل منحنيات جيب التمام ومنحنيات الظل لتسهيل البحث العلمي.