电子设计精品]基于dxf技术的草图绘制软件设计与实现(定稿内容摘要:
rawArc:绘制弧线类 DrawPentagon:绘制正五边形类 DrawCircle:绘制圆类 DrawHexagon:绘制正六边形类 DrawTriangle:绘制正三角形类 DrawPieSlice:绘制扇形类 DrawSquare:绘制正方形类 DrawBezierCurve:绘制贝塞尔曲线类 不同类型的绘图类之间的继承关系如下图所示: D r a w O b j e c tA b s t r a c t C l a s sD r a w L i n eC l a s sI n h e r i t e d f r o m D r a w O b j e c tD r a w R e c t a n g l eC l a s sI n h e r i t e d f r o m D r a w O b j e c tD r a w P o l y g o nC l a s sI n h e r i t e d f r o m D r a w L i n eD r a w P i c t u r eC l a s sI n h e r i t e d f r o m D r a w R e c t a n g l eD r a w C i r c l eC l a s sI n h e r i t e d f r o m D r a w R e c t a n g l eD r a w E l l i p s eC l a s sI n h e r i t e d f r o m D r a w R e c t a n g l eD r a w S t r i n gC l a s sI n h e r i t e d f r o m D r a w R e c t a n g l eD r a w T r i a n g l eC l a s sI n h e r i t e d f r o m D r a w C i r c l eD r a w A r cC l a s sI n h e r i t e d f r o m D r a w E l l i p s eD r a w S q u a r eC l a s sI n h e r i t e d f r o m D r a w C i r c l eD r a w H e x a g o nC l a s sI n h e r i t e d f r o m D r a w C i r c l eD r a w P e n t a g o nC l a s sI n h e r i t e d f r o m D r a w C i r c l eD r a w P i e S l i c eC l a s sI n h e r i t e d f r o m D r a w E l l i p s eD r a w B e z i e r C u r v eC l a s sI n h e r i t e d f r o m D r a w O b j e c tD r a w M u l t i L i n eC l a s sI n h e r i t e d f r o m D r a w L i n e 图 绘图类之间的继承关系图 2020 届本科毕业设计说明书 9 4. 3 系统操作界面的设计 系统的操作界面由图形绘制和编辑区域、系统绘图功能参数设置区域两大部分构成。 用户可在系统参数设置区域上进行功能和参数选择,在绘图区域上对草图进行绘制和编辑,以求达到预期的绘图效果。 操作界面由 WhiteBoard 用户控件、 DrawArea 用户控件、 ToolStrip1 系统控件、ToolStrip2 系统控件构成。 其中 DrawArea 用户控件、 ToolStrip1 系统控件、ToolStrip2 系统控件被集成在 WhiteBoard 用户控件之中,而 DrawArea 控件则为草图绘制和编辑区域, ToolStrip1 控件和 ToolStrip2 控件则用来对系统的各项参数进行设置。 DrawArea 控件和 ToolStrip ToolStrip2 控件被嵌入在 WhiteBoard 控件中,进而将整个 WhiteBoard 用户控件加载到 Form 中形成用户界面。 下图为操作界面设计图: 图 系统主操作界面 4. 4 草图存储读取机制的设计 绘制草图的核心功能是通过调用 GDI+提供的绘图方法而实现 ,图形在绘制完成之后,系统要能够将其保存到存储器或者数据库中,这就需要提取每个图形的基本特征属性,然后再按照 DXF 的格式将其存储。 功能参数设置栏 图形绘制和编辑区域 功能参数设置栏 2020 届本科毕业设计说明书 10 草图的 DXF 存储设计 草图的 DXF 存储主要是根据所绘图形的特征属性等基本信息将其存储为标准的DXF 文件,包含生成文件固定的字段、根据图形特征属性等基本信息填充 HEADERS 段、TABLES 段、 ENTITIES 段等,将所有数据按照规定的顺序填充到一个文件中并将数据生成标准的 DXF 文件。 以 D X F 格 式 读 取 草 图第 一 步 填 充 D X F 文 件 的 固 定 字 段第 二 步 根 据 图 形 的 特 征 属 填 充 基本 信 息第 三 步 按 照 顺 序 生 成 标 准 的 D X F文 件填 充 尺 寸 、 版 本 等 信 息填 充 图 层 、 样 式 表 等 信 息根 据 图 形 填 充 实 体 信 息 图 草图的 DXF存储流程设计 草图的 DXF 读取设计 草图的 DXF 读取主要是打开一个标准的 DXF 文件,然后将打开文件中的字符串保存起来以便后续分析提取有用的信息,将字符串按 HEADERS、 TABLES、 ENTITIES 段分别提取出来,根据分离出的信息按照组码提取需要的组值,最后根据所提取的信息调用系统绘图功能绘出图形。 以 D X F 格 式 读 取 草 图第 一 步 读 取 D X F 文 件 的 整 个 字 符 串第 二 步 根 据 不 同 名 称 的 段 分 离 属于 各 个 段 的 字 符 串第 三 步 根 据 组 码 值 提 取 草 图 特 征属 性第 四 步 将 草 图 特 征 属 性 信 息 加 载至 绘 图 系 统 并 将 其 绘 出 图 草图的 DXF读取流程设计 2020 届本科毕业设计说明书 11 5 基于 DXF 技术的草图绘制系统实现 5. 1 草图绘制功能的实现 草图绘制功能是绘图系统前台的重要组成部分,该功能的实现需要为每种类型的图形设计其独立的绘图算法,并选择适当的 GDI+所提供的绘图方法才能将各种不同类型的草图顺利绘出。 在绘制草图之前要首先设置系统的画笔( Pen)参数,包括画笔线条宽度、颜色、虚实等,其次对于闭合图形还可设置其填充方式和颜色。 针对不同类型草图的绘制方法系统的具体实现如下: 直线( Line)的绘制 直线的绘制需要在绘图区域捕获两个坐标点,第一个坐标点为直线的起始坐标点StartPoint,第二个坐标点为直线的终止坐标点 EndPoint,然后生成 所提供的 Graphics 对象 g,最后调用 (Pen, , , , )函数将其绘出。 Pen 为系统画笔参数, 和 分别为该点在画板上的 X 轴坐标分量和 Y 轴坐标分量 ,以下各图形介绍均以此为例。 绘制直线的流程图如下: 开 始鼠 标 左 键 点 击 绘 图 区 域 , 获 取 其 坐 标 为直 线 起 始 点 S t a r t p o i n t鼠 标 左 键 按 下 并 停 留 于 原 坐 标 点 或 移 动 , 获 取其 坐 标 为 直 线 终 止 点 E n d P o i n t生 成 G r a p h i c s 对 象 g调 用 g . D r a w L i n e ( P e n , S t a r t P o i n t . X , S t a r t P o i n t . Y , E n d P o i n t . X , E n d P o i n t . Y ) 函 数 将 直 线 绘 出结 束是鼠 标 左 键 是 否 始 终 按 下否 图 绘制直线的流程图 2020 届本科毕业设计说明书 12 贝塞尔曲线( BezierCurve)的绘制 贝塞尔曲线 就是这样的一条曲线,它是依据四个位置任意的点坐标绘制出的一条光滑曲线。 在历史上,研究 贝塞尔 曲线的人最初是按照已知曲线 参数方程 来确定四个点的思路设计出这种矢量曲线绘制法。 贝塞尔 曲线的有趣之处更在于它的 “ 皮筋效应 ” , 也就是说,随着点有规律地移动,曲线将产生皮筋伸引一样的变换,带来视觉上的冲击。 1962年,法国数学家 Pierre B233。 zier第一个研究了这种 矢量 绘制曲线的方法,并给出了详细的计算公式。 贝塞尔曲线 的重要作用在于: 由于用计算机画图大部分时间是操作鼠标来掌握线条的路径,与手绘的感觉和效果有很大的差别。 即使是一位精明的画师能轻松绘出各种图形,拿到鼠标想随心所欲的画图也不是一件容易的事。 这一点是计算机万万不能代替手工的工作,所以到目前为止人们只能颇感无奈。 使用贝塞尔工具画图很大程度上弥补了这一缺憾。 贝塞尔曲线的绘制需要在绘图区域捕获四个坐标点,第一个坐标点为贝塞尔曲线的起始坐标点 StartPoint,第二个坐标点为贝塞尔曲线的终止坐标点 EndPoint,然后生成 所提供的 Graphics 对象 g 并调用 (Pen, , , , )函数绘出贝塞尔曲线的主体直线,第三个坐标点为贝塞尔曲线的其中一个控制坐标点 ControlPoint1,还需调用 (Pen,StartPoint,ControlPoint1,ControlPoint1,EndPoint)绘制单控制点贝塞尔曲线,第四个坐标点为贝塞尔曲线的另一个控制坐标点 ControlPoint2,此时调用 (Pen,StartPoint,ControlPoint1,ControlPoint2,EndPoint)完整的贝塞尔曲线即绘制完毕。 绘制贝塞尔曲线的效果图如下: 图 绘制贝塞尔曲线的效果图 绘制贝塞尔曲线的流程图如下: 2020 届本科毕业设计说明书 13 开 始鼠 标 左 键 点 击 绘 图 区 域 , 获 取 其 坐标 为 贝 塞 尔 曲 线 起 始 点 S t a r t p o i n t鼠 标 左 键 按 下 并 停 留 于 原 坐 标 点 或 移 动 ,获 取 其 坐 标 为 贝 塞 尔 曲 线 终 止 点 E n d P o i n t生 成 G r a p h i c s 对 象 g调 用 g . D r a w L i n e ( P e n , S t a r t P o i n t . X , S t a r t P o i n t . Y , E n d P o i n t . X , E n d P o i n t . Y ) 函 数 将 贝 塞 尔 曲 线 主 体 直 线绘 出结 束是鼠 标 左 键 是 否 始 终 按 下否鼠 标 左 键 按 下 并 停 留 于 原 坐 标 点 或 移 动 , 获 取其 坐 标 为 贝 塞 尔 曲 线 一 个 控 制点 C o n t r o l P o i n t 1调 用 g . D r a w B e z i e r ( P e n , S t a r t P o i n t , C o n t r o l P o i n t 1 , C o n t r o l P o i n t 1 , E n d P o i n t ) 函 数 将 贝 塞 尔 曲 线 单 点 控 制 线 绘 出鼠 标 左 键 是 否 始 终 按 下是鼠 标 左 键 按 下 并 停 留 于 原 坐 标 点 或 移 动 , 获 取 其坐 标 为 贝 塞 尔 曲 线 另 外 一 个 控 制点 C o n t r o l P o i n t 2调 用 g . D r a w B e z i e r ( P e n , S t a r t P o i n t , C o n t r o l P o i n t 1 , C o n t r o l P o i n t 2 , E n d P o i n t ) 函 数 将 完 整 的 贝 塞 尔 曲 线 绘 出鼠 标 左 键 是 否 始 终 按 下是否否 图 绘制贝塞尔曲线的流程图 多段线 ( MultiLine) 的绘制 多段线就是由多条直线首尾相连而组成的一种多段折线。 在多段线的绘制过程中以鼠标左键点击绘图域开始绘制,以鼠标右键点击 绘图域结束绘制,其间所捕获的所有坐标点即为其特征点。 多段线的绘制需要在绘图区域捕获至少两个坐标点,第一个坐标点为多段线的起始坐标点 StartPoint,最后一个坐标点为多段线的终止坐标点 EndPoint,在此两点间获取的。电子设计精品]基于dxf技术的草图绘制软件设计与实现(定稿
本资源仅提供20页预览,下载后可查看全文
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。
相关推荐
电子银行业务流程及风险点
插入打印。 “电子银行客户注销”交易完成。 (交易码: 960105) 功能描述 客户持本人实名证件和本币活期折/本币卡/外币折/信用卡,到邮政储蓄银行柜面进行实现指定转账、指定汇款功能的交易。 普通柜员操作, 由 综合柜员授权。 操作步骤 ( 1)柜员输入客户姓名、(中 /英文)拼音、证件类型、证件号码、卡折类别、账 /卡号、存折印刷号(卡折类别为本币活期折 /外币折),客户输入账户密码。 (
电子警察led补光灯设计方案二
.................................................................... 50 四、技术参数 :................................................................................................................ 51
电子测量技术课程设计
来观察被测管的各种极限特性。 28. 极性按键:极性的选择取决于被测管的特性。 29. 测试台:其结构如图 A24 所示。 图 A24 XJ4810 型半导体管特性图示仪测试台 30. 测试选择按键: ⑴ “左”、“右”、“二簇”:可以在测试时任选左右两个被测管的特性,当置于“二簇”时,即通 过电子开关自动地交替显示左右二簇特性曲线,此时“级 /簇”应置适当位置,以利于观察。 二簇特性曲线比较时