乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 108|回复: 4

将面域旋转成球体时出错,大虾帮忙改以下

[复制链接]

4

主题

10

帖子

2

银币

初来乍到

Rank: 1

铜币
26
发表于 2006-5-22 11:31:00 | 显示全部楼层 |阅读模式
Const pi = 3.1415926
Dim r As Double

'绘制球体
&nbspublic Sub drwPicture()
Dim curves(0) As .AcadEntity
Dim centerpoint(2) As Double
r = 500
centerpoint(0) = 0: centerpoint(1) = 0: centerpoint(2) = 0
Set curves(0) = ModelSpace.AddCircle(centerpoint, r)


Dim object As Variant
object = ModelSpace.AddRegion(curves)

Dim solidObj As AutoCAD.Acad3DSolid

Dim axisPt(2) As Double
Dim axisDir(2) As Double
axisPt(0) = 0: axisPt(1) = 0: axisPt(2) = 0
axisDir(0) = 1: axisDir(0) = 0: axisDir(0) = 0
engle = 45 * pi / 180
solidObj = ModelSpace.AddRevolvedSolid(object(0), axisPt, axisDir, engle)
Dim newdirection(2) As Double
newdirection(0) = 1: newdirection(1) = 0.5: newdirection(2) = 0.5
ActiveViewport.Direction = newdirection
ActiveViewport = ActiveViewport
Layers.Item(0).color = AutoCAD.AcColor.acBlue
SendCommand ("_shademode" + vbCr + "_g" + vbCr)
ZoomAll
curves(0).Delete

End Sub
回复

使用道具 举报

4

主题

10

帖子

2

银币

初来乍到

Rank: 1

铜币
26
发表于 2006-5-22 12:00:00 | 显示全部楼层
黑体的地方出错了,高手指点一下吧,
回复

使用道具 举报

1

主题

157

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
161
发表于 2006-5-22 14:12:00 | 显示全部楼层
Dim curves(0) As AutoCAD.AcadEntity
Dim centerpoint(2) As Double
r = 500
centerpoint(0) = 0: centerpoint(1) = 0: centerpoint(2) = 0
Set curves(0) = ModelSpace.AddCircle(centerpoint, r)
Dim object As Variant
object = ModelSpace.AddRegion(curves)
这段程序创建了一个用于旋转的圆的截面吧,我查了一下VBA的例子,它用一个半圆做截面旋转就没有问题,原因我不清楚。所以我改成了下面这段程序
Dim curves(1) As AutoCAD.AcadEntity
Dim centerpoint(2) As Double
r = 500
centerpoint(0) = 0: centerpoint(1) = 0: centerpoint(2) = 0
Set ModelSpace = ThisDrawing.ModelSpace
Dim startAngle As Double
Dim endAngle As Double
radius = 500
startAngle = 0
endAngle = pi
Set curves(0) = ThisDrawing.ModelSpace.AddArc(centerpoint, radius, startAngle, endAngle)
Set curves(1) = ModelSpace.AddLine(curves(0).StartPoint, curves(0).EndPoint)
下面就不会报错了。。。。
还有就是你的声明给的不全吧,什么Modelspace,SendCommand都没有声明。。。。。。下面删除曲线的程序你自己改吧。。。。。真是不知道为什么整圆不能使用。。。。。。
回复

使用道具 举报

4

主题

10

帖子

2

银币

初来乍到

Rank: 1

铜币
26
发表于 2006-5-22 19:55:00 | 显示全部楼层
谢谢了按照你的方法已经成功解决了;
在cad里面好象是不能用整圆旋转,可能是旋转出的两部分相交于轴了;
但是只要轴线在圆以外就行了。
再次感谢你热心的帮助!
回复

使用道具 举报

15

主题

227

帖子

20

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
276
发表于 2018-4-27 15:48:00 | 显示全部楼层

你好! 你的圆转球体的代码可以共享下吗,我想将许多大小不一的圆一次性转球体, 谢谢!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-6-28 14:44 , Processed in 0.240554 second(s), 62 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表