qdlover 发表于 2006-7-25 11:42:00

[求助]根据凸度求圆弧上点坐标

<P>凸度我知道了</P>
<P><A href="dispbbs.asp?BoardID=4&amp;ID=4022" target="_blank" >dispbbs.asp?BoardID=4&amp;ID=4022</A></P>

<P>现在我想根据两点坐标跟第一个点的凸度</P>
<P>根据圆心夹角求之间圆弧上的点坐标</P>
<P>比如,两个点的圆心夹角为60度,那么我想求夹角之间10,20,30,40,50度的时候圆弧上的点坐标,该怎么做?</P>
<P>请哪个大哥给我个数学公式,万分感谢</P>

zxq651007z 发表于 2006-7-25 14:59:00

没看明白,画个图

qdlover 发表于 2006-7-26 13:58:00

<P>大概画了个,不太准确,明白了吗?</P>

liub1979 发表于 2006-8-3 13:34:00

<P>三角函数</P>

LONGXIN 发表于 2006-8-3 17:14:00

<P>;;vx1:起点<BR>;;vx2:终点<BR>;;blg:凸度<BR>;;ag:夹角,以度为单位<BR>(defun xl (VX1 VX2 BLG ag / ARCRAD CENDIR HLFANG ang mp cp)<BR>&nbsp; (setq&nbsp;ang&nbsp;&nbsp;&nbsp; (angle vx1 vx2)<BR>&nbsp;HLFANG (* 2 (atan BLG))<BR>&nbsp;CENDIR ((if (&lt; BLG 0)<BR>&nbsp;&nbsp;&nbsp; -<BR>&nbsp;&nbsp;&nbsp; +<BR>&nbsp;&nbsp;)<BR>&nbsp;&nbsp; (- ang HLFANG)<BR>&nbsp;&nbsp; (/ pi 2)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )<BR>&nbsp;ARCRAD (abs (/ (/ (distance VX1 VX2) 2.0) (sin HLFANG)))<BR>&nbsp;cp&nbsp;&nbsp;&nbsp;&nbsp; (polar VX1 CENDIR ARCRAD)<BR>&nbsp;ang (angle cp vx1)<BR>&nbsp; )<BR>&nbsp; (if (&lt; blg 0)<BR>&nbsp;&nbsp;&nbsp; (setq ang (- ang (* pi (/ ag 180))))<BR>&nbsp;&nbsp;&nbsp; (setq ang (+ ang (* pi (/ ag 180))))<BR>&nbsp; )<BR>&nbsp; (polar cp ang ARCRAD)<BR>)<BR></P>

qdlover 发表于 2006-8-10 17:51:00

<P>to <A name=26504><FONT color=#000066><B>LONGXIN</B></FONT></A> :</P>
<P>&nbsp;</P>
<P>请问你的这些函数都是做什么的啊?我看不懂。。</P>
<P>&nbsp;</P>

Andeqin 发表于 2006-8-16 21:50:00

唉!原来我什么都不懂啊!

Joseflin 发表于 2006-8-18 08:36:00

<P>希望没有误解你的意思。 我的方法很简单,不须写程式:</P>
<P>1.把弧画好</P>
<P>2.以MOVE →obj=弧&nbsp; bas=A&nbsp; rarget=A设定之座标 </P>
<P>3. 以ID →查询其余各点的座标</P>
页: [1]
查看完整版本: [求助]根据凸度求圆弧上点坐标