Hướng dẫn how do you change the starting point of a turtle in python? - Làm thế nào để bạn thay đổi điểm xuất phát của một con rùa trong trăn?

9

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Làm cách nào để đặt startpos (topleft của quảng trường rùa của tôi) khi bắt đầu mã của tôi?

Và tôi không có nghĩa là nó bắt đầu từ giữa và sau đó đi đến vị trí đó.

Tôi muốn con rùa bắt đầu ở đó.

Hướng dẫn how do you change the starting point of a turtle in python? - Làm thế nào để bạn thay đổi điểm xuất phát của một con rùa trong trăn?

hỏi ngày 5 tháng 2 năm 2013 lúc 17:11Feb 5, 2013 at 17:11

1

Giải pháp

from turtle import Turtle, Screen

TURTLE_SIZE = 20

screen = Screen()

yertle = Turtle(shape="turtle", visible=False)
yertle.penup()
yertle.goto(TURTLE_SIZE/2 - screen.window_width()/2, screen.window_height()/2 - TURTLE_SIZE/2)
yertle.pendown()
yertle.showturtle()

screen.mainloop()
0 của Thomas Antony là khả thi (+1) nhưng đó là một chức năng khó khăn để làm việc (dễ dàng làm rối tỷ lệ khung hình của bạn.) Những người khác đã đề xuất một cái gì đó như:

penup()
goto(...)
pendown()

chỉ đơn giản là sai và/hoặc không đọc câu hỏi của bạn vì người dùng của bạn sẽ thấy con rùa di chuyển vào vị trí. Thật không may, câu hỏi của bạn không rõ ràng khi bạn nói, "Quảng trường rùa của tôi" vì không rõ bạn có nghĩa là cửa sổ, một hình vuông bạn vẽ hay một hình vuông bạn sắp vẽ.

Tôi sẽ cung cấp cho bạn giải pháp của tôi để bắt đầu ở phía trên bên trái của cửa sổ và bạn có thể điều chỉnh nó theo nhu cầu của bạn:

from turtle import Turtle, Screen

TURTLE_SIZE = 20

screen = Screen()

yertle = Turtle(shape="turtle", visible=False)
yertle.penup()
yertle.goto(TURTLE_SIZE/2 - screen.window_width()/2, screen.window_height()/2 - TURTLE_SIZE/2)
yertle.pendown()
yertle.showturtle()

screen.mainloop()

Sự xuất hiện đầu tiên của Rùa phải ở phía trên bên trái của cửa sổ.

Đã trả lời ngày 9 tháng 2 năm 2017 lúc 6:27Feb 9, 2017 at 6:27

Hướng dẫn how do you change the starting point of a turtle in python? - Làm thế nào để bạn thay đổi điểm xuất phát của một con rùa trong trăn?

Rùa Python, thay đổi vị trí bắt đầu:

import turtle
a = turtle.Turtle()      #instantiate a new turtle object called 'a'
a.hideturtle()           #make the turtle invisible
a.penup()                #don't draw when turtle moves
a.goto(-200, -200)       #move the turtle to a location
a.showturtle()           #make the turtle visible
a.pendown()              #draw when the turtle moves
a.goto(50, 50)           #move the turtle to a new location

Rùa trở nên có thể nhìn thấy và bắt đầu vẽ ở vị trí -200, -200 và đi đến 50, 50.

Đây là tài liệu về cách bạn có thể thay đổi trạng thái của rùa: https://docs.python.org/2/l Library/turtle.html#turtle-tate

Đã trả lời ngày 3 tháng 7 năm 2015 lúc 13:58Jul 3, 2015 at 13:58

Hướng dẫn how do you change the starting point of a turtle in python? - Làm thế nào để bạn thay đổi điểm xuất phát của một con rùa trong trăn?

Eric Leschinskieric LeschinskiEric Leschinski

Phù vàng 140K91 Huy hiệu vàng405 Huy hiệu đồng91 gold badges405 silver badges327 bronze badges

0

Bạn có thể đặt tọa độ thế giới thành một thứ khác. Ví dụ, để bắt đầu gần góc dưới bên trái, làm:

turtle.setworldcoordinates(-1, -1, 20, 20)

Điều này sẽ làm cho toàn bộ cửa sổ là "đơn vị" 21x21 và đặt nguồn gốc một đơn vị từ phía dưới và các cạnh trái. Bất kỳ vị trí nào bạn ra lệnh cũng sẽ theo các đơn vị này (chứ không phải pixel).

Đã trả lời ngày 9 tháng 2 năm 2017 lúc 3:16Feb 9, 2017 at 3:16

Thomas Antonythomas AntonyThomas Antony

5041 Huy hiệu vàng6 Huy hiệu bạc16 Huy hiệu đồng1 gold badge6 silver badges16 bronze badges

Chỉ cần dịch hệ thống phối hợp của bạn sang hệ thống của con rùa. Giả sử bạn muốn bắt đầu ở phía trên bên trái của hình vuông - hãy gọi đó là (0, 10) để đối số vì lợi ích.

Bây giờ, bất cứ khi nào bạn cần chỉ định phối hợp cho rùa, chỉ cần dịch nó!

my_start = (0, 10)

Nếu bạn muốn chuyển sang

from turtle import Turtle, Screen

TURTLE_SIZE = 20

screen = Screen()

yertle = Turtle(shape="turtle", visible=False)
yertle.penup()
yertle.goto(TURTLE_SIZE/2 - screen.window_width()/2, screen.window_height()/2 - TURTLE_SIZE/2)
yertle.pendown()
yertle.showturtle()

screen.mainloop()
1 - góc trên cùng bên phải, chỉ cần cung cấp các tọa độ mới:

>>> new_position = (10 - my_start[0], 10 - my_start[1])
>>> new_position
(10, 0)

from turtle import Turtle, Screen

TURTLE_SIZE = 20

screen = Screen()

yertle = Turtle(shape="turtle", visible=False)
yertle.penup()
yertle.goto(TURTLE_SIZE/2 - screen.window_width()/2, screen.window_height()/2 - TURTLE_SIZE/2)
yertle.pendown()
yertle.showturtle()

screen.mainloop()
2 là ở phía đông của con rùa - trong hệ thống phối hợp của rùa, nhưng đối với bạn, đó là
from turtle import Turtle, Screen

TURTLE_SIZE = 20

screen = Screen()

yertle = Turtle(shape="turtle", visible=False)
yertle.penup()
yertle.goto(TURTLE_SIZE/2 - screen.window_width()/2, screen.window_height()/2 - TURTLE_SIZE/2)
yertle.pendown()
yertle.showturtle()

screen.mainloop()
1 trên cùng bên phải! Mọi người đều thắng!

Chỉnh sửa

Bạn chỉ có thể làm

turtle.penup()
turtle.setx(my_start[0])
turtle.sety(my_start[1])
turtle.pendown()

Nhưng điều đó gần như không vui như vậy :(

Đã trả lời ngày 5 tháng 2 năm 2013 lúc 17:25Feb 5, 2013 at 17:25

Danodonovandanodonovandanodonovan

Phim huy hiệu vàng 18,9k88 gold badges70 silver badges76 bronze badges

1

Một số cạm bẫy có thể tính đến:pitfalls to take into account:

  • Tạo một con rùa mới chỉ với
    from turtle import Turtle, Screen
    
    TURTLE_SIZE = 20
    
    screen = Screen()
    
    yertle = Turtle(shape="turtle", visible=False)
    yertle.penup()
    yertle.goto(TURTLE_SIZE/2 - screen.window_width()/2, screen.window_height()/2 - TURTLE_SIZE/2)
    yertle.pendown()
    yertle.showturtle()
    
    screen.mainloop()
    
    4 có thể làm cho nó xuất hiện trong một giây.
  • Chỉ cần ____ 15-ing bút không nhất thiết phải giấu con rùa.
  • Tương tự, chỉ cần giấu con rùa có thể để lại nét bút của nó có thể nhìn thấy.
  • Ngay cả khi mọi thứ là vô hình, con rùa thường vẫn mất thời gian để đi đến vị trí của nó.

Giải pháp ngăn chặn những cạm bẫy này: that prevents these pitfalls:

t = turtle.Turtle(visible=False)  # make invisible turtle
initial_speed = t.speed()         # store its initial speed
t.speed(0)          # set its movement speed to instant 
t.up()              # stop drawing

t.setpos(x_of_your_starting_position, 
         y_of_your_starting_position)  # figure those out first... 

t.speed(initial_speed)  # set turtle's speed to initial value
t.showturtle()          # make turtle appear in desired position
t.down()                # resume drawing

Đã trả lời ngày 4 tháng 10 năm 2021 lúc 14:51Oct 4, 2021 at 14:51

RautermannrautermannRautermann

1952 Huy hiệu bạc9 Huy hiệu đồng2 silver badges9 bronze badges

Bạn cần đặt tọa độ rùa tùy thuộc vào kích thước màn hình của bạn, ví dụ Kích thước màn hình của bạn là (400, 400) thì trong trường hợp này bạn cần đặt tọa độ là rùa.goto (190.190) và 190 không phải 200 nếu không rùa của bạn sẽ ẩn ở biên giới.

Nhưng để hoạt hình không xuất hiện, nó bắt đầu từ giữa và sau đó đi đến vị trí đó. Bạn phải đặt Tracer thành 0 như "màn hình.tracer (0)" này, sau đó bạn cần cập nhật màn hình của mình mỗi lần để xem nội dung của chương trình. Vì vậy, bạn sẽ cần một vòng lặp một thời gian. Đặt một biến là đúng và sử dụng như thế này:

Mã của bạn nên thích điều này sau khi áp dụng các thay đổi tôi đã đề xuất:

from turtle import Screen, Turtle

turtle = Turtle()    #Turtle creation
screen = Screen()    #Screen object creation
screen.tracer(0)     #Tracer to stop "it starts from the middle and then goes to that position."


game_is_on = True
while game_is_on:
    screen.update()  #update to see contents of your screen

Đã trả lời ngày 2 tháng 8 lúc 11:39Aug 2 at 11:39

Hướng dẫn how do you change the starting point of a turtle in python? - Làm thế nào để bạn thay đổi điểm xuất phát của một con rùa trong trăn?

Khi bắt đầu mã, sau khi xác định rùa, bạn có thể làm:

tom.penup()
tom.goto(x coordinate that you want, y coordinate that you want)
tom.pendown()

Điều này sẽ làm cho con rùa vô hình. Sau đó đi đến vị trí được đưa ra bởi X và Y, nó làm cho con đường rùa có thể nhìn thấy một lần nữa.
Then go to the position given by x and y, it makes the turtles trail visible again.

סטנל גר TOUR

2.85923 Huy hiệu vàng46 Huy hiệu bạc65 Huy hiệu Đồng23 gold badges46 silver badges65 bronze badges

Đã trả lời ngày 23 tháng 2 năm 2020 lúc 8:30Feb 23, 2020 at 8:30

Hướng dẫn how do you change the starting point of a turtle in python? - Làm thế nào để bạn thay đổi điểm xuất phát của một con rùa trong trăn?

ArshamarshamArsham

Huy hiệu đồng 1411 Bạc9 Huy hiệu Đồng1 silver badge9 bronze badges

Làm cách nào để thay đổi vị trí bắt đầu của một con rùa trong Python?

Đặt tọa độ đầu tiên của Rùa thành X, để tọa độ thứ hai không thay đổi.Đặt tọa độ thứ hai của rùa thành y, để tọa độ đầu tiên không thay đổi.Di chuyển rùa đến gốc-tọa độ (0,0)-và đặt tiêu đề của nó thành định hướng bắt đầu (phụ thuộc vào chế độ, xem Chế độ ()).Move turtle to the origin – coordinates (0,0) – and set its heading to its start-orientation (which depends on the mode, see mode() ).

Làm thế nào để bạn thay đổi góc rùa trong Python?

Sethead (góc): Đặt hướng của rùa đến góc.Dưới đây là một số hướng chung về độ: 0 (Đông), 90 (Bắc), 180 (Tây), 270 (Nam).rùa.: Sets the orientation of the turtle to angle. Here are some common directions in degrees: 0 (east), 90 (north), 180 (west), 270 (south). turtle.

Làm thế nào để bạn định vị một con rùa trong Python?

pos () Phương pháp này được sử dụng để tìm vị trí hiện tại của rùa (x, y), như một vec-vector vec2d.Phương pháp này có bí danh: POS |Chức vụ.Hàm này không yêu cầu bất kỳ đối số nào và trả về vị trí hiện tại của rùa ở định dạng (x, y) trong đó x và y đại diện cho vectơ 2D. This method is used to find the turtle's current location (x, y), as a Vec2D-vector. This method has the Aliases: pos | position. This function does not require any argument and returns the current position of the turtle in the format (x,y) where x and y represent the 2D vector.

Làm thế nào để bạn di chuyển bút rùa trong Python?

Phương thức Penup ()..Penup () sẽ nhấc con rùa ra khỏi khung vải kỹ thuật số và nếu bạn di chuyển con rùa ở trạng thái Penup, nó sẽ không rút ra.. . penup() will lift the turtle off the “digital canvas” and if you move the turtle in penup state it won't draw.