QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
本帖最后由 woaishuijia 于 2012-3-22 06:54 编辑
3 k: ^; Q! \: D
0 `" B8 e  w9 o$ d* [我想绘制一个沿着圆周移动的多边形,自己写了个lsp,但是运行就是没有出现效果.# w6 E  k: c! g0 I9 Q2 E
我写的lsp代码如下,运行结果如图所示,请问哪里出问题了?
4 d# g  R$ t5 }, Q
  1. ;绘制沿圆周移动的多边形
    0 P1 |4 x) f! d2 g7 K
  2. ;basepoint 基准圆心
    9 Y8 \0 D& H3 n7 ?
  3. ;baseradius 基准圆半径
    ; d3 V/ h# h2 Y6 o7 F& ~' f
  4. ;cenpoint 多边形内切圆圆心
    & u' j9 p6 K; y
  5. ;pointx 多边形内切圆圆心x坐标
    $ d2 ~- e. m7 n/ D9 Z4 z* k8 ~+ ]
  6. ;pointy 多边形内切圆圆心y坐标, p9 b( ]9 b) ?. a; K3 ^% E
  7. ;plgnum 多边形边数
    % J7 D4 }6 r* q8 @* R, u0 I' U
  8. ;plgradius 多边形内切圆半径
    5 ]: R  F5 E  j. C/ @, m+ E+ x) Z
  9. (defun c:movetocircle (/ basepoint baseradius cenpoint pointx pointy plgnum plgradius)8 _& `) j5 R' p% X
  10.   (setq plgnum (getint "请输入绘制的正多边形边数:"))
    , @: W  r; c6 A4 i) Y% J. d& H
  11.   (setq plgradius (getint "请输入绘制的正多边形内切圆半径:"))4 i- {3 ^: R- v
  12.   (setq basepoint (list 0 0))
    ; |, a0 Q, z1 \
  13.   (setq baseradius 4)( j3 ~% L5 o9 N" A$ ~
  14.   (command "circle" basepoint baseradius)
    4 S% [! j7 E! c; P3 H
  15.   (setq pointx -4.0 step 0.2)5 G0 J& ~. K- R( s: J) R
  16.   (while (< pointx 4.0)( k1 \  Z& J+ t# ~$ Z; R
  17.     (setq pointy (sqrt (- (* baseradius baseradius) (* pointx pointx))))
    4 w: K1 {2 ?5 g" S) ^( \
  18.     (setq cenpoint (list pointx pointy))0 E5 I) l8 K4 k! t
  19.     (command "polygon" plgnum cenpoint "i" plgradius)
      g2 f" |+ i/ W
  20.     (setq pointx (+ pointx step))) D2 h& i% Z3 A3 ]5 V) k* J2 _
  21.   )
    2 {, e  ]0 q% x+ s& A, n) i5 c$ i/ h
  22.   (prompt "draw polygon over!"); i4 P4 p' K0 j9 w  k
  23. )
    $ c$ `9 b- {( I- S$ h2 R
复制代码
( `  R5 S) N2 G' k5 e6 N# G
运行输入多边形边数:53 o8 T* p" K4 Z8 ^+ O- U/ }% q
运行输入多边形内切圆半径:2
5 [  r( K8 M& b4 Z9 {- ?- y' K/ P
0 W1 J$ ?3 X' A# R9 B, z; A1 z效果图如下:
" _/ b9 p4 b, P  d% \. n( n d462853510497b9b91ef397b.jpg 9 r9 f! x* B3 y
* m1 \+ j" y# s4 R3 m& U
我希望的效果是沿着外面的圆周绘出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 )

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