注册 登录
编程论坛 VB.NET论坛

用VB.net缩放图块问题~高手请进~!

Amanda_li 发布于 2010-07-19 09:26, 726 次点击
    我有两个CAD文件,在第一个文件中创建了一个快,但是在第二个文件中插入时要大很多倍,现在想解决的问题是,在插入第二个文件的时候可以自动缩放块。
    请高手指教~!多谢~!
2 回复
#2
wei8551982010-07-22 15:46
这个问题到CAD二次开发论坛去效果会比较好。
建议将定义块的长宽信息记下,插入到另一个文件的时候,根据要插入的位置的大小,计算出x,y方向的缩放比例即可。
如图块定义时的大概宽度为x1,高为y1. 要插入的位置空间大小长为X,高为Y。
则计算X/x1,Y/y1作为x,y方向的缩放比例。若要比例协调而不失真,则取以上计算结果中的较小值作为统一缩放比例。VBA示例如下:
    Dim insertpoint(0 To 2) As Double
    insertpoint(0) = 0: insertpoint(1) = 0: insertpoint(2) = 0
     ’下面语句里面,143,222分别为定义图块的长和宽。因为没有统一缩放比例,这样插入的图块会变形。
    ThisDrawing.ModelSpace.insertblock insertpoint, "blockname", Me.Width / 143, Me.Height / 222, 1, 0

这是我的一点浅见,先抛块砖,希望有高手来指正。


[ 本帖最后由 wei855198 于 2010-7-22 16:45 编辑 ]
#3
Amanda_li2010-07-30 09:18
回复 楼主 Amanda_li
谢谢~~我尝试一下~~呵呵~
1