MDL(MicroStation 开发语言)

更新时间:2025-05-24 04:32:18 阅读: 评论:0

MDL(MicroStation 开发语言)

MDL有二种英文缩写,其一是三八线,又叫韩朝军事分界线(Military Democration Line)。其二是MicroStation的“套用引擎(Application Engine)”,MDL可以直接在MicroStation中运行,并且表现为MicroStation本身的一部分。

基本介绍

中文名:MicroStation开发语言 外文名:MicroStation Development Language 简称:MDL

韩朝军事分界线

韩朝军事分界线也即三八线,英文全称Military Democration Line,详细解释参见词条三八线。

开发语言

MicroStation Development Language全称:MicroStation Development LanguageMDL是MicroStation的“套用引擎(Application Engine)”,MDL可以直接在MicroStation中运行并且表现为MicroStation本身的一部分。许多MicroStation的命令都可以在MDL中套用。MDL的组成标準C (ANSI C) 程式设计语言(当然有某些限制和扩展);一整套开发工具(包括C编译器、连线器、程式库、资源编译器和资源库、Make程式以及调试工具);MicroStation内部的用于执行MDL应用程式的伪码解释器;MicroStation内部的MDL调试器;大量的运行库函式;可以改变MicroStation各种行为的钩子(Hooks)函式,所谓钩子函式是指那些在某种事件发生时被MicroStation自动执行的函式;GUI开发工具,可以用于开发基于Motif的图形用户界面(包括:对话框、下拉选单等);资源管理器;运行及卸载MDL应用程式在MicroStation命令视窗中运行MDL套用时,可以指定一个套用名称和任务识别码(Task ID),其中前者是必须的。具体使用方法如下:MDL LOAD│SILENTLOAD [DEBUG│NODEBUG] <套用名> [,<任务识别码>] [<参数>]MicroStation将首先在当前目录下查找用户在命令行中指定的套用,如果找不到,再到由MicroStation环境变数MS_EXE和MS_MDL指定的目录下去寻找。如果用户未指定应用程式的扩展名,MicroStation将首先寻找无扩展名的档案,其次才是.MA档案和.RSC档案。因此运行时最好键入应用程式的全名。卸载 MDL套用的命令为:MDL UNLOAD│SILENTUNLOAD [<任务识别码>]MDL套用还可以在MDL对话框中装载运行,通过MDL对话框也可以卸载MDL套用。MDL的高级调用方式在一个MDL套用中调用另一个MDL套用:使用MicroStation的内部函式mdlSystem_LoadMDLProgram;在MicroStation初始化时(打开DGN档案之前或者进入图形模式之前)调入MDL套用:使用环境变数MS_INITAPPS和配置变数MS_DGNAPPS,如果要调用多个MDL程式,用分号(;)隔开,语法如下:MS_DGNAPPS=应用程式名[,任务识别码] [/D];在DGN档案打开时运行MDL套用:使用mdlSystem_CreateStartupElement函式在DGN档案中创建一个启动元素(Start-up Element,类型代码为66),即可在MicroStation打开DGN档案后立即运行指定的MDL程式;KEYIN套用:MDL KEYIN <套用名> <命令字串>。MDL的高级卸载方式在程式中使用标準C的 “exit”函式卸载程式;MicroStation退出时可自动卸载MDL程式;应用程式发生严重错误时会自动退出;在一个套用中卸载另一个套用使用MicroStation内部函式mdlSystem_unloadMDLProgram;在MDL调试器中使用QUIT命令可以卸载一个应用程式。附:MicroStation的开发工具UCMs ………… User CommandsMicroCSL …… MicroStation Customer Support LibraryMDL …………… MicroStation Development LanguageMDL还是麦当劳的意思。麦当劳的英文全称是McDonald's 现代的型男型女们通常也都会像暱称肯德基KFC一样的称麦当劳做:MDLMDL Memory Descriptor List// I/O system definitions.//// Define a Memory Descriptor List (MDL)//// An MDL describes pages in a virtual buffer in terms of physical pages. The// pages associated with the buffer are described in an array that is allocated// just after the MDL header structure itself.//// One simply calculates the base of the array by adding one to the base// MDL pointer://// Pages = (PPFN_NUMBER) (Mdl + 1);//// Notice that while in the context of the subject thread, the base virtual// address of a buffer mapped by an MDL may be referenced using the following://
// Mdl->StartVa | Mdl->ByteOffset//typedef struct _MDL {struct _MDL *Next;CSHORT Size;CSHORT MdlFlags;struct _EPROCESS *Process;PVOID MappedSystemVa;PVOID StartVa;ULONG ByteCount;ULONG ByteOffset;} MDL, *PMDL;#define MDL_MAPPED_TO_SYSTEM_VA 0x0001#define MDL_PAGES_LOCKED 0x0002#define MDL_SOURCE_IS_NONPAGED_POOL 0x0004#define MDL_ALLOCATED_FIXED_SIZE 0x0008#define MDL_PARTIAL 0x0010#define MDL_PARTIAL_HAS_BEEN_MAPPED 0x0020#define MDL_IO_PAGE_READ 0x0040#define MDL_WRITE_OPERATION 0x0080#define MDL_PARENT_MAPPED_SYSTEM_VA 0x0100#define MDL_FREE_EXTRA_PTES 0x0200#define MDL_DESCRIBES_AWE 0x0400#define MDL_IO_SPACE 0x0800#define MDL_NETWORK_HEADER 0x1000#define MDL_MAPPING_CAN_FAIL 0x2000#define MDL_ALLOCATED_MUST_SUCCEED 0x4000#define MDL_MAPPING_FLAGS (MDL_MAPPED_TO_SYSTEM_VA | MDL_PAGES_LOCKED | MDL_SOURCE_IS_NONPAGED_POOL | MDL_PARTIAL_HAS_BEEN_MAPPED | MDL_PARENT_MAPPED_SYSTEM_VA | MDL_SYSTEM_VA | MDL_IO_SPACE )

模型包

简介

MDL档案并不是单纯的模型档案,他是一个档案包,里面包含模型,贴图,所有动作,以及脚本。

编绘

MDL档案并不是单纯的模型档案,他是一个档案包,里面包含模型,贴图,所有动作,以及脚本。所以要想建立一个MDL档案是很麻烦的,可以找一个现成的MDL档案(从CS或者半条命里找),用Milkshape的外挂程式给解压缩,选单tools-hl-decomp normal hl mdl file,。 解完后找到里面的后缀SMD的档案,其中一个是模型,用MS导入3DS,套用这个SMD里的骨骼,在MS里设定好权重,然后覆盖这个SMD档案。 接着选单tools-hl-Compile qc file 选择刚才解压缩出来的一个后缀QC的档案把MDL重新打包就可以了。
.mdl用rose生成的格式档案,它支持UML用来画用例图,序列图,状态图,类图等不能用powerdesigner打开 你可以下载一个rose看看

本文发布于:2023-03-25 13:25:44,感谢您对本站的认可!

本文链接:http://www.ranqi119.com/to/1679839379230120.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:语言   MDL   MicroStation
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 站长QQ:55-9-10-26|友情:优美诗词|电脑我帮您|扬州装修|369文学|学编程|软件玩家|水木编程|编程频道