こちらの続きです。
コッホ曲線を描く - C#ATIA
中央付近にある、樹木曲線もCATVBA化しようと思ったのですが
エラーになりました。
よく見るとオリジナルのコードですが
・・・ public void paint(Graphics g){ //3対の点を指定します Point P=new Point(100,400); Point Q=new Point(100,100); ・・・
で、点の座標値を設定し
・・・ //それぞれの対をなす2点間に樹木曲線を描きます g.setColor(Color.blue); drawTree(g,P,Q,3); ・・・
先程の2点をdrawTree関数に投げてます。
・・・ //樹木曲線を描くメソッド public void drawTree(Graphics g,Point a,Point b,int n){ ・・・ xx=b.x-a.x; yy=-(b.y-a.y); angle1=Math.atan((double)yy/xx)+Math.PI/6; ・・・
drawTree関数側では "xx" を求めるのに、お互いのx座標値の
差分を取得してます。
その後、 "angle1" を求める際、先程の "xx" で割っているのですが、
最初に設定した座標値のお互いの差分は "0" なのです。(100-100)
つまり、余裕でゼロ除算でエラーと言うわけです。 なんでだろう?
JAVAは 0の逆数を発見したのだろうか?
(業務が異常に忙しい・・・)