问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在AutoCAD中怎样画“阿基米德螺旋线”? 赏分400分

发布网友 发布时间:2022-04-25 03:43

我来回答

4个回答

热心网友 时间:2023-10-23 21:25

如何绘制三维螺旋线(3dspiral)和平面螺旋线即阿基米德螺旋线(spiral):①将Autodesk公司网站 http://www.icad.com.cn/icad/share/autocadtool.htm 打开上述网页,点击其中的:3dspiral.zip 用于螺旋线的绘制上的可下载软件:“3dspiral.Lsp”复制到自己计算机硬盘下的“某”文件夹中;②打开AutoCADR14或R2000绘图界面,利用tool下拉式菜单(Autolisp)load Application命令加载(Load)“3dspiral.Lsp”应用软件程序;③人工键入命令(Command): 3dspiral (按回车键)---绘制三维螺旋线; spiral (按回车键)---绘制二维螺旋线(即阿基米德螺旋线)④按照自己的设计意图可连续回答该软件设置的6项提问后,就能画出较理想的各种螺旋线:即绘制弹簧的路径(Path)。

热心网友 时间:2023-10-23 21:26

在AUTOCAD里按ALT+F11
打开VBA窗口,把下面的程序全粘进去, 参数自己设
在AUTOCAD里运行宏,或在VBA窗口里点那个运行的三角号

Const pi As Double = 3.1415926
Const AngStart As Double = 0 '起始角度
Const AngEnd As Double = 720 '终止角度
Const nPoints As Long = 4000 '总计点数
Const a As Double = 1

'极坐标转换函数
Function CoordConv(ByRef x As Double, ByRef y As Double, ByVal r As Double, ByVal angle As Double)
x = r * Sin(angle * pi / 180)
y = r * Cos(angle * pi / 180)
End Function
'主程序
Sub Main()
Dim points(nPoints * 3 + 2) As Double
Dim n As Long
Dim b As Boolean
Dim x As Double
Dim y As Double
Dim r As Double
Dim ang As Double

n = 0
For ang = AngStart To AngEnd Step (AngEnd - AngStart) / nPoints
'曲线的极坐标公式 r=a*θ
r = a * (ang / 2 / pi)
b = CoordConv(x, y, r, ang)
points(n) = x
points(n + 1) = y
points(n + 2) = 0
n = n + 3
Next ang
'画多线段
ThisDrawing.ModelSpace.AddPolyline (points)

End Sub

热心网友 时间:2023-10-23 21:26

新建一个文本文件 把下面的代码复制到文件 保存为 .lsp
; 3DSPIRAL.LSP

(defun myerror (s)
(if (/= s "function cancelled")
(princ (strcat "\nError: " s))
)
(setvar "cmdecho" ocmd)
(setvar "blipmode" oblp)
(setq *error* olderr)
(princ)
)

(defun cspiral (ntimes bpoint hfac lppass strad vfac
/ ang dist tp ainc dhinc dvinc circle dv)

(setvar "blipmode" 0)
(setvar "cmdecho" 0)
(setq circle (* 3.141596235 2))
(setq ainc (/ circle lppass))
(setq dhinc (/ hfac lppass))
(if vfac (setq dvinc (/ vfac lppass)))
(setq ang 0.0)
(if vfac
(setq dist strad dv 0.0)
(setq dist 0.0)
)
(if vfac
(command "3dpoly")
(command "mline" bpoint)
)
(repeat ntimes
(repeat lppass
(setq tp (polar bpoint (setq ang (+ ang ainc))
(setq dist (+ dist dhinc))
)
)
(if vfac
(setq tp (list (car tp) (cadr tp) (+ dv (caddr tp)))
dv (+ dv dvinc)
)
)
(command tp)
)
)
(command "")
(princ)
)

(defun C:SPIRAL (/ olderr ocmd oblp nt bp cf lp)
;;;;(setq olderr *error*
;;;; *error* myerror)
(setq ocmd (getvar "cmdecho"))
(setq oblp (getvar "blipmode"))
(setvar "cmdecho" 0)
(initget 1) ; bp must not be null
(setq bp (getpoint "\nCenter point: "))
(initget 7) ; nt must not be zero, neg, or null
(setq nt (getint "\nNumber of rotations: "))
(initget 3) ; cf must not be zero, or null
(setq cf (getdist "\nGrowth per rotation: "))
(initget 6) ; lp must not be zero or neg
(setq lp (getint "\nPoints per rotation <30>: "))
(cond ((null lp) (setq lp 30)))
(cspiral nt bp cf lp nil nil)
(setvar "cmdecho" ocmd)
(setvar "blipmode" oblp)
(setq *error* olderr) ; Restore old *error* handler
(princ)

)

;;;
;;; Interactive spiral generation
;;;

(defun C:3DSPIRAL (/ olderr ocmd oblp nt bp hg vg sr lp)
;;;;(setq olderr *error*
;;;; *error* myerror)
(setq ocmd (getvar "cmdecho"))
(setq oblp (getvar "blipmode"))
(setvar "cmdecho" 0)
(initget 1) ; bp must not be null
(setq bp (getpoint "\nCenter point: "))
(initget 7) ; nt must not be zero, neg, or null
(setq nt (getint "\nNumber of rotations: "))
(initget 7) ; sr must not be zero, neg, or null
(setq sr (getdist bp "\nStarting radius: "))
(initget 1) ; cf must not be zero, or null
(setq hg (getdist "\nHorizontal growth per rotation: "))
(initget 3) ; cf must not be zero, or null
(setq vg (getdist "\nVertical growth per rotation: "))
(initget 6) ; lp must not be zero or neg
(setq lp (getint "\nPoints per rotation <30>: "))
(cond ((null lp) (setq lp 30)))
(cspiral nt bp hg lp sr vg)
(setvar "cmdecho" ocmd)
(setvar "blipmode" oblp)
(setq *error* olderr) ; Restore old *error* handler
(princ)

)

(princ "\n\tC:SPIRAL and C:3DSPIRAL loaded. ")
(princ)

在CAD 下用命令 load 加载你保存的文件 后
使用命令 3dspiral
OK

热心网友 时间:2023-10-23 21:27

绘图里有螺旋工具啊,怎么还出来这么多方法?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
蒲公英不只是“天然抗生素”,常泡水喝有8个好处,但注意3个禁忌_百度... 蒲公英茶的功效与作用,抗菌笑容和美容养颜/清热去火 喝蒲公英水可以去火吗 伦敦看展实录-Damien Hirst 做个俗人,贪财“好色”,说的便是达明安·赫斯特 瓷砖抗静电地板 Win10共享硬盘访问不了怎么办 何为《老师对我说》读后感150 有本小说里写的师生恋发生在大学里,老师让学生写何为勇者 学生只写了5... 白酒能泡洋葱吗 20周岁可不可以办信用卡 女生20周岁可以办理结婚证吗 在proe中怎样画阿基米德曲线? 今年20岁了可以办信用卡吗 proe怎么画阿基米德螺旋线并准确控制起始点? 20岁是不是就可以领结婚证? 20岁能办信用卡吗,要些什么 阿基米德曲线长度 现在男生20岁可以领结婚证吗 20岁可以办信用卡么? 什么叫阿基米德曲线?方程是什么?其他资料也一起告诉我吧!!! 20岁可以办结婚证吗 什么是阿基米得线 我是20岁的,能办信用卡吗 男生20岁可以领结婚证吗 阿基米德曲线 男生20岁能办结婚证吗 昆明三九手机网买的小米手机怎么样? 昆明三九手机网供应商是谁啊? 企业向税务机关申报个人所得税的流程 用CAD画阿基米德螺旋线怎么画? 年龄20岁可以办理贷款吗 20岁能办信用卡么 旗舰版电池是什么意思 挑选假发小窍门都有什么? 男男女女电子书txt全集下载 求陈珊妮-男男女女歌曲免费百度云资源 怎样鉴别假发的质量? 男男女女爱情 如何评价《暗芝居7》这部影视作品? 男男女女、 求暗芝居系列的全集百度云呀!谢谢大佬们! 北京的男男女女 《暗芝居》它的集数堪比《柯南》吗? 男男女女的小说叫什么 看了暗芝居第二季第七集,我不经留下了眼泪。感触了很多,也明白了很 男男女女!我和妹妹 暗芝居死亡排行榜 暗芝居的各话标题 现在是21实际,人人平等(男女平等)!当今则不然,我们都知道现如今打工很多地方找男不找女,或女免费男