QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 2497|回复: 2
收起左侧

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

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

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

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

x
本帖最后由 woaishuijia 于 2012-3-22 06:54 编辑
  ~% R" y6 S; U/ L7 h2 A
) @( a" [" u4 J我想绘制一个沿着圆周移动的多边形,自己写了个lsp,但是运行就是没有出现效果.
4 J+ }* U' l, F8 q- A' @我写的lsp代码如下,运行结果如图所示,请问哪里出问题了?
2 m3 \0 Y" g9 `8 f& X
  1. ;绘制沿圆周移动的多边形& k0 C% G+ L$ N: D/ [
  2. ;basepoint 基准圆心
    9 G" Y/ p4 W6 ~+ c4 u- ?
  3. ;baseradius 基准圆半径
    1 _/ w3 q2 O' s) A& H: K
  4. ;cenpoint 多边形内切圆圆心) J! o; y  ~' @
  5. ;pointx 多边形内切圆圆心x坐标4 W; R( e- j& q5 x2 L7 `( L9 j
  6. ;pointy 多边形内切圆圆心y坐标
    # S' ]9 r  H. C6 N
  7. ;plgnum 多边形边数6 e# i6 H  p) c, t6 `( h
  8. ;plgradius 多边形内切圆半径
    ; R4 @5 ]0 S0 V3 k# b) L! p3 _& j
  9. (defun c:movetocircle (/ basepoint baseradius cenpoint pointx pointy plgnum plgradius)
    $ d" C( v2 X6 v; [& W
  10.   (setq plgnum (getint "请输入绘制的正多边形边数:"))$ h  B2 D$ ~. T& v
  11.   (setq plgradius (getint "请输入绘制的正多边形内切圆半径:"))
    * s6 l0 X- L& v  V0 _: K
  12.   (setq basepoint (list 0 0))( \; E4 ]8 ~, S! j2 O5 q( Z1 @3 S
  13.   (setq baseradius 4)1 }: y* J* X0 p
  14.   (command "circle" basepoint baseradius); c; L& h4 V/ `) }. q
  15.   (setq pointx -4.0 step 0.2)
    " n( j0 \+ [# D# X! B/ X2 t' s+ W
  16.   (while (< pointx 4.0)8 ]) c/ t/ ^  Y$ g& `
  17.     (setq pointy (sqrt (- (* baseradius baseradius) (* pointx pointx))))
    4 N+ ^4 R, H4 R# W2 K) ]
  18.     (setq cenpoint (list pointx pointy))
    . b7 X4 g) k1 V6 [7 u9 q$ a5 k; q+ b2 K
  19.     (command "polygon" plgnum cenpoint "i" plgradius)
    - Q  @% I/ I' U2 e6 ~
  20.     (setq pointx (+ pointx step))
    - t$ g- v$ c2 r' d  ]# I
  21.   )
    . o4 {# J) _8 w# J( `' S
  22.   (prompt "draw polygon over!"): F# s2 I, S6 o0 p0 ?. q( K, |
  23. )
    4 x% b5 {& o! _; A" m; A
复制代码
0 z$ W2 v0 z1 g/ V
运行输入多边形边数:5
: _3 x1 v2 h  _7 `运行输入多边形内切圆半径:2* p# m" b; |; _
9 s' U7 `4 t5 s6 T
效果图如下:
7 O) u* q9 v$ a6 p7 H d462853510497b9b91ef397b.jpg , O) B; X* d; h6 X5 `2 }3 K0 c
. j  {  _* j$ @$ g
我希望的效果是沿着外面的圆周绘出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 )

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