Código fonte de tugalib.tuga_draw

'''

Desenho
=======

Funções de desenho que utilizam a biblioteca turtle.
'''

try:
    import turtle as _TURTLE_MODULE
except ImportError:
    _TURTLE_MODULE = None
from tugalib.util import synonyms


def _turtle():
    '''Return turtle module or an error'''

    if _TURTLE_MODULE is None:
        raise RuntimeError('o módulo turtle ou o módulo tk não estão '
                           'disponíveis, cheque sua instalação')
    else:
        return _TURTLE_MODULE


[documentos]def frente(passo): '''Anda para frente pelo passo especificado em pixels''' _turtle().fd(passo)
[documentos]def trás(passo): '''Anda para trás pelo passo especificado em pixels''' _turtle().bk(passo)
[documentos]def direita(ângulo): '''Gira para a direita pelo ângulo especificado (em graus)''' _turtle().right(ângulo)
[documentos]def esquerda(ângulo): '''Gira para a esquerda pelo ângulo especificado (em graus)''' _turtle().left(ângulo)
@synonyms('vá_para')
[documentos]def ir_para(x, y): ''' Move cursor para a posição absoluta especificada em pixels. Se a caneta estiver abaixada, desenha uma linha até o ponto especificado''' _turtle().goto(x, y)
[documentos]def começo(): '''Move cursor para a origem do sistema de coordenadas. Se a caneta estiver abaixada, desenha uma linha até o ponto especificado''' _turtle().home()
@synonyms('mude_x')
[documentos]def mudar_x(x): '''Define a primeira coordenada da posição para o valor x deixando a outra inalterada.''' _turtle().setx(x)
@synonyms('mude_y')
[documentos]def mudar_y(y): '''Define a segunda coordenada da posição para o valor y deixando a outra inalterada.''' _turtle().sety(y)
@synonyms('mude_orientação')
[documentos]def mudar_orientação(ângulo): '''Define a orientação do cursor. Um ângulo=0 aponta o cursor na direção do eixo x. A rotação é definida no sentido anti-horário.''' _turtle().setheading(ângulo)
@synonyms('suba_caneta')
[documentos]def subir_caneta(): '''Para de desenhar na tela na medida em que o cursor se movimenta. Pense que se trata de um robô e que a caneta responsável pelo desenho está levantada do papel.''' _turtle().pu()
@synonyms('desca_caneta')
[documentos]def descer_caneta(): '''Volta a desenhar na tela na medida em que o cursor se movimenta. Pense que se trata de um robô e que a caneta responsável pelo desenho está abaixada sobre o papel.''' _turtle().pd()