summaryrefslogtreecommitdiff
path: root/path/builder.mli
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2020-12-17 22:29:25 +0100
committerSébastien Dailly <sebastien@chimrod.com>2020-12-17 22:29:25 +0100
commite5c2a971644746818f8764481c60c4c5cf1a80c4 (patch)
tree2719a0c0c64f71c3277addb33ab1562602ba10cc /path/builder.mli
parent20d10a93e5becb41d1145f9d35136782365b0ba4 (diff)
Moved path builder in a dedicated file
Diffstat (limited to 'path/builder.mli')
-rwxr-xr-xpath/builder.mli33
1 files changed, 33 insertions, 0 deletions
diff --git a/path/builder.mli b/path/builder.mli
new file mode 100755
index 0000000..d99e0b2
--- /dev/null
+++ b/path/builder.mli
@@ -0,0 +1,33 @@
+(** Signature for points *)
+module type P = sig
+ type t
+
+ val get_coord : t -> Gg.v2
+end
+
+
+module Make(P:P) : sig
+
+ type t
+
+ (** Create an empty path *)
+ val empty: t
+
+ val add_point
+ : P.t -> t -> t
+
+ (** Replace the last alement in the path by the one given in parameter *)
+ val replace_last
+ : P.t -> t -> t
+
+ (** Retrieve the last element, if any *)
+ val peek
+ : t -> P.t option
+
+ (** Retrieve the last element, if any *)
+ val peek2
+ : t -> (P.t * P.t) option
+
+ val get
+ : t -> P.t list * Shapes.Bezier.t list
+end