QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
6天前
查看: 2462|回复: 2
收起左侧

[已答复] 关于沿着一个圆周画多边形的问题

[复制链接]
发表于 2012-3-21 14:46:03 | 显示全部楼层 |阅读模式 来自: 中国福建泉州

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
本帖最后由 woaishuijia 于 2012-3-22 06:54 编辑
, w) q2 s& N" \8 e6 W/ Y
) @; _7 e$ @) ?7 Z0 d% v0 g我想绘制一个沿着圆周移动的多边形,自己写了个lsp,但是运行就是没有出现效果.
9 s7 K' ~* k7 o2 \" c+ K2 h0 k我写的lsp代码如下,运行结果如图所示,请问哪里出问题了?
4 ?( P. J2 L/ @: {
  1. ;绘制沿圆周移动的多边形6 V9 q( v3 p* K* L
  2. ;basepoint 基准圆心1 H1 H8 `) a  \
  3. ;baseradius 基准圆半径
    ( b- \3 v! z/ o4 F
  4. ;cenpoint 多边形内切圆圆心
    3 ~; C+ o1 O: |; F1 \4 g
  5. ;pointx 多边形内切圆圆心x坐标3 `, ]% g2 m* j. R. P) `9 I
  6. ;pointy 多边形内切圆圆心y坐标  Y; M6 Z9 i- z4 r6 Y" d  l+ ]
  7. ;plgnum 多边形边数1 N0 k$ l- ^, ], m  S; B. b" H0 f
  8. ;plgradius 多边形内切圆半径1 {! {$ n/ D! M. S" n$ U, K; I
  9. (defun c:movetocircle (/ basepoint baseradius cenpoint pointx pointy plgnum plgradius)3 `9 J) s# F9 g7 V! ^) |
  10.   (setq plgnum (getint "请输入绘制的正多边形边数:"))0 K+ E4 |( Z3 A. R
  11.   (setq plgradius (getint "请输入绘制的正多边形内切圆半径:"))( N0 }' }& L: h. g9 R
  12.   (setq basepoint (list 0 0))2 I1 i( p9 M# f9 }4 O+ ^
  13.   (setq baseradius 4)4 [% x+ m4 _* Y' L2 ?5 @
  14.   (command "circle" basepoint baseradius)
    ( T; n& F) d) Y. Y1 ~( v
  15.   (setq pointx -4.0 step 0.2)
    ( M% ]. |0 ?: b. m
  16.   (while (< pointx 4.0)4 \, ^: Y4 o2 M$ x% {5 g
  17.     (setq pointy (sqrt (- (* baseradius baseradius) (* pointx pointx)))): G! @% }. N8 X8 a8 n  v6 A/ |. P3 f
  18.     (setq cenpoint (list pointx pointy))9 C5 X6 r: ]) h8 J' S: l, p
  19.     (command "polygon" plgnum cenpoint "i" plgradius)
    ( V6 ?" d" e: X2 J0 z& k
  20.     (setq pointx (+ pointx step))
    / j7 X6 H, G2 C. v6 Z3 C7 I
  21.   )
    ! P7 ?  F' y3 u0 L3 Z  W
  22.   (prompt "draw polygon over!")
    1 a  d/ l, _' p  ]" k  [' d! }5 I$ d
  23. )  Q1 V0 l& U, g* _
复制代码
2 r+ @$ K$ x: _! f
运行输入多边形边数:5
+ U5 u3 U, G! p& _/ L8 i- Y运行输入多边形内切圆半径:20 B; \1 S, S9 U) v5 Y5 h
) g: H( w% d. O! U+ ]5 B5 I
效果图如下:
' u* ^0 Z" ?. c d462853510497b9b91ef397b.jpg
0 ?9 j: s$ v( Q8 Y/ U: k8 d1 M9 |+ c, P" ~2 D1 v
我希望的效果是沿着外面的圆周绘出N个五边形,这个圆周就是这N个五边形内切圆的圆心的轨迹。请各位达人予以指点。
 楼主| 发表于 2012-3-21 19:35:03 | 显示全部楼层 来自: 中国福建泉州
怎么没有人给个解释呢?自己顶一下!
发表于 2012-3-22 13:22:16 | 显示全部楼层 来自: 中国辽宁
关掉"对象捕捉"
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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