pengyh 发表于 2006-8-22 14:03:00

AcDbText的setRotation怎么得到的不是我预料的结果?

<P>我在添加一个AcDbText的对象的时候,我是这样做的</P>
<P>&nbsp;//设置显示字体</P>
<P>AcDbText&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*pText = new AcDbText(TextPos, strText);&nbsp;<BR>&nbsp;pText-&gt;setHeight(dHeight);<BR>&nbsp;pText-&gt;setRotation(dAngle);<BR>&nbsp;pText-&gt;setHorizontalMode(AcDb::kTextLeft);<BR>&nbsp;pText-&gt;setAlignmentPoint(TextPos);</P>
<P>&nbsp;pText-&gt;setTextStyle(TexStyleObjId);</P>
<P>&nbsp;我发现Text的部分属性是对的,可是对于角度这一项来说就不像我预料的那样,如果pText-&gt;setRotation(dAngle);dAngle为0结果是正确的,可是对于非0角度,则结果偏差很大,比如dAngle为90,那么添加后在CAD中发现其角度为117,百思不得其解,望大加帮忙,在此谢过!</P>

pengyh 发表于 2006-8-22 14:19:00

自己搞定了,回一下,给其它朋友一点经验,呵呵,实际上是由于我的一时大意,因为pText-&gt;setRotation();需要传入的角度为弧度,而我直接给了度数,所以非零度角都不等,记得给pText-&gt;setRotation(dAngle)函数的角度传入弧度,而不是度!<BR>
页: [1]
查看完整版本: AcDbText的setRotation怎么得到的不是我预料的结果?