几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   数据库ObjectDBX (http://www.dimcax.com/hust/forumdisplay.php?f=177)
-   -   【转帖】vba绘制垫片问题 (http://www.dimcax.com/hust/showthread.php?t=13191)

yang686526 2009-04-28 10:19 AM

【转帖】vba绘制垫片问题
 
vba绘制垫片问题
www.dimcax.com
vba绘制垫片问题
刚开始学vba,标准件里感觉垫片最简单,最初想法是画两个同心圆,参数上一个中心点,大小两个直径来实现,但是目前只能画出一个同心圆,而且大小直径不能随意控制,我的程序如下:
sub cir()
dim c(0 to 2) as double
c(0) = 20
c(1) = 20
c(2) = 0
for i = 1 to 2 step 1
call thisdrawing.modelspace.addcircle(c, i * 10)
next i
end sub
就是一个简单的圆程序再加个循环,但是还是不能随意控制大小直径,只能是直径有规则的两个同心圆,请高手帮忙修改下

以下程序,纯属个人意见,仅供参考,可能不是你想要的,不过我觉得这样写好一些
希望对你有帮助
运行后需要点取中心点,然后是输入两园半径,然后根据输入画园
sub cir()
on error resume next
dim insertionpnt as variant
dim radus1, radus2 as string
insertionpnt = thisdrawing.utility.getpoint(, "指定插入点: ")
if err then
err.clear
exit sub
end if
radus1 = thisdrawing.utility.getstring(0, vbcrlf & "输入内圆半径:")
radus2 = thisdrawing.utility.getstring(0, vbcrlf & "输入外圆半径:")
thisdrawing.modelspace.addcircle insertionpnt, cdbl(radus1)
thisdrawing.modelspace.addcircle insertionpnt, cdbl(radus2)
sendcommand chr(3) & chr(3)
end sub


所有的时间均为北京时间。 现在的时间是 11:23 PM.