收藏 分享(赏)

软件二次开发浅谈.ppt

上传人:weiwoduzun 文档编号:4195694 上传时间:2018-12-15 格式:PPT 页数:48 大小:5.18MB
下载 相关 举报
软件二次开发浅谈.ppt_第1页
第1页 / 共48页
软件二次开发浅谈.ppt_第2页
第2页 / 共48页
软件二次开发浅谈.ppt_第3页
第3页 / 共48页
软件二次开发浅谈.ppt_第4页
第4页 / 共48页
软件二次开发浅谈.ppt_第5页
第5页 / 共48页
点击查看更多>>
资源描述

1、2018/12/15,CAD软件的二次开发浅谈,主讲:庞兴华,淯阳大讲堂,主要内容,软件概述 应用软件的二次开发 应用软件的二次开发过程 应用软件二次开发实例,软件概述,计算机时代 计算机无处不在 计算机无孔不入 计算机无所不能 以人为本 人机交互软件 计算机的灵魂,1946年2月14日,世界上第一台计算机在美国宾夕法尼亚大学诞生,开创了计算机时代进入CAX时代,软件概述,软件定义 与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。 其它定义 运行时,能够提供所要求功能和性能的指令或计算机程序集合。 程序能够满意地处理信息的数据结构。 描述程序功能需求以及程序如何操作

2、和使用所要求的文档。 以开发语言作为描述语言,可以认为: 软件=程序+数据+文档,软件概述,软件的特点 软件不同于硬件,它是计算机系统中的逻辑实体而不是物理实体,具有抽象性。 软件的生产不同与硬件,它没有明显的制作过程,一旦开发成功,可以大量拷贝。 软件在运行过程中不会因为使用时间过长而出现磨损、老化以及用坏问题。 软件的开发、运行在很大程度上依赖于计算机系统,受计算机系统的限制,在客观上出现了软件移植问题。 软件开发复杂性高,开发周期长,成本较大。 软件开发还涉及诸多的社会因素(版权、责任、运行方式、管理制度、人员素质、操作方式等 )。,软件概述,软件分类(依照其作用) 系统软件 应用软件

3、数据库 中间件(介于系统和应用),软件概述,系统软件 可分为操作系统和支撑系统软件 操作系统是一管理计算机硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让使用者与系统交互的操作接口。 支撑软件是支撑各种软件的开发与维护的软件,又称为软件开发环境(SDE)。它主要包括环境数据库、各种接口软件和工具组。著名的软件开发环境有IBM公司的Web Sphere,微软公司的等。 支撑软件包括一系列基本的工具(比如编译器、数据库管理、存储器格式化、文件系统管理、用户身份

4、验证、驱动管理、网络连接等方面的工具)。,软件概述,软件分类: 应用软件 应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,如Office。也可以是一个由众多独立程序组成的庞大的软件系统,如数据库管理系统、CAD系统等。 不同的应用软件根据用户和所服务的领域提供不同的功能。,软件概述,软件分类(依据许可方式的不同) 专属软件:此类授权通常不允许用户随意的复制、研究、修改或散布该软件。违反此类授权通常会有严重的法律责任。传统的商业软件公司会采用此类授权,例如微软的Windows和办公软件。专属软件的源码通常被

5、公司视为私有财产而予以严密的保护。 自由软件:此类授权正好与专属软件相反,赋予用户复制、研究、修改和散布该软件的权利,并提供源码供用户自由使用,仅给予些许的其它限制。以 Linux、Firefox 和OpenOffice 可做为此类软件的代表。 共享软件:通常可免费的取得并使用其试用版,但在功能或使用期间上受到限制。开发者会鼓励用户付费以取得功能完整的商业版本。根据共享软件作者的授权,用户可以从各种渠道免费得到它的拷贝,也可以自由传播它。 免费软件:可免费取得和转载,但并不提供源码,也无法修改。 公共软件:原作者已放弃权利,著作权过期,或作者已经不可考究的软件。使用上无任何限制。,CAX软件,

6、应用软件的二次开发,应用软件的分类(CAX) CAD(Computer Aided Design)指利用计算机及其图形设备帮助设计人员进行设计工作。 CAM(computer Aided Manufacturing,计算机辅助制造)的核心是计算机数值控制 CAE(Computer Aided Engineering),指用计算机辅助求解分析复杂工程和产品的结构力学性能,以及优化结构性能等。 CAI(Computer Aided Instruction)是在计算机辅助下进行的各种教学活动。 CAPP(Computer Aided Process Planning)是指借助于计算机软硬件技术和支撑

7、环境,利用计算机进行数值计算、逻辑判断和推理等的功能来制定零件机械加工工艺过程。,应用软件的二次开发,应用软件的分类(CAX) CAD软件:AutoCAD、SolidWorks CAM软件: CAE软件: CAI软件: 综合软件:,(产品生命周期管理软件),法国达索公司,拥有六大品牌软件:1SolidWorks、2CATIA、3SIMULIA、4DELMIA、5ENOVIA、63DVIASolidWorks,(美国参数技术公司),软件的二次开发,软件危机 庞大的软件设计团队(人、物) 设计难(升级难,供不应求) 保护难(复制快,危机四伏) 软件开发是根据用户要求建造出软件系统或者系统中的软件部

8、分的过程。是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程。 软件的二次开发对已有的软件产品的功能进行扩充或根据特殊需要组合扩展功能等。在已有软件的基础上,根据不同的客户的需要,一些其它的中小公司为客户根据需求在该平台上进行第二次有针对性的开发。 软件开发分类 应用软件开发:为解决实际应用问题而进行的一些软件开发工作属于应用软件开发。 系统软件开发:为维护、控制和管理计算机和外部设备,为计算机提供用户界面等软件而进行的软件开发。,应用软件开发,软件的二次开发,前进,应用软件二次开发的必要性 专业设计对软件的要求(设计为主题) 通用性与专用性 软件设计底层难做 上市软件各领风骚 软件功能

9、与设计需求的交集 它山之石为我所用 二次开发事半功倍,软件功能,设计需求,设计软件,图形处理举例,剖面线算法:,直线算法:,直线与直线的交线,直线上点(像素)的坐标,返回,1交点 2交点 3交点 多交点,难,应用软件的二次开发,应用软件二次开发的可能性 软件的开放性是软件性能的重要指标 专业知识是二次开发的原动力 专业知识与计算机语言有机结合前景广阔 一般支持软件二次开发的原软件系统都提供相应的SDK(Software develop kit)。二次开发人员可以根据SDK中提供的公开的API(应用程序接口)来访问软件原有的一些基本功能,并要据这些基本功能组合,扩展进而形成更加专业或新的功能以完

10、成用户特殊的需求。,软件的二次开发,应用软件二次开发实现的途径 专业知识的学习与积累 计算机语言与开发环境 用户需求放在首位 在实践中学、在实践中干,知识准备,实际应用,应用软件的二次开发过程 AutoCAD开发,AutoCAD软件的产生与发展AutoCAD是美国AutoDesk公司推出的交互式图形软件包,自1982年1.0版问世以来,形成2.0、11.0、12.0、13.0、14.0、15.0、2000等版。其中,2.6版以前,主要处理22.5维图形;9.0版之后,三维绘图功能逐渐加强。 AutoCAD软件的地位AutoCAD是PC机绘图软件的主流产品 在各行各业广为应用; 在世界各地流行最

11、为广泛,返回,AutoCAD概述,AutoCAD特点 (1)图形功能强大;一般图形元素、编辑操作功能 (2)应用范围广泛;机、电、建筑、科学计算的图样等 (3)多种开发手段; 主要有四种(AutoLisp/VisualLisp,VBA, Ads、ObjectARX) (4)可运行的设备多;工作站、微机 (5)易于操作。 AutoCAD软件新增特点:(AutoCAD2000绘图简介) (1)多文档环境更加Windows化 (2)3D实时旋转 (3)快捷菜单 (4)开发功能强大(AutoLISP、VBA、ObjectARX等开发语言),开放的体系结构 允许用户和开发者采用高级编程语言对其进行扩充和

12、修改,即二次开发; 通过二次开发能最大限度地满足用户的特殊要求; 其二次开发语言及工具也在不断地涌现,荣登全球绘图软件的龙头宝座,几种开发工具比较,ObjectARX独领风骚,ADS,OBJECTARX,AutoLisp,VBA,VC.net,ObjectARX开发 为面向对象的AutoCAD运行时扩展,在vc+环境下开发,是在ADS基础上发展起来的,它包含一组动态连接库,可直接访问AutoCAD核心数据结构、图形系统、CAD几何造型,在运行时可扩展新命令。在编译时,它不生成EXE文件,而是生成DLL(动态连接库)文件(Arx)。,AutoCAD开发意义,专业设计的主要特点 (1)计算 (2)

13、绘图 (3)数据处理 (4)大量重复工作(条件改变、算法不变) 软件绘图的局限性 通用绘图软件,常规图形处理十分成熟,但不能包罗万象; (齿轮齿廓曲线渐开线等) 专业计算功能较差,难以满足专业设计需要 开发图形功能、扩大应用范围 (1)图形程序编制的困难性软件危机 (2)将图形功能溶于计算程序中,实现设计计算机绘图的自动化,收到事半功倍的效果;,返回,AutoCAD开发环境,1、硬件环境 (1)P II以上处理器 (2)64MB(至少32MB)RAM (3)130MB以上硬盘空间+64MB交换空间 (4)Windows95、Windows98以上操作系统,返回,2、软件环境 (1)AutoCA

14、D绘图软件 (2)VC+6.0 (3)ObjectARX SDK开发工具,3、开发环境 (1)安装Object ARX SDK (2)配置VC+6.0 Include及Lib将ObjectARX 2000inc 和 ObjectARX 2000lib与VC联接,AutoCAD开发过程,1、设计用户菜单 (1)VC+环境下修改菜单My.mnu (2)AutoCAD环境下装入用户菜单,返回,MENU命令,AutoCAD开发过程,2、VC下建立工程,编制开发程序,形成*.ARX文件,返回,AutoCAD开发过程,3、在AutoCAD环境下装入My.ARX文件;,返回,4、运行开发程序(开发实例),开

15、发程序实例1减速器设计CAD,1、装入程序 2、点中菜单 3、输入设计参数 4、显示计算结果 5、自动绘制图样,返回,编程编译连接,返回,装载应用程序,返回,点中菜单,返回,输入设计参数,返回,显示计算结果,返回,运行结果(平面图),运行结果(三维图),应用程序运行环境,齿轮生产现状设计任务量大(小批量多品种)设计难度大(针对性专业性)设计方法落后(依赖于手工)CAD效果 提高速度 提高质量 提高档次 填补空白,开发实例2齿轮刀具设计CAD,用户订单,齿轮数据,刀具设计,刀具加工,齿轮加工,交货,刀 具 设 计,齿轮生产,参数化设计 计算绘图集成,刀具加工,刀具设计,程序设计,专用数据库,返回,专用数据库,返回,专用菜单,返回,软件主界面,齿轮刀具设计系统,返回,输入数据(1),被加工齿轮原始参数,返回,从数据库读入齿轮数据,输入数据(2),返回,自动绘制齿轮滚刀工作图,返回,应用软件演示,设计轻轻松松 效率大大提高,绘图命令集成 计算和绘图集成 设计过程集成,设计集成,几点启示,二次开发适应面广 二次开发事半功倍 二次开发并非高不可攀,条件 专业基础 专业软件知识 编程语言 专业问题的抽象,天下无难事,只要肯登攀,The End,谢谢大家!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > 软件工程

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报