iCAx开思网

标题: 无草图全参数正N角星/正N边形的一种简单做法 [打印本页]

作者: maizhy    时间: 2009-8-2 13:07
标题: 无草图全参数正N角星/正N边形的一种简单做法
前一阵同事出个题目需要画正N角星,大多数人都用草图,这里有一种不画草图,也不必用三角函数计算点坐标的方法,权当抛一块砖,希望大家能讨论下有没有更简便的方法。我做的步骤大概是:
1.建立参数:
  D(Length):N角星外接圆
  N(Integer):N个角
  t1(Real):  D与N角星底部小圆之比,控制N角星的角形状的
  TYPE(String):N角星的类型,有规则/不规则N角星、正N多边形三个值(也可以多设几种类型)
  t(Real):当TYPE为不规则N角星时的t1值
2. 在XY平面上建立两个直径分别为D和D*t1的同心半圆(圆1和圆2)
3. 在圆1上ratio为2/N处建立点2
    在圆2上ratio为1/N处建立点3
4. Polyline依次连接圆1端点、点3、点2
5. 圆形阵列上面生成的Polyline,阵列参数都要由N控制
    这样一个正N角星就完成了

本帖最后由 maizhy 于 2009-8-2 13:39 编辑
作者: maizhy    时间: 2009-8-2 13:31
再在知识工程里建立一个Rule,结果就可以用D、N、TYPE、t几个参数任意控制正N角星或N边形的形状了

本帖最后由 maizhy 于 2009-8-2 14:44 编辑
作者: ch_j1985    时间: 2009-8-2 14:27
有时间研究下……
作者: ldf4513    时间: 2009-8-3 13:40
要好好试一下,太好了
作者: 王宇铖    时间: 2013-12-14 19:30
本帖最后由 王宇铖 于 2013-12-15 01:12 编辑
maizhy 发表于 2009-8-2 13:31
再在知识工程里建立一个Rule,结果就可以用D、N、TYPE、t几个参数任意控制正N角星或N边形的形状了

本帖最 ...

谢谢您的指导!!!但好像这样只能做五边形的,要N边形 N>=3的话,
这段“3. 在圆1上ratio为2/N处建立点2
        在圆2上ratio为1/N处建立点3”
这两个好像要改成
“3. 在圆1上ratio为1/N处建立点2
     在圆2上ratio为0.5/N处建立点3
    (把极值点要调成统一轴向统一最值或相反轴向相反最值)”
请指导!!!
[attach]1189904[/attach]
[attach]1189902[/attach][attach]1189903[/attach]





欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3