找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 676|回复: 14

[求助]:初学MDL,望高手指教,如何画自定义曲线(类似SMART LINE)

[复制链接]
发表于 2004-9-17 15:14:50 | 显示全部楼层 |阅读模式

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

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

×
我在MDL里面要绘制一段经计算的曲线(点很多),后一点位置与前一点位置相关,碰到几个问题
1、画线使用mdlLine_create画线无法画下一点,线不是整体,使用线串有100点限制
2、如何输入下一个点给开始的画线命令
我在microstation basic 里面可以实现,不知道MDL如何实现
请高手们指教高手
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-9-17 16:48:15 | 显示全部楼层
看来你用的不是v8了 basic里画线是调用的画线命令
在mdl里那就要自己写
ms自带的例子就有LINESTRG.MC 就是画复杂串
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-17 16:57:18 | 显示全部楼层
你用的是MSV8吗?V8中的线串顶点数最多为5000个,不是J版中的101个了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-9-20 11:48:29 | 显示全部楼层
我的确不是用basic,basic程序我已经做出来了,我想用MDL编程
我的点到底有多少,是不确定的,可能很多,计算和绘图有时要10来分钟,不知道5000点是否够,我现在刚找到可以直接使用mdlinput_sendkeyin命令输入了画线命令,但不能输入点,请高手指教。

我的安装版本不全,V8没有例子,J版例子没有LINESTRG.MC 这各程序,是否可以mail给我,mail 地址
gcf101@163.com
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-20 13:42:09 | 显示全部楼层
mdlInput_sendUORPoint 可以输入点。但我仍然不赞成用这种模拟交互式输入的方式。这种方式会比用mdlLineString_create慢许多倍。如果担心5000点还不够用,可以在程序中加以判断,当点数大于5000时再重新用下一个5000点调用mdlLineString_create函数,该循环直到所有点放置完毕才结束。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-20 14:19:13 | 显示全部楼层
mdlElmdscr_createFromVertices 直接使用这个函数建立复杂串不就行了 如果点少则自动建立线串

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

使用道具 举报

发表于 2004-9-20 15:00:47 | 显示全部楼层
对!是有这么个函数,我想了半天没有想起来。还是斑竹细心!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-9-20 16:38:07 | 显示全部楼层
我使用mdlInput_sendUORPoint成功了,谢谢
模拟交互是什么意思?我用mdlLineString_create再试试


mdlElmdscr_createFromVertices,我从帮助中看了
但输入顶点时,如何输入呢?时把这哥函授放在循环内还时循环前面,
如果是循环内的话,不要设很大的数组啊
我是初学,望斑竹多指教指教
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-22 11:22:38 | 显示全部楼层
用这个函数就不需要循环了!
顶点数太大的话有两种解决办法,一个就是声明一个超大的全程量数组(局部量不能超过64K);另一种办法就是在局部量中声明一指针,然后根据你的点数用malloc分配内存,但用后一定要用free将该内存区释放,不然会造成内存泄漏!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2004-9-30 13:40:00 | 显示全部楼层
guocf ,如果用MDL来开发但却还是用“输入命令-输入坐标点”的方式的话,感觉象杀鸡用牛刀了。MDL提供的各种CAD函数效率非常高,速度快,比起MBE、VBA的执行速度快很多的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-9-30 14:03:37 | 显示全部楼层
不知iamlanlan [有什么高招,不防教一下啊
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-30 16:02:06 | 显示全部楼层
我前面说的“交互式”就是指的“输入命令-输入坐标点”。应该用元素、元素描述符之类的函数直接生成元素写入DGN,这样就不需利用MS的命令输入与分析机制了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-10 04:19 , Processed in 0.417164 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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