📄 unit4.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit4.h"
#include "Basic_graph.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm4 *Form4;
//---------------------------------------------------------------------------
__fastcall TForm4::TForm4(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm4::Button1Click(TObject *Sender)
{
Form4->Close();
//Image1->Canvas->Pen->Color = clRed;
Form1->Image1->Canvas->Pen->Color = clWhite;
int x1,y1,x2,y2,x3,y3,x4,y4;
int xleft,xright,y,ymax,ymin;
//int a[5]={y1,y2,y3,y4};
//int i,j,t,s;
x1=StrToFloat(Edit1->Text);
y1=StrToFloat(Edit2->Text);
x2=StrToFloat(Edit3->Text);
y2=StrToFloat(Edit4->Text);
x3=StrToFloat(Edit5->Text);
y3=StrToFloat(Edit6->Text);
x4=StrToFloat(Edit7->Text);
y4=StrToFloat(Edit8->Text);
Form1->Image1->Canvas->MoveTo(x1,y1);
Form1->Image1->Canvas->LineTo(x2,y2);
Form1->Image1->Canvas->LineTo(x3,y3);
Form1->Image1->Canvas->LineTo(x4,y4);
Form1->Image1->Canvas->LineTo(x1,y1); //画多边形
/* {
for(i=1;i<5;i++)
a[i]=a[5];
for(j=1;j<=4;j++)
for(i=1;i<=5-j;i++)
{
if(a[i]>a[i+1])
{
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
ymax=t;
{s=a[i+1];a[i+1]=a[i];a[i]=s;}
ymin=b;
}
}
} */
if(y3>y2&&y2>y4&&y4>y1)
{
for(y=y3;y>=y2;y--)
{
xright=(x3*y2-x2*y3+(x2-x3)*y)/(y2-y3);
xleft= (x4*y3-x3*y4+(x3-x4)*y)/(y3-y4);
if(xleft!=0&&xright!=0)
{
Form1->Image1->Canvas->MoveTo(xleft,y);
//Form1->Image1->Canvas->Pixels[xright][y]=clGreen;
Form1->Image1->Canvas->LineTo(xright,y);
}
}
for(y=y2;y>=y4;y--)
{
xright=(x2*y1-x1*y2+(x1-x2)*y)/(y1-y2);
xleft= (x4*y3-x3*y4+(x3-x4)*y)/(y3-y4);
if(xleft!=0&&xright!=0)
{
Form1->Image1->Canvas->MoveTo(xleft,y);
Form1->Image1->Canvas->LineTo(xright,y);
//Form1->Image1->Canvas->Pixels[xright][y]=clGreen;
}
}
for(y=y4;y>=y1;y--)
{
xright=(x2*y1-x1*y2+(x1-x2)*y)/(y1-y2);
xleft= (x4*y1-x1*y4+(x1-x4)*y)/(y1-y4);
if(xleft!=0&&xright!=0)
{
Form1->Image1->Canvas->MoveTo(xleft,y);
Form1->Image1->Canvas->LineTo(xright,y);
// Form1->Image1->Canvas->Pixels[xright][y]=clGreen;
}
}
}
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -