如何在JES中对角线镜像

时间:2016-03-20 06:01:33

标签: python jes

我是这个网站的新手,也是jython / python编程的新手。所以我为这篇文章中的任何错误道歉。 我的问题: 我目前正在学习在Jy(Jython Environment for Students)的Jython程序中镜像图像,我有一个问题要求沿对角线镜像一个图像。经过研究(主要是在这个网站上),我想出了这个代码来做到这一点:

 def mirrorDiagonalBlueMotorcyle(pic):
    # Set up source picture & target picture
    height=getHeight(pic)
    width=getWidth(pic)
    newPic=makeEmptyPicture(height,width)
    # Now for the actual mirroring
    mirrorPoint=0
    for x in range(0,width,1):
      for y in range(mirrorPoint,height):
        sourcePixel=getPixel(pic,y,x)
        targetPixel=getPixel(newPic,x,y)
        color=getColor(sourcePixel)
        setColor(targetPixel,color)
        mirrorPoint+= 1
    show(newPic)
    return newPic 

但是,生成的图像不是镜像图像,而是在对角线上白色的图像

如何编写程序以实际镜像图像而不仅仅是图像的白色部分?

编辑: 这是PM 2Ring告诉我做的事情的结果: Motorcycle after removing the mirrorPoint

1 个答案:

答案 0 :(得分:0)

罪魁祸首是mirrorPoint:它确保只有对角线一侧的源图像区域才会被镜像。所以摆脱mirrorPoint的东西,并将你的内循环改为

for y in range(0,height):