MFC绘图工具

项目总价 10000元
预估日薪 500/天
合作方式: 项目制
预估工时: 20天
发布位置: 上海
参与范围: 全国远程
Xiso
Xiso
职位ID: 109583复制

发布方信用行为

发布项目
3
订单总数
0
退款单数

需求描述

一、需求描述
本项目是一个图形编辑类的工具一部分界面及其功能的外包。
必须使用MFC(visual studio 2013)来完成。
如果使用到了集合,必须是用std标准库,比如std::vector,std::map等等。除非无法满足技术条件,可以协商。
所有控件使用默认风格,不使用图标。比如新建线段的按钮,直接用文字表达。
本项目要求分阶段交付源代码来减少风险。比如当完成了下述功能1后,可以交付这部分源代码供客户体验。完成了功能3后,立马交付这部分源代码供客户体验。
本项目主要涉及对于7个图形,包括:线段(Line)、圆弧(Arc)、圆(Circyle)、椭圆(Ellipse)、多边形(Polygon)、多段线(Polyline)、曲线(Spline)的操作及其界面,其功能如下:
1.能对某个文件进行读取和解析,解析出其中包含的上述7个图形的数据。
这个解析,及其这些图形的结构定义都是用开源的第三方C++库(dxflib)来完成。直接调用dxflib的API即可完成。dxflib有调用得Example源代码。可以参考如下资料链接:
http://www.1pluscad.com/197.html
2.能在一个画布上使用GDI+的API,对已经解析出来的上述7种类型的图形数据进行绘制。并且能设置绘制的线宽(Thickness)和颜色。线宽使用GDI+ API中Pen得Width来实现。
颜色话使用预设几个颜色的按钮去设置。厚度的话使用拉杆条和数字输入控件让用户精确控制(线宽精度要求为最小0.1或0.5,根据实际绘制出来的效果而定)。
当用户设置完后,直接按照新设置的线宽和颜色,重新绘制画布中所有图形元素。
3.要求在绘制的画布上能用鼠标左键点选、框选上述已经绘制的图形。并且在右侧显示一个窗口。
该窗口平时隐藏,当点选、框选中后显示其信息。
比如当选中某条线段后,显示其开始点,结束点、类型是线段。
同时要将选中的图形做标记,比如选中某线段,则对这条线段进行高亮(颜色为白色),该线段的起始点和结束点,要起始点和结束点中心坐标,绘制了两个小的正方形。
又比如曲线,则对这条曲线进行高亮(颜色为白色),要以该曲线的多个转折点为中心坐标,绘制了对应数量的小正方形。
4.要求点选图形新建按钮后,能通过鼠标操作来新建图形。比如点击了新建线段的按钮:则当用户鼠标左键点击AB两点后,以A为起始点、B为结束点、新建一个线段图形,并且显示在画布上。
又比如点击了新建曲线的按钮:则当用户鼠标左键点击ABC三点后,以ABC三点形成一个曲线。线段、曲线等都使用1所述中的开源的第三方C++库的结构。
因为有7种图形类型,所以有对应的7个图形新建按钮。
5.要求必须将解析自文件的上述7个图形的信息,比如线段的起始点、结束点。比如圆的圆心点、半径等信息,按照一定格式(会提供协议)输出到一个csv文件。
6.要求能对已选中的图形做镜像操作,比如上下镜像,左右镜像。当选中某个图形后点击“镜像”按钮就可以对选中的图形做镜像操作,并且在画布上显示镜像后的结果。
该镜像必须是真实的改变其数据,而不是使用渲染变换仅作用在显示上的。
7. 要求能将编辑后的图形,重新另存为一个dxf文件。直接调用dxflib的API即可完成。
8.要求能对已选中的图形做删除操作。删除后,该图形就从画布上消失。
9.能通过鼠标滚轮对画布进行实时缩放,放大缩小后要求已绘制的图形同步缩放,并且不能产生变形。当画布放大后,要允许用户按住鼠标左键拖拽画布、使用横竖滚动条两种方式来调整可以看见的区域。
但是画布这个控件在整个exe的大小不能变化。
10.在画布右下角显示鼠标在画布上的实时坐标,比如 x=100,y=102这样的标签来显示。
11.要求能对两个进行测量,比如按下“测量按钮”,能对选中的两个点进行长度计算,并且以文本的方式,显示在界面上。
12.要求在界面上显示一个BMP图,并且能将该BMP保存到某个目录,该图片是解析自包含图形信息的文件的。
13.要求能设置一个定时器,逐个绘制图形。比如按下“轨迹”按钮后,按照第一秒绘制线段1,第2秒绘制圆弧2,第n秒绘制图形n的流程,将所有已经解析出来的图形绘制出来。
14.要求能清空画布,比如按下“清空”按钮后,画布上已绘制的图形,全部清空,消失。

二、人才要求
MFC开发经验3-5年以上。
必须熟悉GDI+ 的API。
以前制作过图形编辑类工具优先。
上海地区及其周边优先。
必须要能满足分阶段交付源代码的要求。

三、参考做品
操作的流程,比如点选,选中。缩放,拖拽,新建等可以参考AutoCAD中绘图部分或QCAD软件。

四、合作方式
采用项目整包的合作方式。整个项目要求20天交货。
如果时间来不及,可以协商完成上述功能中的几个,另发项目来合作。
比如完成界面操作的实现。则协商另发项目来合作。

MFC绘图工具

合作方式 项目制
预估日薪 500
预估总价 10000元
预估工时 20天
发布位置 上海
可参与范围 全国远程
职位ID 109583复制
发布方 Xiso
Xiso
已有26人投递 ,发布人 点此登录 后查看。

需求描述

一、需求描述
本项目是一个图形编辑类的工具一部分界面及其功能的外包。
必须使用MFC(visual studio 2013)来完成。
如果使用到了集合,必须是用std标准库,比如std::vector,std::map等等。除非无法满足技术条件,可以协商。
所有控件使用默认风格,不使用图标。比如新建线段的按钮,直接用文字表达。
本项目要求分阶段交付源代码来减少风险。比如当完成了下述功能1后,可以交付这部分源代码供客户体验。完成了功能3后,立马交付这部分源代码供客户体验。
本项目主要涉及对于7个图形,包括:线段(Line)、圆弧(Arc)、圆(Circyle)、椭圆(Ellipse)、多边形(Polygon)、多段线(Polyline)、曲线(Spline)的操作及其界面,其功能如下:
1.能对某个文件进行读取和解析,解析出其中包含的上述7个图形的数据。
这个解析,及其这些图形的结构定义都是用开源的第三方C++库(dxflib)来完成。直接调用dxflib的API即可完成。dxflib有调用得Example源代码。可以参考如下资料链接:
http://www.1pluscad.com/197.html
2.能在一个画布上使用GDI+的API,对已经解析出来的上述7种类型的图形数据进行绘制。并且能设置绘制的线宽(Thickness)和颜色。线宽使用GDI+ API中Pen得Width来实现。
颜色话使用预设几个颜色的按钮去设置。厚度的话使用拉杆条和数字输入控件让用户精确控制(线宽精度要求为最小0.1或0.5,根据实际绘制出来的效果而定)。
当用户设置完后,直接按照新设置的线宽和颜色,重新绘制画布中所有图形元素。
3.要求在绘制的画布上能用鼠标左键点选、框选上述已经绘制的图形。并且在右侧显示一个窗口。
该窗口平时隐藏,当点选、框选中后显示其信息。
比如当选中某条线段后,显示其开始点,结束点、类型是线段。
同时要将选中的图形做标记,比如选中某线段,则对这条线段进行高亮(颜色为白色),该线段的起始点和结束点,要起始点和结束点中心坐标,绘制了两个小的正方形。
又比如曲线,则对这条曲线进行高亮(颜色为白色),要以该曲线的多个转折点为中心坐标,绘制了对应数量的小正方形。
4.要求点选图形新建按钮后,能通过鼠标操作来新建图形。比如点击了新建线段的按钮:则当用户鼠标左键点击AB两点后,以A为起始点、B为结束点、新建一个线段图形,并且显示在画布上。
又比如点击了新建曲线的按钮:则当用户鼠标左键点击ABC三点后,以ABC三点形成一个曲线。线段、曲线等都使用1所述中的开源的第三方C++库的结构。
因为有7种图形类型,所以有对应的7个图形新建按钮。
5.要求必须将解析自文件的上述7个图形的信息,比如线段的起始点、结束点。比如圆的圆心点、半径等信息,按照一定格式(会提供协议)输出到一个csv文件。
6.要求能对已选中的图形做镜像操作,比如上下镜像,左右镜像。当选中某个图形后点击“镜像”按钮就可以对选中的图形做镜像操作,并且在画布上显示镜像后的结果。
该镜像必须是真实的改变其数据,而不是使用渲染变换仅作用在显示上的。
7. 要求能将编辑后的图形,重新另存为一个dxf文件。直接调用dxflib的API即可完成。
8.要求能对已选中的图形做删除操作。删除后,该图形就从画布上消失。
9.能通过鼠标滚轮对画布进行实时缩放,放大缩小后要求已绘制的图形同步缩放,并且不能产生变形。当画布放大后,要允许用户按住鼠标左键拖拽画布、使用横竖滚动条两种方式来调整可以看见的区域。
但是画布这个控件在整个exe的大小不能变化。
10.在画布右下角显示鼠标在画布上的实时坐标,比如 x=100,y=102这样的标签来显示。
11.要求能对两个进行测量,比如按下“测量按钮”,能对选中的两个点进行长度计算,并且以文本的方式,显示在界面上。
12.要求在界面上显示一个BMP图,并且能将该BMP保存到某个目录,该图片是解析自包含图形信息的文件的。
13.要求能设置一个定时器,逐个绘制图形。比如按下“轨迹”按钮后,按照第一秒绘制线段1,第2秒绘制圆弧2,第n秒绘制图形n的流程,将所有已经解析出来的图形绘制出来。
14.要求能清空画布,比如按下“清空”按钮后,画布上已绘制的图形,全部清空,消失。

二、人才要求
MFC开发经验3-5年以上。
必须熟悉GDI+ 的API。
以前制作过图形编辑类工具优先。
上海地区及其周边优先。
必须要能满足分阶段交付源代码的要求。

三、参考做品
操作的流程,比如点选,选中。缩放,拖拽,新建等可以参考AutoCAD中绘图部分或QCAD软件。

四、合作方式
采用项目整包的合作方式。整个项目要求20天交货。
如果时间来不及,可以协商完成上述功能中的几个,另发项目来合作。
比如完成界面操作的实现。则协商另发项目来合作。

发布方信用行为

发布项目 4
订单总数 3
退款单数 0

完善简历

工程师完善技术能力和项目经验,更易接到订单

完善人才简历

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在 1 小时内与您联系确认。
已有 26 人投递
登录后查看投递状态