明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3180|回复: 16

在vb和CAD二次开发时,画圆弧出现了这样的错误

  [复制链接]
发表于 2005-5-27 17:21:00 | 显示全部楼层 |阅读模式
如图,发生了这样的错误 提示是要求对象,不明白 程序都在图上了,谁给看看... 或者如下: Dim arcObj As AcadArc
Dim centerPoint(0 To 2) As Double
Dim radius As Double
Dim startAngleInDegree As Double
Dim endAngleInDegree As Double
' Define the circle
centerPoint(0) = 0#: centerPoint(1) = 0#: centerPoint(2) = 0#
radius = 5#
startAngleInDegree = 10#
endAngleInDegree = 230#
' Convert the angles in degrees to angles in radians
Dim startAngleInRadian As Double
Dim endAngleInRadian As Double
startAngleInRadian = startAngleInDegree * 3.141592 / 180#
endAngleInRadian = endAngleInDegree * 3.141592 / 180#
' Create the arc object in model space
Set arcObj = ThisDrawing.ModelSpace.AddArc(centerPoint, radius, startAngleInRadian, endAngleInRadian)
ZoomAll

本帖子中包含更多资源

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

x
发表于 2005-5-27 18:08:00 | 显示全部楼层
程序没错啊,我刚试了,可以画圆弧.
发表于 2005-5-27 20:51:00 | 显示全部楼层
我也帮你试过了,没有错,可以画圆弧。
发表于 2005-5-27 21:29:00 | 显示全部楼层
还没有错?
请注意楼主需要的是在VB环境下,而不是VBA环境下。
所以ThisDrawing没有定义。
 楼主| 发表于 2005-5-27 22:35:00 | 显示全部楼层
mccad发表于2005-5-27 21:29:00还没有错?请注意楼主需要的是在VB环境下,而不是VBA环境下。所以ThisDrawing没有定义。
怎么定义? 直接 dim thisdrawing as double ???
 楼主| 发表于 2005-5-27 22:45:00 | 显示全部楼层
cryyyy发表于2005-5-27 22:35:00以下是引用mccad在2005-5-27 21:29:50的发言:还没有错?请注意楼主需要的是在VB环境下,而不是VBA环境下。所以Thi...

我直接对 thisdrawing 定义的话(别见笑,初学者),又发生了这样的错误说 无效限定符 这又是怎么回事?

本帖子中包含更多资源

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

x
发表于 2005-5-28 01:20:00 | 显示全部楼层
dim        thisdrawing as acaddocument       


set thisdrawing =acadApp.Activedocument
 楼主| 发表于 2005-5-28 15:48:00 | 显示全部楼层
armylee发表于2005-5-28 1:20:00dim thisdrawing as acaddocument set thisdrawing =acadApp.Activedocument
哈哈,厉害 高手 搞定了 非常感谢
发表于 2005-5-28 16:04:00 | 显示全部楼层

椭圆弧怎么画,帮我

用VB代码画 椭圆弧 ,帮我
 楼主| 发表于 2005-5-28 18:20:00 | 显示全部楼层
armylee发表于2005-5-28 1:20:00dim thisdrawing as acaddocument set thisdrawing =acadApp.Activedocument

Dim arcObj As AcadArc '''''''''''''''''''''''''''''''''''''''''弧
Dim centerPoint(0 To 2) As Double
Dim radius As Double
Dim startAngleInDegree As Double 'Sqr(nj ^ 2 - (b / 2) ^ 2) + ybjl
Dim endAngleInDegree As Double Dim thisdrawing As AcadDocument Set thisdrawing = acadapp.ActiveDocument
'Dim ppp As Double
ppp = (b / 2) / Sqr(nj ^ 2 - (b / 2) ^ 2)
qqq = Atn(ppp)
' Define the circle
centerPoint(0) = ybjl#: centerPoint(1) = zxxsp#: centerPoint(2) = 0#
radius = nj#
startAngleInDegree = ppp
endAngleInDegree = -qqq
' Convert the angles in degrees to angles in radians
Dim startAngleInRadian As Double
Dim endAngleInRadian As Double
startAngleInRadian = startAngleInDegree * 3.141592 / 180#
endAngleInRadian = endAngleInDegree * 3.141592 / 180#
' Create the arc object in model space
Set arcObj = thisdrawing.ModelSpace.AddArc(centerPoint, radius, startAngleInRadian, endAngleInRadian)
ZoomAll 完整程序如上,其中我要定义这俩个角才可以画出弧,假如我直接给角附值,那可以轻松画出弧.但是假如我给他附一个变量,怎么就画不出来啊...??? startAngleInDegree = ppp
endAngleInDegree = -qqq ppp可以,但是经过反正切Atn(ppp)得到qqq之后,就画不出来了,是不是不能用反正切函数啊??? ppp = (b / 2) / Sqr(nj ^ 2 - (b / 2) ^ 2)
qqq = Atn(ppp)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 14:41 , Processed in 0.190265 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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