本文整理汇总了Python中Polygon.addContour方法的典型用法代码示例。如果您正苦于以下问题:Python Polygon.addContour方法的具体用法?Python Polygon.addContour怎么用?Python Polygon.addContour使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Polygon
的用法示例。
在下文中一共展示了Polygon.addContour方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: remove_short_lines
# 需要导入模块: import Polygon [as 别名]
# 或者: from Polygon import addContour [as 别名]
def remove_short_lines(self, minlen = 1):
minlen*=minlen
newp = Polygon()
c=-1
for cont in self.poly:
c+=1
#cont=self.poly[0]
keeplist = []
lastp = None
pindex = -1
for p in cont:
pindex+=1
if lastp:
#check here
xd = p[0]-lastp[0]
yd = p[0]-lastp[0]
td = xd*xd+yd*yd
if td < minlen:
pass
#lastp = None
else:
keeplist.append(p)
lastp = p
else:
keeplist.append(p)
lastp = p
ishole = self.poly.isHole(c)
newp.addContour(keeplist,ishole)
self.poly = newp
示例2: remove_some_pts
# 需要导入模块: import Polygon [as 别名]
# 或者: from Polygon import addContour [as 别名]
def remove_some_pts(self, prop=.9):
newp = Polygon()
c=-1
for cont in self.poly:
c+=1
cr = reducePoints(cont,int(len(cont)*prop))
ishole = self.poly.isHole(c)
if len(cr)>2:
newp.addContour(cr, ishole)
parea = self.poly.area()
nparea = newp.area()
#areadiff = math.fabs(nparea-parea)
arearatio = parea/nparea
arearatio = math.fabs(arearatio-1)
#print areadiff, arearatio
if arearatio < 0.1:
self.poly = newp
示例3: from_spline
# 需要导入模块: import Polygon [as 别名]
# 或者: from Polygon import addContour [as 别名]
def from_spline(self, points):
newp = Polygon()
#print points
newp.addContour(points)
self.poly = newp
示例4: updateBbox
# 需要导入模块: import Polygon [as 别名]
# 或者: from Polygon import addContour [as 别名]
# for each contour in the jpoly
for c in contours:
# remove last redundant coordinate from each contour
# (Tangram doesn't like this - it needs the last coordinate
# to draw the last face properly)
# del c[-1]
# for each vertex
# for v in c:
# offset all verts in tile to arrange in scenespace
# this isn't necessary when the data is coming straight from the json,
# only when the data is coming from a tangram vbo
# v = [v[0]+(4096*(tilemax[0]-tile.x)), v[1]+(4096*(tilemax[1]-tile.y))]
poly.addContour(c)
# update tile's bbox with contour's bbox
t.bbox = updateBbox(t.bbox, list(poly.boundingBox()))
poly.tile = t
t.polys.append(poly)
printStatus("100%")
# make a list of all polys
# this list comprehension is the same as the nested for loops below
# neat, eh? ...but harder to read :/
# polys = [p for t in tiles for p in t.polys]