Невозможно правильно нарисовать параболическую кривую с помощью графики черепахи.Python

Программы на Python
Ответить
Anonymous
 Невозможно правильно нарисовать параболическую кривую с помощью графики черепахи.

Сообщение Anonymous »

Я делаю игру типа «angry Bird».

Есть два входных параметра: мощность и угол.
Я применяю эти входные данные к параболической кривой.

Моя черепаха летает, описывая параболическую кривую. и моя черепаха должна попасть в цель,
но моя черепаха рисует странную кривую, когда угол больше 46, угол равен 30, 40 и т. д.

Я не знаю, в чем проблема....вот мой код:

Код: Выделить всё

import turtle
import random
import math

g=9.80665
origin_x=-480
origin_y=-180
flag=False

def create_target():

x=random.randint(0,500)
y=random.randint(-200,0)
target=turtle.Turtle()
target.hideturtle()
target.penup()
target.goto(x,y)
target.shape('square')
target.color('red')
target.showturtle()
return target

def create_turtle():

homework=turtle.Turtle()
homework.hideturtle()
homework.penup()
homework.speed(0)
homework.goto(origin_x,origin_y)
homework.pendown()
homework.shape('turtle')
homework.color('blue')
homework.left(45)
homework.showturtle()
return homework

def setting():
'''drawing back ground lines'''
setting=turtle.Turtle()
setting.hideturtle()
setting.speed(0)
turtle.colormode(255)
setting.pencolor(214,214,214)

for y in range(100,-101,-100):
setting.penup()
setting.goto(-500,y)
setting.pendown()
setting.goto(500,y)

for x in range(-375,500,125):
setting.penup()
setting.goto(x,200)
setting.pendown()
setting.goto(x,-200)

def throw_turtle(turtle,target):
angle=int(input("Enter Angle:"))
power=int(input("Enter Power:"))
'''
parabola fomula:
x coordinate: speed(in here, that is power) * cos(anlge)*time
y coordinate: speed*sin(angle)*time - (gravity speed*time**2)/2
'''
for time in range(1,20):
# the origin fomula is for the situation that starts from (0,0). so I think
# I should  compensate it, but is it right?
x=power*math.cos(angle)*time + origin_x
y=power*math.sin(angle)*time - (((time**2)*g)/2) + origin_y
if x

Подробнее здесь: [url]https://stackoverflow.com/questions/40386187/cant-draw-parabolic-curve-correctly-with-turtle-graphics[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»