c语言二维图形变换程序,[C语言]二维图形基本几何变换的实现

该博客介绍了如何使用C语言编写程序,实现二维图形的平移和放大操作。通过左键双击屏幕绘制三角形,然后通过菜单选择平移或放大,输入相应参数实现图形变换。平移通过改变顶点坐标实现,放大则根据原顶点与中心点的比例关系计算新坐标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

任意给定一个三角形, 对它进行平移,放大,两种变换.

(1)将三角形的坐标存放到数组中

(2)先画出原始的三角形,再进行变换,画出变换后的形状

(3)建议:

a)左键双击屏幕,画出三角形

void CTranslationView::DrawPolyline(CPoint  spt[],int n)

{

RedrawWindow();

CDC* pDC=GetDC();

CPen newpen(PS_SOLID,1,RGB(255,0,0));

CPen *old=pDC->SelectObject(&newpen);

pDC->Polyline(spt,n);  //画多边形

pDC->SelectObject(old);

ReleaseDC(pDC);

}

void CTranslationView::OnLButtonDblClk(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call default

//多边形各顶点的坐标

spt[0]=CPoint(100,100);

spt[1]=CPoint(300,100);

spt[2]=CPoint(250,250);

spt[3]=CPoint(100,100);

CView::OnLButtonDblClk(nFlags, point);

DrawPolyline(spt,4);

}

b)建立菜单

一级菜单: 二维图形变换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值