如果我有两个java.awt.geom.Area由各种简单形状(多边形和椭圆形)组合而成,那么有没有一种方法可以找到两个区域之间的距离(即最近距离)?
澄清一下:假设我有两个任意区域,每个区域都是从任何形状的形状联合创建的:
//Define the first area
Area a = new Area(new Ellipse2D.Double(50, 50, 100, 100));
a.add(new Area(new Rectangle2D.Double(100, 100, 100, 100)));
//Define the second area
Area b = new Area(new Ellipse2D.Double(200, 300, 100, 100));
b.add(new Area(new Ellipse2D.Double(250, 250, 100, 100)));
Run Code Online (Sandbox Code Playgroud)
我想要的是一种方法getDistance(Area a, Area b),它给我一个双重表示区域a中的任何点与区域b中的任何点之间的最短距离.这是上面两个区域的图像,蓝色的线条表示我感兴趣的距离:

有没有办法做到这一点?如果没有,我该如何实施呢?
假设我们想要向一个函数添加类型提示,该函数使用带星号的参数将一堆整数加在一起:
def add_integers(*integers):
return sum(integers)
Run Code Online (Sandbox Code Playgroud)
给出整数类型是正确的做法吗,因为这就是每个单独的参数的类型?
def add_integers(*integers: int):
return sum(integers)
Run Code Online (Sandbox Code Playgroud)
...或者给出结果变量的类型,最终成为整数序列(元组)?
def add_integers(*integers: Sequence[int]):
return sum(integers)
Run Code Online (Sandbox Code Playgroud) 我一直试图了解如何在 Python 中指定类方法的返回类型,以便即使对于子类也能正确解释(例如在我的 Sphinx 文档中)。
假设我有:
class Parent:
@classmethod
def a_class_method(cls) -> 'Parent':
return cls()
class Child(Parent):
pass
Run Code Online (Sandbox Code Playgroud)
a_class_method如果我希望它是Parent为父母和Child孩子的,我应该指定什么作为返回类型?我也试过__qualname__,但这似乎也不起作用。我应该不注释返回类型吗?
提前致谢!
python ×2
area ×1
class-method ×1
distance ×1
inheritance ×1
java ×1
shape ×1
type-hinting ×1
typing ×1