tartaruga

Description

O construtor polygonal Turtle é um modo experimental de construir objetos poligonais usando uma tartaruga do estilo logo no espaço 3d. Em que você pode dirigir a tartaruga ao redor colocando vértices e construindo formas proceduralmente. A tartaruga também pode ser usa para deformar objetos poligonais existentes, fixando ela a objetos que você já criou.

Example

 (define (build n)
     (turtle-reset)
     (turtle-prim 'polygon)
     (build-loop n n)
     (turtle-build))

 (define (build-loop n t)
     (turtle-turn (vector 0 (/ 360 t) 0))
     (turtle-move 1)
     (turtle-vert)
     (if (< n 1)
         0
         (build-loop (- n 1) t)))

(turtle-prim número-tipo)

Returns void

Inicia a construção de uma nova primitiva poligonal com a tartaruga. O tipo especifica o tipo da face do poligono e é um dos seguintes: 0: triangle strip, 1: quad list, 2: triangle list, 3: triangle fan, 4: general polygon

Example

 (turtle-prim 0)

(turtle-vert)

Returns void

Cria um novo vértice na posição atual, ou ajusta o vértice atual se o construtor tartaruga estiver fixado.

Example

 (turtle-vert)

(turtle-build)

Returns void

Constrói o objeto com a lista de vértices definida e dá isto ao renderizador. Não tem efeito se o construtor tartaruga estive fixado a uma primitiva.

Example

 (define mynewshape (turtle-build))

(turtle-move número-distância)

Returns void

Move a tartaruga pra frente na sua orientação atual.

Example

 (turtle-move 1)

(turtle-push)

Returns void

O construtor tartaruga tem sua própria pilha de transformações, Push lembra a posição atual e orientação.

Example

 (turtle-push)

(turtle-pop)

Returns void

O construtor tartaruga tem sua própria pilha de transformações. Pop esquece a posição atual e orientação, e vai de volta para o estado do último push.

Example

 (turtle-pop)

(turtle-turn vetor-rotação)

Returns void

Rotaciona a orientação da tartaruga com o ângulos euler fornecidos (rotações em x, y e z)

Example

 (turtle-turn (vector 45 0 0))

(turtle-reset)

Returns void

Reinicia a atual posição e rotação da tartaruga para a origem.

Example

 (turtle-reset)

(turtle-attach número-id-primitiva)

Returns void

Anexa a tartaruga a uma primitiva poligonal existente. Isso significa que você será capaz de deformar pontos de objetos existentes usando o construtor tartaruga.

Example

 (define myshape (build-sphere 10 10))
 (turtle-attach myshape)

(turtle-skip número-contador)

Returns void

Quando anexado, faz com que a tartaruga pule vértices. Este valor pode ser negativo, o que vai resultar na tartaruga escrevendo para vértices anteriores.

Example

 (turtle-skip -1)

(turtle-position)

Returns void

Quando anexado, retorna o índice atual da pdata que a tartaruga esta escrevendo para.

Example

 (display (turtle-position))(newline)

(turtle-seek número-posição)

Returns void

Quando anexado, ajusta o índice absoluto da pdata que a tartaruga está escrevendo para.

Example

 (turtle-seek 0)