0

私は動的データ表示DLLでMicrosoft Visual 2010を使用しています。角度と半径で点の周りに円を描く必要があります。私は成功しましたが、それは間違っていると思います。まず、私のソースコード:

mouseClick から prePs を取得しました (次の写真でわかるように、ポイントが完全に機能していることは問題ありません)。

 // Get the X position of the pointClicked
                    cx = (double)prePs.X;
                    // Get the Y position of the pointClicked
                    cy = double.Parse(this.plotter.Viewport.Transform.DataTransform.ViewportToData(prePs).Y.ToString());

                    // Get the new X position of the pointClicked by the angel with math calculation
                    xEndP = (float)(double.Parse(txt_enterRadius.Text.ToString()) * Math.Cos(a * Math.PI / 180F)) + cx;
                    // Get the new Y position of the pointClicked by the angel with math calculation
                    yEndP = (float)(double.Parse(txt_enterRadius.Text.ToString()) * Math.Sin(a * Math.PI / 180F)) + cy;

第二に、私が実際に得たもの: 中央では完全な円が得られましたが、北と南では円は楕円のタイプです. 写真:

http://sizmedia.com/my.php?i=hm2zuv5yyenj.png

喜んで理解します:なぜですか?いいですか?または、何かを変更する必要がありますか?私はそれについて考えたので、地球は円であり、そのタイプは合理的です.

4

0 に答える 0