如果你有一个2D圆圈坐在一个3D空间内,你指着一个虚拟摄像机,那么投影会是什么样子?它总是椭圆形吗?有没有一种简单的方法来计算这个椭圆?
我怎么能在java中写这个 e.g。
class Point3D {
int x,y,z;
}
class RotatedEllipse extends Ellipse2D.Double {
double rotation;
}
public static RotatedEllipse circleProjection(Point3D center, int radius, Point3D normalVector, Camera camera) {
...
return new RotatedEllipse(...);
}