C#ATIA

↑タイトル詐欺 主にCATIA V5 の VBA(最近はPMillマクロとFusion360APIが多い)

樹木曲線も作りたかったのに

こちらの続きです。
コッホ曲線を描く - 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の逆数を発見したのだろうか?
(業務が異常に忙しい・・・)