找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 640|回复: 13

[求助]:MDL编译不通过的问题

[复制链接]
发表于 2005-3-28 10:48:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我要引用 jmdlEmbeddedDPoint3dArray_grab( ) 和 jmdlEmbeddedIntArray_grab( )函数,但是程序报错。这是为何?(我已经包含了两个函数所需的头文件#include <embeddedintarray.fdf> 和 #include <embeddeddpoint3darray.fdf>,但还是编译不过!)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-3-28 13:43:47 | 显示全部楼层
出什么错?那个版本的MS?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-28 16:26:05 | 显示全部楼层
错误是:无法连接相应的 stdmtg.lib 文件。
我检查了我的MicroStation的相关文件夹,的确没有此 文件。但是我在进行 2D 文件处理时也没有找到相应的.idl 文件却可以编译通过。举个例子:我在使用这个函数mdlScanCriteria_create 来创建ScanCriteria 一个变量时,它的帮助文档要求有stdmdlbltin.lib 文件。但是我在我的机子里根本没有找到这个文件,可是却能编译通过。

我装的是V8 version
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-28 21:18:12 | 显示全部楼层
只要你连接必须的fdf文件,ms会自动连接相应的lib 使用mdlScanCriteria_create只需要msscancrit.fdf 就行了
另外你是从v8提供的dos编译环境下编译的吗
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-29 08:26:26 | 显示全部楼层
EmbeddedIntArray        *pIndices = jmdlEmbeddedIntArray_grab();       
EmbeddedDPoint3dArray        *pXYZ     = jmdlEmbeddedDPoint3dArray_grab();       
我在使用这两个函数时,要求我包含
#include <embeddedintarray.fdf>
#include <embeddeddpoint3darray.fdf>
这两个头文件。我作了,但是还是不能通过编译。这是为何?
我就是在DOS下进行编译的,错误信息也是从DOS界面下显示出来的!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-29 08:29:35 | 显示全部楼层
在你的MKE文件中加入mtg.dlo即可
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-29 15:37:16 | 显示全部楼层
加入那个文件后,可以编译了!谢谢!

我还有一个问题:我怎样得到pMyMeshHdr points (The variable pMyMeshHdr points to a mesh header element descriptor tree. )?

能告诉我一些有关Microstation API 结构的信息吗?
比如说,什么是cell?什么是model?什么是element descriptor ?等等......

能给我有一些有关MDL的帮助质料吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-29 16:57:09 | 显示全部楼层
Cell:就是单元呀!多个元素的永久性结合,相当于ACAD中的Block。
Model:是V8新增的概念,每个DGN文件可含有多个Model,每个Model由一系列的元素组成。近似相当于以前版本的一个DGN。ACAD中也有此概念(模型空间和纸空间)。V8中的单元库实际上就是一个DGN,由多个Model组成,每个Model就是一个Cell。
Element Descriptor:是一系列元素在内存中的表示形式。如从Model中读取一个Cell,在内存中就形成一个Element Descriptor。这些东东MDL的帮助从都有详细的说明。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-30 20:18:27 | 显示全部楼层
1、model 是一种cell 的嵌套结构?如果象你所说cell 就是 model,那为什么model 与 cell 有两套函数集合?
2、一个 cell 是不是一个Element Descriptor 的链表?每一个 Element 都放在 Element Descriptor 结构中的 el 成员中。是不是?
3、Element 与 Element Reference 是什么关系?
4、DgnIndexItemP 与 DgnModelRefP 的关系是什么?
5、Linkage 是什么概念?
谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-30 21:15:55 | 显示全部楼层
1 简单得 说Model是一个DGN 文件 cel是dgn文件中得一个元素
2 简单得 Element Descriptor 是由多个元素组成得
3,4 你可以直接看.h类型得定义
5  不知道你说那个,大概指附加得属性数据
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-3-31 08:33:03 | 显示全部楼层
斑竹回答得对!再进一步补充:
1、每个DGN文件可含有多个Model,每个Model由一系列的元素组成。作为普通Cell放入Model中的Cell就是一系列元素。作为单元库的Cell,每个为一Model。
2、每个Cell读入内存后由ElementDescr表示,在文件中可不是这样的结构。
3、Element只是MS中元素的意思,它可有许多种标识方法:①用FilePos标识;②用ElementID标识;③用ElementRef标识(就是你说的这种);其实无论那种标识方法,他们都指向同一Element;
4、每个装载如内存的Model都可由一个惟一的DgnModelRefP标识。DgnIndexItemP用于对未装载入内存的多个Models进行遍历(用Iterator遍历)。
5、通过Linkage可以向任何元素附加任何用户自定义属性数据。当然,标准的数据库链接数据也可通过Linkage操作。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-1 10:08:54 | 显示全部楼层
谢谢诸位高手的指点!
我又有一些新问题,想请教大家:
1、在一个dgn文件中,我怎样才能找到MESH_HEADER_ELM(105)?我遍历了dgn文件里的所有element 就是没找到!我猜想是不是要通过其它的element 来找mesh header element。
2、我画了一个球,当我查看 information 时,却发现尽是Arc 和 Line 的信息而没有mesh 的信息,这是为何?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-1 15:53:40 | 显示全部楼层
用画球命令绘制出的一个球是Solid实体,不是Mesh类型。需要用Construct Facet命令转换。
Construct Facet图标在Tools→3D Main→3D Utility中的最后一个。见附图
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-4 10:49:09 | 显示全部楼层

请教一个问题!

在Microstation中有“装配”的概念吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-24 03:27 , Processed in 0.493241 second(s), 58 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表