Схема: преобразовать код в изображение - PullRequest
1 голос
/ 15 октября 2010

У меня странный вопрос схемы.Это часть чего-то большего, с чем я помогаю другу.

Мне нужно преобразовать Tree:Data в изображение, которое точно представляет дерево (извините, у меня нет образцаизображение покажет только).

Пожалуйста, дайте мне знать, если у вас есть какие-либо идеи для этого (и / или если у вас есть вопросы), поэтому я могу обновить с дополнительной информацией.1008 *

Ответы [ 3 ]

3 голосов
/ 15 октября 2010

Одним из наиболее распространенных способов рисования таких диаграмм является использование graphviz .Вам просто нужно отсканировать дерево и распечатать соединения в очень простом синтаксисе.

1 голос
/ 20 октября 2010

Это ответ, который я искал.Думаю, мне следовало сформулировать свой вопрос немного лучше.Спасибо большое за помощь, @EliBarzilay и @ KevinHwang

(define (Tree:Data->Pict dt)
  (if (DataTree? dt)
      (frame
       (vl-append 10
                  (Tree:Data->Pict (DataTree-data dt))
                  (apply ht-append 10
                         (map Tree:Data->Pict (DataTree-children dt)))))
      (code #,dt)))
1 голос
/ 15 октября 2010

Если вам действительно действительно нужно сделать это непосредственно в Схеме, тогда позвольте мне направить вас сюда:

http://www.gnu.org/software/mit-scheme/documentation/mit-scheme-ref/Drawing-Graphics.html

В Scheme действительно есть встроенная графическая библиотека, хотя это может быть свойственно только MIT Scheme. В Беркли наш вводный класс использовал SICP, и у нас действительно была какая-то графика, хотя неважно, были ли эти графики встроенными или добавлены инструкторами для нас.

...