本文整理汇总了Python中edge.Edge.neighbor方法的典型用法代码示例。如果您正苦于以下问题:Python Edge.neighbor方法的具体用法?Python Edge.neighbor怎么用?Python Edge.neighbor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类edge.Edge
的用法示例。
在下文中一共展示了Edge.neighbor方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: insertParabola
# 需要导入模块: from edge import Edge [as 别名]
# 或者: from edge.Edge import neighbor [as 别名]
def insertParabola(self, p):
if not p:
raise Exception("p is None")
exit(-1)
if not self.root:
self.root = parabola.Parabola(p.copy())
self.fp = p.copy()
return
if self.root.isLeaf and self.root.site.y - p.y < 0.01:
self.root.isLeaf = False
self.root.setLeft(parabola.Parabola(self.fp.copy()))
self.root.setRight(parabola.Parabola(p.copy()))
s = Point((p.x + self.fp.x) / 2.0, self.height)
if p.x > self.fp.x:
self.root.edge = Edge(s, self.fp.copy(), p.copy())
else:
self.root.edge = Edge(s, p, self.fp.copy())
return
par = self.getParabolaByX(p.x)
if par.event:
self.queue.remove(par.event)
par.event = None
start = Point(p.x, self.getY(par.site, p.x))
e1 = Edge(start, par.site, p)
er = Edge(start, p, par.site)
e1.neighbor = er
self.edges.append(e1)
par.edge = er
par.isLeaf = False
p0 = parabola.Parabola(par.site.copy())
p1 = parabola.Parabola(p.copy())
p2 = parabola.Parabola(par.site.copy())
par.setRight(p2)
par.setLeft(parabola.Parabola(None))
par.left.edge = e1
par.left.setLeft(p0)
par.left.setRight(p1)
print "checking circles"
self.checkCircle(p0)
self.checkCircle(p2)