找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: shengl

[求助]:mdl开发中遇到的问题?(建议跟贴)

[复制链接]
发表于 2004-7-5 08:28:25 | 显示全部楼层
①第一行用的是ScanList,第二行用的是mScanList,两个变量名为何不一致?
②在mdlScan_file之前是否调用了mdlScan_initialize(...) ?
③ 你不明白的那一句的意思是求返回了多少个元素。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-5 08:48:34 | 显示全部楼层
1,在程序中,第一行,第二行用的是mScanList,不好意思,这里复制时丢了m;
2,是缺了mdlScan_initialize(0,&mScanList);
3,为什么,在mdlScan_file之前还有它呢?
4.mScanList.scantype与mScanList.typmask的有什么区别和联系?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2004-7-6 07:30:55 | 显示全部楼层
不调用mdlScan_initialize,你对mScanList赋了半天值等于白赋!mdlScan_file可不会自动去找你的mScanList,没准我还不叫mScanList呢!?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-6 14:25:52 | 显示全部楼层
MSElementDescr                *g_modifyEdP;
Dpoint3d                        g_LinePoint[101];
int                        g_numVerts,g_modifyNum =0;
mdlLinear_extract(g_LinePoint, &g_numVerts, &g_modifyEdP->el,0);
这样可以取得线串元素(type4)上的所有点,但是对于复杂链元素(type12)来,如何取得元素的所有点?可以创建复杂链元素吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-6 22:46:41 | 显示全部楼层
应该用mdlElmdscr_stroke
创建复杂链元素用mdlElmdscr_createFromVertices
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-8 15:23:15 | 显示全部楼层
请问一下VC+mdl进行开发,需要配置那些东西,做出的东西是用vc编译还是用ms编译?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-8 15:48:52 | 显示全部楼层
VC+mdl进行开发 的实质只是用vc做文本编辑器而已  用处不大
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-9 10:36:43 | 显示全部楼层
非也!完全是用VC++的编译器编译程序生成DLL。
下面是我从国外网站下载的一段用VC++编写的MDL程序:
class CMsDbLinkage {
    public: // * Constructors
         CMsDbLinkage ( UInt16 entityNum, Int32 mslink, UInt16 primaryId=OLEDB_ID );
    protected: // * Members
         UInt16 m_attributes[8];
};

CMsDbLinkage::CMsDbLinkage ( UInt16 entityNum, Int32 mslink, UInt16 primaryId )
{
     memset(m_attributes,0,sizeof(m_attributes));
     m_attributes[0]=0x1007;
     m_attributes[1]=primaryId;
     m_attributes[2]=SECONDARY_ID;
     m_attributes[3]=entityNum;
     m_attributes[4]=(mslink & 0x0000ffff);
     m_attributes[5]=(mslink & 0xffff0000) >> 16;
}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-9 13:33:20 | 显示全部楼层
我现在想编一个带有对话框界面操作的小程序,但苦于对ms中的资源编辑不了解。
请问:命令信息中:命令号,源,未分析
           挂钩信息中:标准作用,标识符#,参数
各 是什么意思?
那位大侠能不能就几个重要的控件详细说明一下?
在此谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-12 09:54:48 | 显示全部楼层
问题还真不少,其实你的这些问题MDL随机文档中都说得很清楚。我在此先回答你的关于命令的问题,其他的要靠你刻苦攻读E文了!
①“命令号”实际上就是一个数字,它把资源与源程序关联起来。如在一个按钮的资源中可以写上一个命令号CMD_XXX,在源程序中的cmdNumber CMD_XXX就是把该命令号与一个函数关联起来。当你点击该按钮时就会执行cmdNumber上一行的函数。
②“源”是指由谁来执行命令。LCMD表示由你自己的程序来处理该命令号,MCMD表示由MicroStation来处理该命令号。如当用户按某按钮后想执行MS的一个命令,这时源就需要设置为MCMD。
③“未分析”指命令后跟的参数。如ACTIVE COLOR 5中的5就是。如果你的命令不需要参数(一般都不需要),就把它设为NULL。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-12 12:03:17 | 显示全部楼层
mdl中有没有函数可以找到已知线段附近的的线段?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2004-7-13 10:42:33 | 显示全部楼层
1。我的想法是,很据已知线(不止两个点)和搜索范围值,建立一个缓冲区(多边形),从而找出缓冲区内的所有线。但是mdlScan_XXX,设置搜索范围好像只是一个矩形(不考虑z值时).
这时如何解决?用到裁减相关函数吗?

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

使用道具 举报

发表于 2004-7-14 08:39:54 | 显示全部楼层
可以用Fence函数来代替mdlScan_XXX函数:
将缓冲区(多边形)生成Fence,再用Fence命令函数mdlState_startFenceCommand来做就行了,
可以找出缓冲区内的所有线。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-22 01:11 , Processed in 0.383878 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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