<総評>
全般的に言って折角 CGCanvas を作っているのに,スクリーン座標系で考えている人が多かった.
CGCanvasを使うには,とにかくワールド座標系にすることが大事.
mousePressedされてときの座標値も,すぐにワールド座標系に変換して,
ワールド座標系のなかで作業した方が良い.

<Javaプログラムについて - 1>
・なぜpublic static void main(String[] args)のString[] argsがないとならないか不明。
↓
Javaのメソッドは,メソッド名だけでなく,引数や返り値の型を含めたシグネチャで区別されるため.

<Javaプログラムについて - 2>
・以下のエラーで実行できなかった。
  CGDrawOval.java:28: シンボルを見つけられません。
  シンボル: メソッド drawCircle(java.awt.Graphics,Vector2D,int)
  場所	: java.awt.Graphics の クラス
  g.drawCircle(g,point(startX-r,startY-r),r*2);
  ^
  エラー 1 個
↓
Javaのメソッドでは,シンボルというとメソッド名だけではなく,
引数や返り値の型も含んだシグネチャが一致しないと同一シンボルと見なされない.
g.drawCircle(int, int, int, int)でないといけない

<Javaプログラムについて - 3>
・ちょっと疑問なのですが、CGCanvasファイルの中でこれ(注: java.awt.event.* など)をインポートしているのに
どうしてそれの下位クラスでまたインポートしないといけないのでしょうか?
↓
(コンパイルする際に)プログラム内で利用されているクラスの所在を明確にしないといけない.
今回のプログラム中では,MouseAdapterやMouseEventなどのクラスを利用しているので,importは欠かせない