第一篇:04 - 简单绘图
Lesson 4
一、消息映射机制
1.消息响应函数:(例:在CDrawView类响应鼠标左键按下消息)
1)在头文件(DrawView.h)中声明消息响应函数原型。
//{{AFX_MSG(CDrawView)//注释宏
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
//}}AFX_MSG//注释宏
说明:
在注释宏之间的声明在VC中灰色显示。afx_msg宏表示声明的是一个消息响应函数。
2)在源文件(DrawView.cpp)中进行消息映射。
BEGIN_MESSAGE_MAP(CDrawView, CView)
//{{AFX_MSG_MAP(CDrawView)
ON_WM_LBUTTONDOWN()
//}}AFX_MSG_MAP
ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
END_MESSAGE_MAP()
说明:
在宏BEGIN_MESSAGE_MAP()与END_MESSAGE_MAP()之间进行消息映射。
宏ON_WM_LBUTTONDOWN()把消息WM_LBUTTONDOWN与它的响应函数OnLButtonDown()相关联。这样一旦有消息的产生,就会自动调用相关联的消息响应函数去处理。
3)源文件中进行消息响应函数处理。(DrawView.cpp中自动生成OnLButtonDown函数轮廓,如下)
void CDrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
CView::OnLButtonDown(nFlags, point);
}
说明:
可见当增加一个消息响应处理,在以上三处进行了修改。可在消息响应函数里添加消息处理代码完成对消息的响应、处理。
2.消息响应的方式:
MFC消息映射机制的实现方法:
在每个能接收和处理消息的类中,定义一个消息和消息函数对照表,即消息映射表。在消息映射表中,消息与对应的消息处理函数指针成对出现。某个类能处理的所有消息及其对应的消息处理函数的地址都列在这个类所对应的静态表中。当有消息需要处理时,程序只要搜索该消息静态表。查看表中是否含有该消息,就可知道该类能否处理此消息,如果能处理该消息,则同样依照静态表很容易找到并调用对应的消息处理函数。
MFC消息映射机制是针对能接受消息和处理消息的类来定义对应的消息映射表,而不是由父类来定义所有消息对应的虚函数,由子类来覆盖其函数实现,因为这样做会使程序背着一
个很大的虚拟函数表的包袱运行,对内存是一种浪费。
MFC消息映射机制的实现过程:
MFC在后台维护了一个窗口句柄和C++对象指针对照表,当收到一个消息后,通过消息结构中的窗口句柄(查对照表)就可找到与它对应的一个C++类对象指针,然后把这个指针传给基类,基类利用这个指针调用WindowProc()函数对消息进行处理,WindowProc()函数中调用OnWndMsg()函数,真正的消息路由及处理是由OnWndMsg()函数完成的。由于WindowProc()和OnWndMsg()都是虚函数,而且是用派生类对象指针调用的,由多态性知最总终调用子类的。在OnWndMsg()函数处理的时候,根据消息种类去查找消息映射,判断所发的消息有没有响应函数,具体方式是到相关的头文件和源文件中寻找消息响应函数声明(从注释宏//{{AFX_MSG(CDrawView)...//}}AFX_MSG之间寻找),消息映射(从宏BEGIN_MESSAGE_MAP(...)....END_MESSAGE_MAP()之间寻找),最终找到对应的消息处理函数。当然,如果子类中没有对消息进行处理,则消息交由基类处理。
二、有关绘图
1.使用SDK全局函数获取DC句柄:
HDC hdc;
hdc=::GetDc(m_hWnd);//获取DC句柄
MoveToEx(hdc,m_ptOrigin.x,m_ptOrigin.y,NULL);
LineTo(hdc,point.x,point.y);
::ReleaseDC(m_hWnd,hdc);//释放DC
2.利用CDC类指针和CWin类成员函数获取DC。(CDC:设备上下文对象的类)CDC *pDC=GetDC();
pDC->MoveTo(m_ptOrigin);
pDC->LineTo(point);
ReleaseDC(pDC);
3.利用CClientDC对象。(从CDC类派生来的,对象只访问窗口的客户区)
CClientDC dc(this);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
4.利用CWindowDC对象。(从CDC类派生来的,对象可访问整个窗口区域)
CWindowDC dc(this);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
5.GetParent()得到父窗口指针;GetDesktopWindow()得到屏幕窗口指针。
CWindowDC dc(GetDesktopWindow());
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
6.利用画笔改变线条颜色和类型:
CPen pen(PS_DOT,1,RGB(0,255,0));//构造画笔对象
CClientDC dc(this);
CPen *pOldPen=dc.SelectObject(&pen);//将画笔选入DC,并保存旧的画笔
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
dc.SelectObject(pOldPen);//将旧的画笔选入DC
7.使用画刷(通常利用画刷去填充矩形区域):
使用单色画刷
CBrush brush(RGB(255,0,0));//构造画刷对象
CClientDC dc(this);
dc.FillRect(CRect(m_ptOrigin,point),&brush);//用指定的画刷去填充矩形区域
使用位图画刷
CBitmap bitmap;//构造位图对象(使用前需要初始化)
bitmap.LoadBitmap(IDB_BITMAP1);//初试化位图对象
CBrush brush(&bitmap);//构造位图画刷
CClientDC dc(this);
dc.FillRect(CRect(m_ptOrigin,point),&brush);//用指定的位图画刷去填充矩形区域
使用透明画刷
CBrush *pBrush=CBrush::FromHandle((HBRUSH)GetStockObject(NULL_BRUSH));//获取透明画刷对象指针
CClientDC dc(this);
CBrush *pOldBrush=dc.SelectObject(pBrush);//将透明画刷选入DC
dc.Rectangle(CRect(m_ptOrigin,point));
dc.SelectObject(pOldBrush);//将旧画刷选入DC,释放透明画刷 说明:
HGDIOBJ GetStockObject(int fnObject// type of stock object);
static CBrush* PASCAL FromHandle(HBRUSH hBrush);//FromHandle是一个静态方法,故可用CBrush::FromHandle()形式调用。
注意点:
1)静态方法不属于某一个具体对象,而属于类本身,在类加载的时候就已经为类静态方法分配了代码去,故可用CBrush::FromHandle()形式调用。
2)静态方法中,不能引用非静态的数据成员和方法。
3)静态数据成员需要在类外单独做初始化,形式如: 变量类型 类名::变量名=初始值;
8.绘制连续线条:
void CDrawView::OnMouseMove(UINT nFlags, CPoint point)
{
CClientDC dc(this);
CPen pen(PS_SOLID,1,RGB(255,0,0));
CPen *pOldPen=dc.SelectObject(&pen);//将画笔选入DC,并保存旧的画笔 if(m_bDraw==TRUE)
{
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
m_ptOrigin =point;//修改线段的起点
}
dc.SelectObject(pOldPen);//恢复DC
CView::OnMouseMove(nFlags, point);
}
绘制扇形效果的线条:
删除:m_ptOrigin =point;
绘制带边线的扇形:
红色处替换为
dc.LineTo(m_ptOld);
m_ptOld=point;
设置绘图模式的函数:SetROP2(R2_BLACK)。
第二篇:绘图总结
绘图总结
一、总结
(1)图形的对称行,绘画中心线,节省大量的时间和图纸干净整洁。(2)图层的线粗分明,查看图纸的时候,比较清晰,尤其对折弯线的辨别。(3)绘画三视图,体现高平齐宽相等。
(4)标注的时候,孔的定位、折弯的定位标注线,分开来标注。总尺寸单独拉开,便于下料查看尺寸。
(5)绘图比例,必须明确规定。
二、看图的顺序
(1)查看图号、名称、材料和厚度。(2)查看展开图的总体尺寸,长和宽。
(3)查看定位孔的尺寸,定位基准长和宽,孔的标注。(4)折弯尺寸。(5)线性角度的标注。(6)折弯图尺寸查看。(7)折弯角度的查看。
三、制图技术要求
(1)制图表面平整、无毛刺、无凹坑。
(2)制件应符合Q/LS-2008-29《钣金件检验规范》
(3)未注公差符合Q/LS027-028
四、图幅规范
A0(841×1189)A1(594×841)A2(420×594)A3(297×420)A4(210×297)
五、线性的分类和规则
细实线 .应用过渡线、标注线、指引线、剖面线、折弯线。
波浪线 .断裂处的边界线,视图与剖视图的分界线。双折线 .断裂处的边界线,视图与剖视图的分界线。粗实线 .可见轮廓线
粗实现 . 表格图、流程图中的主要表示线
细虚线 .不可见轮廓线
细点画线.对称中心线、分度圆、孔系分布的中心线、剖切线
细双点画线.成形前的轮廓线、线、轨迹线、制成品的轮廓线、特定区域线、工艺结构的轮廓线、中断线
六GB/T 4457.4-2002规定
粗细线宽度比率2 :1 0.13mm、0.18mm、0.25mm、0.35mm、0.5mm、0.7mm、1mm、1.4mm、2mm
第三篇:绘图文员职责
绘图员兼文员主要工作内容
1.在部门经理的直接领导下,负责处理本部门的日常事务; 2.负责本办公室内每天的清洁卫生工作,推行办公室内的“5s”(清扫,清洁,整理,整顿,素养)管理工作,使之随时处在一种干净整洁的工作环境当中;
3.负责部门工作会议的记录,整理,并监督,追踪会议事项的落实情况及时汇报;
4.负责每月的设备,工艺,质检部门员工的考勤,工资的统计,核算工作,并按流程送报各级审批;
5.负责每月统计,发放各部门的劳保,办公及福利用品;
6.负责办理离职及新入职人员的行政手续,对新入职人员个人信息;进行登记;为离职人员办理交接清单并跟进其交接完成情况(如所领工具,用品相关文件的交接等); 7.建立制定部门人事资料档案并随时更新;
8.办理设备及配件的申购合同及相关手续工作,并负责与相关部门和人员联系沟通,跟踪采购进度;
9.负责设备台账的建立和管理,设备资料档案的整理;
10.负责部分零件现场测绘草图,后转换为所需的二维、三维工程图; 11.负责协助工程师制图,出图及外发零件加工的联系和跟进工作; 12.完成部门安排的其他工作任务。
工艺、设备、质检部 2012-10-21篇二:绘图员岗位职责
绘图员岗位职责
为了进一步规范各部门的工作,提高大家的专业技能,提升工作效率,做到在注重结果的同时,让过程能更好更快更轻松的推进,现将cad制图员岗位职责、制图规范和流程的内容规定如下,贯彻执行!
岗位职责:
1、制图员必须遵守公司及硬装设计部的规章制度,在各方面对甲方、公司、硬装设计部负责。
2、制图员在日常工作中,必须服从设计总监的安排,对设计师负责。
3、服从设计师对具体设计工作的安排。
4、通过设计师了解工程概况、甲方意图和要求,负责方案图、施工图等图纸的绘制。
5、负责图纸深化,包括设计方案的修改、确认,施工图绘制,施工图扩充、变更图以及各专业图纸的完善。
6、制图员图纸绘制必须按照附件一《设计部cad制图规范》绘制,并符合有关国家规范以及甲方的要求。
7、制图员应对所绘图纸负责,因绘制原因造成甲方及公司的声誉及经济损失,应酌情承担相应的连带责任。
8、有义务提出意见以及合理化建议。
9、提高自身的专业能力,配合设计师完成投标工作中设计方案的完成。规范:
1、具体cad施工图的绘制以及深化设计的要求:
2、模型库:分清各种家具分类,家装、公装分开等。
3、量房工具:黑色、彩色签字笔、纸张、卷尺等、相机等物品的采购、保管、使用、借用由cad主管统一管理;
4、cad2010版、ps7.0以上版本,office2003以上版本;dwg格式转换成jpg格式的方法请咨询cad主管。
(1)、施工图制图要求:准确、标准、美观、快捷;(2)、整套施工图纸的内容包括:封面、说明、目录、平面、立面、节点、封底。并应包括两大部分,第一部分为装修部分包含三大面及个装饰造型的具体图纸;第二部分为设备部分包含水电暖通空调消防安防音响等方面的具体图纸;
(3)、图纸的线型、颜色、粗细、文字的大小字体、数字的大小字体、各种符号的大小粗细等详细情况。
(4)、图层分类、布局使用、图框比例、图纸会签、盖章要求均由cad主管确定等;
(5)、图纸打印、晒蓝图、工作联系单由cad主管确定;
6、补充图纸、变更图纸的编号、整理详情、与甲方的交接详情文件由相应的制图人员确定;
7、竣工图的编制方法,编制程序等问题由cad主管确定;
8、施工图、竣工图图纸以及施工过程中、竣工后的照片归档由相关设计师和cad主管来统一协调确定;
流程
1、cad组配合设计师量房,以及对甲方提供的图纸进行电子化,熟悉相关建筑情况;
2、制图员(最好2位)应和设计师一起去施工现场量房照相与甲方现场进行沟通;
3、量房要用不同颜色的笔,绘制记录出现场的第一手资料,特别是管线梁柱等部位;
4、照相应全面,多角度,特别注重管线梁柱楼梯等结构细节的特写;
5、原始尺寸图由制图员绘制(量房时的画图者);
6、原始图完成后交设计师做平面方案;
7、对平面方案进行多次修改完善;
8、在甲方负责人签字确认的方案图纸(平面和效果图)的基础上,再去现场复核一下各空间的尺寸,及拍照备用;
9、绘制和深化其他平面图;
10、配合设备工程师绘制相关的设备部分施工图;
11、完成所有不同空间的立面图纸;
12、完成三大面及各种造型的节点详图,节点图的剖切要求最好能横竖双向表现;
13、与设计师紧密配合,对平面图、立面图和节点图应全面熟悉和配合,发现问题及时解决;
14、制图员编制目录,说明,应与图纸一一对应,尤其是说明应有通用说明和专项说明之分,专项说明应详细到位;
15、打印图纸应先借款办理财务手续,图纸会签,图纸数量,盖章等应完备;
16、呈送给任何部门的图纸应有工作联系单,并签字归档;
17、竣工图的编制应在施工图的基础上,结合施工过程中的补充图纸、变更图纸以及相关的来往文件,统一完整准确的进行编制;
18、竣工后应对现场进行拍照归档;篇三:绘图员工作职责
绘图员工作职责是:
1、由工程技术部资料管理员安排工作量,按时完成描图、晒图任务。
2、根据主管工程师提供的资料,遵照各建设单位对竣工图纸的格式要求,准确地完成描图工作。
3、根据主管工程师的要求,做好资料的装订工作。
4、确保描图、晒图、装订的质量,不合格、不合要求的资料不能提供给 主管工程师。
5、严格遵守晒图机的操作规范,并做好保养工作。
绘图员、设计助理岗位职责
更新时间:2005年08月28日 点击: 89589次
绘图员、助理设计师岗位职责
一、绘图员在分公司经理的领导下进行工作;热爱公司,热爱装修事业,热爱本职工作; 认真遵守公司各项规章制度、学习各项业务知识,不断提高操作技能;
二、必须按时、按质、按量完成经理交给的绘图工作任务,图纸绘制要求点、线、面标注准确无误;
三、配合预算兼资料员深入工地现场解决施工中出现的问题、难点提出解决方法和改进建议。遇到现场解决不了的难题拍照标注向领导汇报,现场以规范的语言、礼貌的态度、诚信的服务态度树立良好的公司形象;
四、独立地完成业务咨询、洽谈和报价,并协助设计师与客户进行沟通,顺利完成设计任务。负责处理施工过程中与业务有关的疑难问题,配合预算兼资料员及时完成增补项目的报价和增补项目变更事项工作,参与工程竣工验收和资料归档工作;
五、报价要清晰,项目要准确、全面,材料要按公司标准标明品牌、规格、产地、价格,增补项目下单要及;
六、有权力和义务对公司的发展提出自己的想法和意见。有义务将公司向 外进行宣传,做无形广告;
七、及时完成领导安排的其他工作。
第四篇:《彩色绘图》教案
《彩色绘图》教案设计
教学内容:信息技术课本小学版第4册——彩色绘图 教学目标:
1、学会用彩色绘图的命令画出各种颜色的图形。
2、用重复命令画钟表。
教学重点:综合利用命令画各种颜色的图形 教学过程:
一、复习提问:
1、请口头说出画矩形的命令?
2、请口头说出画椭圆的命令?
3、、分行画出实心和空心的矩形与椭圆。
二、导入新课:
(出示8个图形)同学们,你们看老师这里列出的几个图形最大的区别是什么?(彩色与单色)说得很对,老师告诉大家,LOGO语言不单能画出单色的图形来,它还为我们提供了多种颜色的彩笔,利用这些彩笔,我们可以画出五颜六色的画来,你们想来学习吗?好,今天我们就来学习彩色绘图。在本节课的学习中,我们重点要来学会改变龟笔颜色的方法,并且还要学习一种新的绘画技巧。你们有信心学会吗?
三、新课:
(一)教学用工具栏上的按钮改变龟笔的颜色。
1、介绍常用工具栏上的龟笔颜色按钮。(课件展示)
2、介绍如何用鼠标单击改变颜色的方法。(课件展示)
3、生练习:画一彩色实心矩形(长宽均为120)
(二)教学用笔色命令来改变龟笔的颜色。
1、介绍笔色命令。(课件展示)
2、练习:用笔色命令设置龟笔颜色,看看海龟都可以变成什么颜色。
3、小结:刚才在练习时,我们大家输入颜色代码,都输入了多种数值。不知大家发现了没有,无论我们怎样改变颜色代码,龟笔的颜色始终在16种颜色中变化。这是LOGO语言的程序缺陷造成的。所以今后,我们再用笔色命令时,颜色代码值只需输入这16个就可以了。(课件展示16种颜色对照表)
(三)质疑:对于改变龟笔的颜色还有什么问题吗?
(四)教学时钟的画法:
下面,让我们共同利用所学知识来画一个彩色时钟,请大家看屏幕,来分析一下,这个时钟由几部分组成?(课件出示一个彩色时钟)
1、生分析时钟结构(表盘、钟面、刻度、指针)
2、学生练习画表盘与指针。
师提醒:同学们,关于表盘与指针的画法,我们可以利用画实心矩形和实心椭圆的方法来画出,不过,老师提醒大家,要先画矩形,再画椭圆,并且画椭圆时,一定要先把海龟移到矩形的中心点上。
3、教学画刻度的方法。
讨论:现在大家来分析一下画一个刻度该下达什么命令呢?
(PU FD 45 PD FD 5 PU BK 50 PD RT 360/12)
操作:大家自己动手来画出一条刻度来。
分析:那么时刻的12个刻度我们该怎样画呢?是不是像这样一条一条的输入呢?
(课件展示全部命令)
结论:今天,老师请小海龟为我们大家献上一件宝贝,利用这作宝贝我们可以使我们的命令变得非常简单,请看:(课件出示重复命令)
讲解:这就是重复命令,它能将方括号内的命令重复执行指定的次数。例如,请看(课件出示12条刻度的画法)先输入REPEAT,然后再输入重复的次数12,最后在方括号里输入一条刻度的画法。这样回车之后,我们就可以一次性的画完12条刻度了。
练习:学生动手输入画12条刻度的命令。
质疑:关于重复命令学会了吗?
四、课堂练习:
1、将刚画好的时钟修改成表盘是也是圆形的时钟。
2、利用重复命令来画出“米”字形
3、挑选自己喜欢的图形并画出来:
五、课堂总结:
1、指名总结本节课的收获。
2、教师总结:在本节课的学习中,我们学会了彩色绘图的方法,并且学习了重复绘图命令。老师希望大家勤于练习,用LOGO语言的彩笔来勾画你们美好的明天。下课,同学们再见!
辽宁省锦州市黑山县励家镇中心小学
曹建华
第五篇:CAD绘图心得体会
经过这几天的绘图我对cad有了更加深入的了解和运用,虽然画的很累,但我觉得学了很多,感觉更加充实。
在绘图期间我发现cad技巧有一些:
1掌握快捷命令可以提高绘图速度
2基础很重要
3天正中常用的图库要较为熟悉
4在电脑中多创建一些块以便调用
5对各种参数进行设置、提高绘图的水平与质量
在绘图期间遇到的问题也有一些:
1在画平面图时天正中没有相关的家具调用
2在画立面图时天正中没有相关的门窗调用
3在画剖面图时楼梯调用时尺寸出现过问题
4在画大样图时1:20的图画的效果跟1:100的没区别
在绘图后的收获(注意事项有这些):
1学以致用
2层次要分明
3粗细要清楚
4写文字要规范
总之绘图过程当中应严格做到层次分明,规范作图。我的体会是:养成良好的习惯,受益匪浅。