版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
延边大学计算机系本科毕业设计――AutoCAD的二次开发PAGEPAGE16
延边大学本科毕业论文
用VLISP与DCL整合实现绘制抛物线
摘要
本次毕业设计任务是学习AutoCAD的开发工具VisualLisp与对话框DCL语言整合的具体过程,并通过学习开发简单的实例。VisualLisp是为加速AutoLisp程序开发而设计的软件开发工具,为AutoCAD提供了一个完整的集成开发环境。对话框DCL语言所建立的对话框形象、直观,可随意输入、修改,鼠标、键盘并用,是一种深受用户欢迎的界面。本文对AutoCAD的二次开发工具和对话框DCL语言进行了简单的介绍,对VisualLisp与对话框DCL语言整合过程进行了详细的介绍,并利用VisualLisp与对话框DCL语言整合实现制作抛物线的全过程,对具体的步骤进行了详尽的分析,提出了基本的设计思路,最后给出了利用抛物线的几个生活实例。关键词: VisualLisp对话框二次开发抛物线ABSTRACTThisgraduationdesignsthemissionistheconcreteprocessthatthedevelopmenttoolVisualLispthatstudiestheAutoCADintegrateswiththedialogboxDCLlanguage,andpasstheinbriefsolidexampleofthestudydevelopment.TheVisualLispisinordertoacceleratetheAutoLispproceduredevelopmentbutsoftwareofdesignsdevelopmenttool,providedfortheAutoCADagathercompletelydeveloptheenvironment.ThedialogboximagethatthedialogboxDCLlanguagebuildup,keeptheview,caninput,modifyatwill,themouse,keyboardcounteract,isakindofinterfaceforwelcome.ThistextdevelopsthetoolanddialogboxDCLlanguagestocarryonthesimpleintroductiontotheAutoCADtwotimes,integratedtheprocesstocarryonthedetailedintroductiontotheVisualLispanddialogboxDCLlanguage,andmakeuseofthewholeprocessthattheVisualLispintegrateswiththedialogboxDCLlanguagetherealizationmanufactureparabola,carryingonthedetailedanalysistotheconcretestep,puttingforwardthebasicdesignwayofthinking,theendgivemakeuseofthelivingsolidexampleofseveralsoftheparabola.KEYWORDS: VisualLispDialogboxsecondDevelopparabola
目录前言………………3AutoCAD二次开发工具及对话框综述……………3三、VisualLISP设计及具体开发抛物线程序问题提出…………7预期目标…………7需求分析…………7总体设计…………7详细设计…………86.程序流程图………………………107.程序源代码………………………118.应用实例图………………………14四、总结………………15五、参考文献……………16
一、前言随着计算机辅助技术的急速发展,美国AutoDesk公司的AutoCAD已成为设计人员手中的一件利器。随着AutoCAD应用的深入,越来越多的用户发现仅仅利用AutoCAD提供的交互功能已不能满足设计要求,在解决专业性的问题时,这一点显得尤为突出。这就需要一种智能化的软件,能够通过编程方式来大量成批地去解决一些问题。AutoCAD的开发性和丰富的开发工具为我们解决新局面这个问题提供了有效的手段。VLISP和DCL正是解决这一问题的两大法宝。利用VLISP编程,可以强化AutoCAD原有的命令,创造更有用的AutoCAD新命令。DCL简化繁琐的环境设定或绘图步骤,进行参数式绘图,从而达到真正灵活控制AutoCAD的目的。二、AutoCAD二次开发工具及对话框综述1.AutoCAD二次开发工具综述AutoCAD是目前微机上应用最为广泛的通用交互式计算机辅助绘图与设计软件包。AutoCAD的强大生命力在于它的通用性、多种工业标准和开放的体系结构。其通用性使得它在机械、电子、航空、船舶、建筑、服装等领域得到了极为广泛的应用。下面对AutoCAD的三代开发工具进行浅析。
第一代开发工具——AutoLISP是1986年随AutoCADv2.18提供的二次开发工具。它是一种人工智能语言,是嵌入AutoCAD内部的COMMONLISP的一个子集。在AutoCAD的二次开发工具中,它是唯一的一种解释型语言。使用AutoLISP可直接调用几乎所有的AutoCAD命令。
AutoLISP语言最典型的应用之一是实现参数化绘图程序设计,包括尺寸驱动程序和鼠标拖动程序等。另一个典型应用就是驱动AutoCAD提供PDB模块构成DCL(DialogControlLanguage)文件,创建自己的对话框。
AutoLISP具有以下优点:语言规则十分简单,易学易用;接针对AutoCAD,易于交互;解释执行,立竿见影。AutoLISP的缺点是:功能单一,综合处理能力差;解释执行,程序运行速度慢;缺乏很好的保护机制,源程序保密性差;LISP用表来描述一切,并不能很好地反映现实世界和过程,跟人的思维方式也不一致;不能直接访问硬件设备、进行二进制文件的读写。AutoLISP的这些特点,使其仅适合于有能力的终端用户完成一些自己的开发任务。第二代开发工具——ADS(AutoCADDevelopmentSystem)是AutoCADR11开始支持的一种基于C语言的灵活的开发环境。ADS可直接利用用户熟悉的C编译器,将应用程序编译成可执行文件后在AutoCAD环境下运行,从而既利用了AutoCAD环境的强大功能,又利用了C语言的结构化编程、运行效率高的优势。
与AutoLISP相比,ADS优越之处在于:具备错综复杂的大规模处理能力;编译成机器代码后执行速度快;编译时可以检查出程序设计语言的逻辑错误;程序源代码的可读性好于AutoLISP。而其不便之处在于:C语言比LISP语言难于掌握和熟练应用;ADS程序的隐藏错误往往导致AutoCAD,乃至操作系统的崩溃;需要编译才能运行,不易见到代码的效果;同样功能,ADS程序源代码比AutoLISP代码长很多。第三代开发工具—VisualLISP,ARX及基于ActiveXAutomation技术的VBA等
1.VisualLISP(VLISP)
VLISP是AutoLISP的换代产品。它与AutoLISP完全兼容,并提供它所有的功能,是新一代的AutoCADLISP语言。VLISP对语言进行了扩展,可以通过MicrosoftActiveXAutomation接口与对象交互。同时,通过实现反应器函数,还扩展了AutoLISP响应事件的能力。作为开发工具,VLISP提供了一个完整的集成开发环境(IDE),包括编译器、调试器和其他工具,可以提高二次开发的效率。另外,VLISP还提供了工具用于发布独立的应用程序。
2.ARX
ARX(AutoCADRuntimeeXtension)是AutoCADR13之后推出的一个以C++语言为基础的面向对象的开发环境和应用程序接口。ARX程序本质上为Windows动态链接库(DLL)程序,与AutoCAD共享地址空间,直接调用AutoCAD的核心函数,可直接访问AutoCAD数据库的核心数据结构和代码,以便能够在运行期间扩展AutoCAD固有的类及其功能,创建能够全面享受AutoCAD固有命令特权的新命令。ARX程序与AutoCAD、Windows之间均采用Windows消息传递机制直接通讯。
3.基于ActiveXAutomation技术的VBA等开发工具
ActiveXAutomation技术的完全面向对象化编程的特点,使其开发环境具备了强大的开发能力和简单易用的优良特点,开发工具的选择也具有很大的灵活性。所以,利用ActiveXAutomation技术,是极具潜力的一种开发手段。4.Visual
LISP
特色显著由于AutoLisp存在自身无法解决的问题,为了适应AutoCAD环境下的较大型用户化CAD应用系统的开发,Autodesk公司从AutoCADR11开始,推出采用C语言的开发环境ADS(AdvanceDevelopmentSystem),借助C/C++语言的性能和资源,完成许多AutoLISP语言难以实现的任务。随着Windows平台,面向对象编程技术等先进技术的日益成熟和普及,AutoCAD也和其他系统一样迫切需要一种全新的面向对象编程的开发环境。在AutoCADR13之后,又推出了新一代的直接面向对象的二次开发工具ARX(AutoCADRuntimeExtension)以及更新的AutoCADR14ObjectARXSDK开发工具包。为开发高自动化程度,高集成化及高性能的用户化CAD系统提供了一种极为有效的工具。是AutoCAD目前用户化的主流开发工具。Visual
LISP与AutoCAD
Visual
LISP作为一个完整的集成开发环境(IDE),具有自己的窗口和菜单,但它并不能独立于AutoCAD运行。当用户从Visual
LISP
IDE中运行AutoLISP程序时,经常需要与AutoCAD图形交互或在命令窗口响应程序提示。如果Visual
LISP
把控制传给AutoCAD时AutoCAD已被最小化,用户必须手动恢复并激活AutoCAD才可继续,Visual
LISP不会自动恢复AutoCAD
窗口。相反,Visual
LISP窗口中会出现并保持一个
Visual
LISP符号,直到激活AutoCAD并响应了在AutoCAD命令提示处的提示。启动Visual
LISP可在AutoCAD下边的命令栏中输入VLISP,也可在工具中启动,如图:启动Vlisp后的界面如下图所示:各组成部分的说明如下:
(1)
菜单栏:通过选取各菜单项来发出Visual
LISP命令。
(2)
工具栏:提供了对常用Visual
LISP命令的快速调用。Visual
LISP共提供了五个工具栏:“Standard(标准)”、“Search(搜索)”、“View(视图)”、“Debug(调试)”和“Tools(工具)”,如图36-2所示,每个工具栏各自代表不同功能的命令组。
(3)
编辑窗口:用于编辑LISP文件代码。如果用户同时编辑多个文件,则Visual
LISP使用多个编辑窗口来分别显示文件。
(4)
控制台窗口:类似于AutoCAD的命令窗口,可在其中输入AutoLISP命令,也可以不使用菜单或工具栏而直接在控制台窗口中调用Visual
LISP命令。
(5)
跟踪窗口:在启动Visual
LISP,该窗口将显示Visual
LISP当前版本的信息。而如果Visual
LISP在启动时遇到错误,它还会包含相应的错误信息。
(6)
状态栏:显示提示信息。比如,当菜单上的某一个菜单项被亮显,则状态栏上将显示相关命令功能的简介;当鼠标指针在工具栏某按钮上停留几秒钟后,Visual
LISP将显示工具提示说明按钮功能,并同时在状态栏上显示更详细的描述;当Visual
LISP在编辑窗口中打开文件时,状态栏上将显示文件名名称及其路径。
(7)
其他窗口:有些Visual
LISP函数将创建它们自己的窗口来显示结果。用户不能在这些输出窗口中输入文本,但可以从中复制,并将其粘贴到编辑器或控制台窗口中。2.对话框综述AutoCAD随着版本的逐步提高,人机交互界面也越来越先进,在各类对话框中输入参数的交互方式已逐步替代从命令提示行中输入参数的基本方式,因此对AutoCAD进行二次开发,设计定制自己的对话框是必不可少的工作。对话框使用的界面的设计分为两个部分:外观与功能。外观定义对话框有哪些组件,以及这些组件如何布局。功能则定义每个组件的内容、动作、要返回哪个数据、对其他组件有何影响。对话框由对话框控制语言DCL编写并定义在ASCII文件中。对话框中的元素,如按钮、列表、文本、图像、滑动杆和编辑框等都被认为是控件。每个控件的大小和功能都由控件的属性决定。对话框的大小和它各个组成部分的布局通过少量的定位信息自动设置完成。对话框本身并不能完成它所设计的功能,功能的实现要通过AutoLISP等程序语言来控制。VisualLISP中提供了观察对话框的工具,并且还提供了在应用程序中控制对话框的参数。要实现对话框的预定义功能,主要分为两个步骤:首先要编制一个DCL对话框定义文件该文件是由一个或几个“对话框描述”构成的ASCII文件,扩展名为.dcl,对话框描述定义了该对话框的工作方式和其中包含的成分(如各类按钮、正文编辑框、列表、滑动杆、属性等),并按层次结构加以描述:然后要编写一个相应的AutoLISP应用程序来控制DCL文件预定义功能,从某种程度上,DCL文件只定义了对话框的工作方式,说明可以拾取哪些按钮、显示什么文件、列表等,但对话框的功用及其行为方式还将取决于调用它的应用程序,而AutoLISP提供了各类管理对话框的函数,包括加载、显示和终止对话框,接受用户响应,初始化动作表达式,存取控件及属性,建立列表和生成图像等。对话框设计的一般原则特色:1.美观2.便于操作3.语言文字说明准确、便于理解4.控件设计风格一致性5.操作控制顺序随意6.实时反馈及时7.对待操作人员宽容8.提供帮助9.测试通用规范:1.布局合理2.对话框的大小和位置3.控件的禁止使用4.嵌套对话框5.隐藏对话框6.默认值7.键盘输入8.颜色9.标准化
三、VisualLISP与对话框设计及具体开发抛物线程序1.问题的提出传统手工制图以纸、笔、三角板、直尺、圆规等作为辅助工具,用图形和尺寸的形式进行表达说明,这种表达方式大大超越了传统的文字叙述方法。近几年,随着信息工业的高速发展,计算机软、硬件迅速更新,操作界面逐渐个性化,促使计算机融入人们的日常生活之中。以纸、笔、尺等为工具的绘图工作,也逐步被计算机所代替,从而形成了计算机辅助绘图(ComputerAidedDesign)的技术领域。因此计算机辅助绘图不仅应具有计算机操作系统(如Windows98、WindowsNT、Windows2000)本身的功能(如复制与删除文件、中文输入等),而且,应具备传统的制图规范准则。运用计算机强大的计算和存储功能并具有绘图功能的软件,称为计算机辅助绘图软件。计算机辅助绘图软件有很多,笔者在学习AutoCAD2002绘制建筑、物理、机械所用图时,经常遇到绘制类似抛物线这类曲线的图形问题。抛物线必须显示在坐标平面。在AutoCAD中,如果你只要一个大概的形状,可以用多义线大约画出圆弧状的图形,但是在实际应用中,如建筑绘图、机械制造等方面就要求精度较高的弧状图形,如建设拱桥时,由力学专家给出最佳的方案,既考虑到桥的最大承重能力,又要考虑制造建桥材料的可行性,这是就需要精确的绘制抛物线图形了。考虑到用户使用方便,笔者使绘制程序与操作简便的对话框相结合,只要在编辑框种输入数据就可以了。2.预期目标根据用户的需求设计应用程序再设计对话框,驱动对话框,将用户提供的数据输入到对话框中,单击确定就可得到运算后的图形,如下图抛物线的演示图形:3.需求分析需求分析的基本任务是准确的回答“系统必须做什么?”这个问题。这一阶段是对系统认识最全面、准确、清晰、得体的一个比较关键的时期。需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。因此,必须用行之有效的方法对软件需求进行严格的审查验证,为下一步的总体设计打好基础。AutoCAD是一种用计算机硬、软件系统辅助人们对产品或工程进行设计的方法和技术,包括设计、绘图、工程分析与文档制作等设计活动。在设计过程中,设计人员处于主导地位,计算机处于辅助地位。AutoCAD在建筑、数学、物理等学科都有广泛的应用,将其功能实现以对话框的形式呈现给用户非常受欢迎,因此,笔者就两者的结合情况作了详细的研究,并开发了绘制抛物线这个小程序用以具体实现一下。下面我具体的介绍一个此软件的系统环境。(一)功能介绍:编写对话框程序,将运算程序装入,驱动对话框就可实现其绘图功能。(二)运行要求●操作系统为Windows98,Windows2000或WindowsXP。●内存推荐为64兆以上,128或以上更加。●具有300MHz处理器(或更高档处理器)的IBMPC兼容机。●鼠标,键盘。4.总体设计经过了需求分析阶段的工作,系统必须“做什么”已经清楚了,现在决定“怎么做”的时候了。总体设计的基本目的就是回答“概括地说,系统应该如何实现?”这个问题。因此,总体设计又称为概要设计或初步设计。笔者从简单的对话框设计入手,先编写用户可见的对话框.dcl文件,然后编写通过输入的数值运算及绘制抛物线的应用程序.lsp文件,再制作用于显示在对话中的示例幻灯片.sld文件,最后编写驱动对话框的.lsp文件,使输入数值后能调用画图程序显示出来。5.详细设计详细设计阶段的根本目标是确定应该怎样具体实现所需要的程序,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。编辑框1对话框编辑框1对话框加框列图像Ok_cancel组件行编辑框2编辑框3根据抛物线的方程y=ax2+bx+c,我们只需要输入a,b,c的值就可以,所以选用了三个编辑框,并对它们赋予初值。为了使对话框美观,直观,又放入了幻灯片文件作为图像显示。编写绘制抛物线程序时,先选定坐标原点,以坐标原点为基础,将x定为2,4,6三个值,再根据给定的a,b,c的值,依次计算出y的值,再以这些点画直线,将单位都改为毫米,连起来的直线段就看起来就成为了曲线,将单位选的再小一些看起来就效果更好了。对话框中的图像是在绘图板中制作的AutoCAD幻灯片文件,将需要加工的图片在绘图板中放到最大,在命令栏内输入mslide(制作幻灯片)命令,再保存。在对话框驱动程序中调用start_image命令,给出幻灯片存放的位置,调用成功后图像就能显示在对话框中,如果调用失败则图像位置为背景色,因为在制作对话框DCL文件时,设定color=-2是取背景色。最后一项也是本次毕业设计的关键,就是vlisp与dcl的整合,也就是对话框的驱动。对话框中的控件本身并没有实际意义,需要经过驱动程序才能实现它自身的功能。下图是一般情况下的对话框驱动过程。不成功不成功不成功不成功成功成功加载对话框文件显示对话框初始化控件激活对话框用户操作对话框显示“加载失败”信息显示出错信息卸载对话框文件结束开始1.加载对话框文件Vlisp程序首先调用load_dialog函数加载指定的对话框文件,若加载成功则返回一个大于零的整数。返回的整数类似于文件标识号,是显示和卸载对话框文件的主要参数,应该将其赋给一个变量保存,以备程序调用。2.将对话框显示到屏幕上调用new_dialog函数,将以加载的对话框文件中指定名字的对话框按照指定的位置显示到屏幕上,默认位置在屏幕中央。3.初始化控件根据对话框文件中控件的属性值对控件初始化,也可调用set_tile、mode_tile或action_tile等函数对控件初始化。只有经过初始化的控件才有初始的外观、状态、功能。4.激活对话框调用start_dialog函数,对话框处于激活状态,等待并接受用户施加在对话框上的操作,直到某一操作直接或间接地调用了done_dialog函数,对话框才消失。5.用户操作对话框用户可随意进行单击或切换开关、向编辑框键入字符、选取列表的选项或拖动滑动条等操作。控件根据用户的操作,执行相应的动作。6.卸载对话框文件如果用户选择了“OK”、“Cancel”、“Exit”或其他含有退出功能控件的按钮,则先调用done_dialog函数,对话框从屏幕上消失,再调用unload_dialog函数,卸载对话框文件,释放对话框所占用的存储空间。7.对话框向应用程序传递函数“OK”等按钮的动作不但调用了done_dialog函数,同时还设置了对话框退出时的不同状态。应用程序根据对话框退出是的状态决定是否确认对话框当前接纳的数据。AutoCAD的二次开发基本都可以按照以上详细设计步骤进行。
否否程序流程图否否程序流程图是是否是否是加载对话框pwx.dcl激活对话框NotF载入幻灯片通过对话框输入给定值在AutoCAD界面下选取坐标原点触发DCL控件取得初始值确定取消绘图主程序在AutoCAD界面上绘出抛物线修改按取消按钮选取坐标原点开始结束dcl_id<0(1)对话框的设计:pwx:dialog{label="绘制抛物线";//显示在对话框顶部的标签:row{//引用行:image//引用图像的控件{width=30;//图像的宽height=8;//图像的高key="img_cr";//图像的关键字color=-2;//图像的背景色}:boxed_column{//引用加框列label="y=ax2+bx+c";//加框列的标签:edit_box{//引用编辑框1label="&A(mm)";//编辑框1的标签 edit_width=8;//编辑框1的宽度key="a";//编辑框1的关键字}:edit_box{//引用编辑框2label="&B(mm)";//编辑框1的标签 edit_width=8;//编辑框1的宽度key="b";//编辑框1的关键字}:edit_box{label="&C(mm)";edit_width=8;key="c";}}}ok_cancel;}(2)抛物线绘制程序:(defunc:pwx()(setqa1b0c0);假设变量的值a=1,b=0,c=0(setqp0(getpoint"\n输入坐标原点"));在绘图板中选取坐标原点(setqxp(carp0)yp(cadrp0));将坐标原点横坐标的值给xp纵坐标的值给yp(command"line"(list(-xp40)yp)(list(+xp40)yp)"");画X轴(command"line"(listxp(-yp40))(listxp(+yp40))"");画y轴(command"pline"(list(+xp40)yp)"w"50(list(+xp50)yp)"");画X轴箭头(command"pline"(listxp(+yp40))"w"50(listxp(+yp50))"");画Y轴箭头(setqx0(+(carp0)(/(-b)(*2a))));指定抛物线顶点的横坐标(setqy0(+(cadrp0)(/(-(*4ac)(*bb))(*4a))));指定抛物线顶点的纵坐标(setqd2)(command"pline"(listx0y0))(while(<=d6)(setqx1(+dx0))(setqy1(+y0(+(*add)(*bd)c))); (command(listx1y1))(setqd(+d2))) (command""))(3)对话框驱动程序(defunc:drawpwx(/abcid);AUTOCAD命令名:drawpwx(defungetdata();定义getdata函数,获取控件的最终结果(setqa(atof(get_tile"A")));获取编辑框A的值,转换为实数后赋给变量a(setqb(atof(get_tile"B")));获取编辑框B的值,转换为实数后赋给变量b(setqc(atof(get_tile"C")));获取编辑框C的值,转换为实数后赋给变量c)(setqsdt0);设置状态参数sdt为0(setqid(load_dialog"E:/文件夹/我的文件夹/论文-文件夹/毕业设计/尹慧1/pwx.DCL"));装入DCL文件(if(<id0)(exit));如果装入失败则退出(setqA50.0B50C25);设变量初值(if(not(new_dialog"pwx"id))(exit));启动对话框,如果失败则退出(setqx1(dimx_tile"img_cr"));(setqy1(dimy_tile"img_cr"));(start_image"img_cr")
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年博尔塔拉职业技术学院单招综合素质考试题库带答案详解(黄金题型)
- 2026年信阳涉外职业技术学院单招职业倾向性考试题库附参考答案详解(夺分金卷)
- 2026年北京社会管理职业学院单招职业技能考试题库及答案详解1套
- 2026年南充电影工业职业学院单招职业技能考试题库及答案详解(夺冠系列)
- 2026年包头轻工职业技术学院单招职业适应性考试题库带答案详解(精练)
- 2026年克拉玛依职业技术学院单招综合素质考试题库带答案详解(满分必刷)
- 2026年包头铁道职业技术学院单招职业技能考试题库附参考答案详解(满分必刷)
- 2026年兰州石化职业技术大学单招职业倾向性测试题库含答案详解(轻巧夺冠)
- 2026年冀中职业学院单招职业技能测试题库含答案详解(完整版)
- 2026年包头轻工职业技术学院单招职业适应性测试题库及答案详解(名师系列)
- 长郡中学2026届高三月考试卷(六)物理+答案
- 建筑企业节后工地复工安全课件
- 山东济南市2025-2026学年秋季学期高一期末考试英语试题(试卷+解析)
- 碎片化运动在慢性病患者中的应用进展2026
- 2026年智能医疗手术报告
- 律师理论考试试题及答案
- 广东省广州市荔湾区2025-2026学年第一学期四年级数学期末试卷(无答案)
- 2026秋招:神州数码集团笔试题及答案
- 中医体重管理科普
- 2025心肺复苏指南
- 中国临床肿瘤学会(csco)胰腺癌诊疗指南
评论
0/150
提交评论