“画图”程序可以实现什么

“画图”程序可以实现什么,第1张

画图程序,是最简单的处理软件。它可以实现的合并,最常见的格式转换等,如果不明白,可以打开画图程序点窗口上的帮助里面有说明。

如果您想处理,建议使用PHOTOSHOP,电脑自带的画图程序是小孩,那PS就是大人了,呵呵。网友们大都数都在使用它,朋友试试吧。

要想在MFC中画出有颜色的线条,首先就要设置DC的画笔,我们可以按如下方法来设置画笔:

第一步:在View类中添加一个COLORREF类型的数据成员m_Color(用来保存画笔颜色值),在构造函数中对其初始化,

m_Color(RGB(255,0,0))

第二步:在WM_LBUTTONDOWN和WM_LBUTTONUP消息的处理函数OnLButtonDown和OnLButtonUp中添加如下代码:

void CdrView::OnLButtonDown(UINT nFlags, CPoint point)

{

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

m_StartPoint=point; //用来保存画线起始点的位置,即鼠标左键第一次按下时的位置,类型为CPoint

CView::OnLButtonDown(nFlags, point);

}

void CdrView::OnLButtonUp(UINT nFlags, CPoint point)

{

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

//第一种方法,用HDC绘图,使用API函数设置画笔颜色

/HDC hdc;

hdc=::GetDC(m_hWnd);

::SelectObject(hdc,CreatePen(PS_SOLID,1,m_Color)); //向设备上下文(设备描述表)中插入由CreatePen函数创建的画笔

::MoveToEx(hdc,m_StartPointx,m_StartPointy,NULL);

::LineTo(hdc,pointx,pointy);

::ReleaseDC(m_hWnd,hdc);/

//第二种,用CDC类绘图,使用CPen类构造画笔

/CDC aDC;

CPen pen(PS_SOLID,1,m_Color); //建立一个画笔类对象,构造时设置画笔属性

aDCm_hDC=::GetDC(m_hWnd);

aDCSelectObject(&pen);

aDCMoveTo(m_StartPoint);

aDCLineTo(point);

::ReleaseDC(m_hWnd,aDCm_hDC);/

//第三种,用CClient类绘图,使用CPen类构造画笔,跟第二种方法不同的是用CClientDC时不用手动去获取DC,和释放DC

CClientDC aDC(this); //CClientDC的构造函数需要一个参数,这个参数是指向绘图窗口的指针,我们用this指针就可以了

CPen pen(PS_SOLID,1,m_Color); ////建立一个画笔类对象,构造时设置画笔属性

aDCSelectObject(&pen);

aDCMoveTo(m_StartPoint);

aDCLineTo(point);

CView::OnLButtonUp(nFlags, point);

}

void CdrView::OnMouseMove(UINT nFlags, CPoint point)

{

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

CView::OnMouseMove(nFlags, point);

}

运行程序,就可以画出红色的线条来,如果想画其它颜色,只需要设置m_Color的值即可,例如,要设置成绿色,可以在View类的构造函数处把m_Color(RGB(255,0,0))改写成m_Color(RGB(0,255,0))。颜色的改变是通过设置RGB(0,255,0)中的三个参数来实现的。RGB中的三个参数分别对应三原色的红、绿、蓝,每一个参数的取值范围都是0~255,通过不同数值的组合,就可以画出各种各样的颜色来了。

通过Win7的开始打开,找到“附件”--“画图”,即可启动Win7画图程序

在Win7画图程序中打开一张,若是该的原始尺寸较大,可以通过画图程序右下角的滑动标尺进行调整将显示比例缩小,这样便于在画图界面查看整个。当然,也可以在画图的查看菜单中,直接点击放大或缩小来调整的显示大小。

在查看时,特别是一些需要了解部分区域的大致尺寸时,可以利用标尺和网格线功能,方便用户更好的利用画图功能。 *** 作时,可以在查看菜单中,勾选“标尺”和“网格线”即可。

有时因为局部文字或者图像太小而看不清楚,这时,就以利用画图中的“放大镜”工具,放大的某一部分,方便查看。 *** 作时,鼠标左键单击放大,鼠标右键单击缩小。放大镜模式可以通过侧边栏移动的位置。

Win7画图还提供了“全屏”功能,可以在整个屏幕上以全屏方式查看。 *** 作方法:在画图“查看”选项卡的“显示”栏目中,单击“全屏”,即可全屏查看,再次单击鼠标左键即可退出,或者按ESC键退出全屏返回“画图”窗口。

(defun c:tes ( / i n p1 p2 r r1 r2 r3 r4 ss1 ss2)

 (vl-load-com)

 (if (and

  (setq p1 (getpoint "\n请选择同心圆圆心"))

  (setq r1 (s180828a p1 "\n请输入第一个同心圆半径:"))

  (setq r2 (s180828a p1 "\n请输入第二个同心圆半径:"))

  (setq r3 (s180828a p1 "\n请输入第三个同心圆半径:"))

  (setq p2 (polar p1 0 (setq r4 (cadr (setq ss1 (vl-sort (list r1 r2 r3) '<))))))

  (setq r (s180828a p2 "\n请输入小圆半径"))

  (setq n (s180828s))

     )

  (progn

   (setq ss2 '())

   (while (setq r1 (car ss1))

    (setq ss1 (cdr ss1))

    (entmake (list '(0  "CIRCLE") (cons 10 p1) (cons 40 r1)))

    (setq ss2 (cons (entlast) ss2))

   );while

   (setq i -10)

   (while (< (setq i (1+ i)) n)

    (setq p2 (polar p1 (/ ( pi i 2) n) r4))

    (entmake (list '(0  "CIRCLE") (cons 10 p2) (cons 40 r)))

   );while

  )

 )

 (princ)

);autolisp程序,复制到记事本,以lsp为后缀命名,AutoCAD命令appload加载。

;输入圆半径

(defun s180828a (p1 str1 / p1 str1)

 (initget 6)

 (getdist p1 str1)

)

;输入小圆数量

(defun s180828s ()

 (initget 6)

 (getint "\n请输入小圆数量:")

)

在CAD软件中,把数控程序中的坐标点逐个画出来,是圆弧就用圆弧画,是直线就用直线命令画。画出来的就是刀具路径,如果是精车,画出来的就是轮廓线。

注意:X方向要把坐标值除以2再画。

#include<stdioh>

#include<graphicsh>

main()

{

int gm,gd=DETECT;

int a,T,X,R=100;

scanf("%d",&a);

T=200,

X=aT;

initgraph(&gd,&gm,"");/双引号内填bgi文件夹在你电脑中的目录,如在c:\tc\bgi,且c文件在c:\tc\programfiles下,则填"\\bgi"/

circle(X,T,R);/R为半径/

getch();

closegraph();

}

以上就是关于“画图”程序可以实现什么全部的内容,包括:“画图”程序可以实现什么、C++应用程序中,画图程序 创建画笔的代码 急~~、Windows七中画图程序的功能是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9854613.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存