2014-10-06 2 views
0

Я пытаюсь нарисовать что-то в OCaml (try.ocamlpro.com). Я не уверен, как рисовать линию, например x = y, используя функцию «plot x y». В конце концов я попробовал что-то вроде этого, которое явно не работает:Как нарисовать линию в OCaml?

open Graphics;; 
Graphics.open_graph " 200x200";; 
     for i = 0 to x do 
     plot i (f i) 
     done 
    let g x = 2*x 
read_line();; 

Любая помощь (или примеры)? Спасибо.

ответ

2

Я не вижу, в чем проблема. Когда я пробую ваш код, немного изменив, я могу нарисовать линию по вашему желанию. Прежде всего, необходимо инициализировать окно:

open Graphics;; 
Graphics.open_graph " 200x200";; 

Затем вам нужно определить свои функции f:

let f x = x + 1;; 

А потом просто нарисовать линию, используя функцию plot

for i = 0 to 200 do 
    plot i (f i) 
done;; 

Вуаля!

3

Существует также Graphics.lineto, который основан на системе черепахи типа:

Graphics.open_graph " 200x200";; 
Graphics.lineto 100 100;; 

Изменяет текущую точку (по умолчанию) 0, 0 к прилагаемым x y точке и рисует линию, соединяющую два.

Вы можете установить текущую точку с помощью moveto : int -> int -> unit.

См. docs для получения дополнительной информации.

Смежные вопросы