【问题标题】:White gridlines over image using JES (python)使用 JES(python)在图像上添加白色网格线
【发布时间】:2014-06-17 05:32:54
【问题描述】:

如何使用 JES 编写程序在水平方向的图像上绘制“白色”网格线 网格线相隔 10 个像素,垂直网格线相隔 20 像素?

【问题讨论】:

    标签: python line draw jython jes


    【解决方案1】:

    是的,令人惊讶的是,addLine(picture, startX, startY, endX, endY) 只能画黑线!?

    所以让我们自己动手吧。这是一个非常基本的实现:

    def drawGrid(picture, color):
    
      w = getWidth(picture)
      h = getHeight(picture)
    
      printNow(str(w) + " x " + str(h))
    
      w_offset = 20  # Vertical lines offset
      h_offset = 10  # Horizontal lines offset
    
      # Starting at 1 to avoid drawing on the border
      for y in range(1, h):     
        for x in range(1, w):
          # Here is the trick: we draw only 
          # every offset (% = modulus operator)
          if (x % w_offset == 0) or (y % h_offset == 0):
            px = getPixel(picture, x, y)
            setColor(px, color)
    
    
    file = pickAFile()
    picture = makePicture(file) 
    # Change the color here
    color = makeColor(255, 255, 255) # This is white
    drawGrid(picture, color)
    show(picture)
    

    注意:这也可以使用函数 drawLine() 更有效地实现,来自给定的脚本here


    输出:


    .......................


    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-10
      • 1970-01-01
      • 2021-09-22
      • 1970-01-01
      相关资源
      最近更新 更多