明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4066|回复: 10

求助:在cad中用程序怎么实现输入两个三维点,输入半径,画一个圆柱体?

[复制链接]
发表于 2003-10-31 14:01 | 显示全部楼层 |阅读模式
 楼主| 发表于 2003-10-31 15:17 | 显示全部楼层
高手帮帮忙阿~~~,先谢了
发表于 2003-11-10 20:15 | 显示全部楼层
会调用lisp吧,给你编了个小程序,试试

本帖子中包含更多资源

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

x
发表于 2008-8-28 10:43 | 显示全部楼层
请问怎么用这个命令啊
发表于 2008-8-29 11:54 | 显示全部楼层

载入后,打yz命令就可在指定位置画出圆柱体了。

本帖子中包含更多资源

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

x
发表于 2008-9-2 21:10 | 显示全部楼层

简单,画一个底面圆,然后根据两点画直线,拉伸,就可以了

程序:    Dim intCount As Integer         ' 当前模型空间的对象数
    intCount = ThisDrawing.ModelSpace.Count
   
    Dim ptCenter(2) As Double
    ptCenter(0) = x1: ptCenter(1) = y1: ptCenter(2) = h1
   
   
    Dim objCircle(0) As AcadEntity
    Set objCircle(0) = AddCircle(ptCenter, r1)          ' 创建拉伸截面
   
    ' 创建面域
    Dim objRegion As Variant
    objRegion = ThisDrawing.ModelSpace.AddRegion(objCircle)
    objCircle(0).Delete
   
    Dim objLine As AcadLine, pt(2) As Double
    pt(0) = x2
    pt(1) = y2
    pt(2) = h2
    Set objLine = AddLine(ptCenter, pt)               ' 创建拉伸路径
   
    ' 沿路径拉伸面域
    Dim objSolid As Acad3DSolid
    Set objSolid = ThisDrawing.ModelSpace.AddExtrudedSolidAlongPath(objRegion(0), objLine)
    objLine.Delete
   
    ' 删除已无用的面域
    Dim ent As AcadEntity
    If ThisDrawing.ModelSpace.Count > intCount Then
        Set ent = ThisDrawing.ModelSpace.Item(ThisDrawing.ModelSpace.Count - 2)
        ent.Delete
    End If

大概这样,有些是自定义命令

发表于 2008-9-16 10:15 | 显示全部楼层
画一条直线!取两端点!即可!另外渲染的铜棒还真好看!
发表于 2008-9-16 12:06 | 显示全部楼层
junhua兄,你的程序里应该还要增加改变面域的normal的语句,使面域的法向向量与直线相同。否则当直线不是竖直的时候,拉伸出来的不是圆柱。
发表于 2012-9-21 10:14 | 显示全部楼层
小法师 发表于 2008-9-16 12:06
junhua兄,你的程序里应该还要增加改变面域的normal的语句,使面域的法向向量与直线相同。否则当直线不是竖 ...

法师师兄,你有比较完整的程序么?能否给小弟参考参考,拜谢啦
发表于 2014-6-20 17:00 | 显示全部楼层
这个不错,收藏了,谢谢楼主
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-9 01:58 , Processed in 0.359517 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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