pcat 发表于 2005-3-21 09:11:00

[ARX]请问动态生成图形的功能怎么实现?

acad中mlstyle命令中,会弹出一个对话框,里面增加多样内部分线个数时,按钮会动态显示示例图,请问这种功能是如何才能办到阿?用mfc来做的话.<br>
谢谢!<br>

pcat 发表于 2005-3-22 17:45:00

回复:(pcat)[ARX]请问动态生成图形的功能怎么实现?...

就是这个mlstyle命令

pandoram 发表于 2005-3-24 10:50:00

在对话框上设bitmap(picture)控制, 显示由其它控制(combo box, edit box, etc.)的函数呼叫.


可以参考一些基本的MFC教程.

pcat 发表于 2005-3-24 15:09:00

回复:(pandoram)在对话框上设bitmap(picture)控制,...

bitmap控件吗?<br>
上面的图形有办法动态的生成?<br>
我知道用其他控件控制呼叫,但是最后在控件上动态地生成图形怎么弄阿?<br>
达到mlstyle的那种效果.<br>
谢谢<br>

pandoram 发表于 2005-3-24 16:28:00

MFC提供一种BITMAP结构(还有一些其他相关结构), 可以(非常非常非常非常费劲地)指定bitmap大小行数每一行每一个像素的颜色, 然后在bitmap控件用create生成相应图形.


mlstyle load用的是一种半script的方式, 比如不加-代表bit 1, 就是黑色, 后面的距离要换算, .5就是画0.5单距长的线, 一个单距比如我设定是10像素长,        .5翻译到bitmap就是5个像素的bit 1(黑色).        add应该是把所有的对话框输入同样地翻译成bitmap要素吧, 比如offset+0.5就是垂直加多0.5单距也就是5个像素的bit 0(白色)然后加一个像素的bit 1(黑色).


至于ACAD内部是怎么实现它自己的mlstyle动态生成的细节那就没有办法知道, 只是大概如果要做成那样的效果, 就是往这个思路上面去, 把控制输入变成bitmap像素.
页: [1]
查看完整版本: [ARX]请问动态生成图形的功能怎么实现?