【问题标题】:Decenter an image on python在 python 上使图像偏心
【发布时间】:2020-03-03 06:13:03
【问题描述】:

我想在我的程序中使图像偏心。如您所见,我将边框设置为-230、-300,但我放置为背景的图像居中。我想把它放在边界内。

    #SET UP WINDOW
    wn = turtle.Screen()
    wn.bgcolor("black")
    wn.title("x")
    wn.setup(width=800, height=800)
    wn.bgpic("spacebg.png")


    #DRAW GAME BORDER
    border_pen = turtle.Turtle()
    border_pen.speed(0)
    border_pen.color("white")
    border_pen.penup()
    border_pen.setposition(-230, -300)
    border_pen.pendown()
    border_pen.pensize(3)
    for side in range(4):
        border_pen.fd(600)
        border_pen.lt(90)
    border_pen.hideturtle()

【问题讨论】:

  • 你的 spacebg.png 的分辨率是多少?也许您需要将其填充为 800 x 800

标签: python image turtle-graphics


【解决方案1】:

由于图像始终以(0, 0) 为中心,我们可以使用setworldcoordinates() 更改(0, 0) 的位置:

import turtle

# SET UP WINDOW
wn = turtle.Screen()
wn.bgcolor('black')
wn.title("x")
wn.setup(width=800, height=800)
wn.setworldcoordinates(-470, -400, 330, 400)  # 70 pixel shift
wn.bgpic("spacebg.png")

# DRAW GAME BORDER
border_pen = turtle.Turtle()
border_pen.speed('fastest')
border_pen.color('white')
border_pen.pensize(3)

border_pen.penup()
border_pen.setposition(-300, -300)
border_pen.pendown()

for side in range(4):
    border_pen.fd(600)
    border_pen.lt(90)

border_pen.hideturtle()

wn.mainloop()

【讨论】:

  • 非常感谢。发布请求后几个小时,我找到了这个解决方案。我很难理解坐标是如何工作的!
猜你喜欢
  • 1970-01-01
  • 2016-09-27
  • 1970-01-01
  • 1970-01-01
  • 2020-10-06
  • 1970-01-01
  • 2011-08-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多