mirror of
https://github.com/carp-lang/Carp.git
synced 2024-09-17 16:38:14 +03:00
some letters work
This commit is contained in:
parent
13ca8ca8a0
commit
b2495a2ad7
1
.gitignore
vendored
1
.gitignore
vendored
@ -22,3 +22,4 @@ a.out
|
||||
/bin/Debug/
|
||||
|
||||
/build/
|
||||
/examples/exe
|
||||
|
@ -42,11 +42,14 @@
|
||||
(def me {:name "Erik Svedäng"
|
||||
:job "Game Designer"
|
||||
:age (* pi (sqrt 89.0))
|
||||
:works ["Blueberry Garden"
|
||||
"Kometen"
|
||||
"Shot Shot Shoot"
|
||||
"Clairvoyance"
|
||||
"Else Heart.Break()"]})
|
||||
:web "www.eriksvedang.com"
|
||||
:twitter "@e_svedang"
|
||||
:work ["Blueberry Garden"
|
||||
"Kometen"
|
||||
"Shot Shot Shoot"
|
||||
"Tri Tri Triobelisk"
|
||||
"Clairvoyance"
|
||||
"Else Heart.Break()"]})
|
||||
|
||||
|
||||
|
||||
@ -128,7 +131,8 @@
|
||||
(def inspiration
|
||||
{1 :Rust
|
||||
2 :ML
|
||||
3 :Clojure})
|
||||
3 :Clojure
|
||||
4 :Emacs})
|
||||
|
||||
|
||||
|
||||
|
@ -7,39 +7,76 @@
|
||||
(defn mid-y [] 256f)
|
||||
|
||||
(defn em [] 100f)
|
||||
(defn en [] 70f)
|
||||
|
||||
(defn point-for-id [i]
|
||||
(copy
|
||||
(nth
|
||||
(ref [(Vec2 (mid-x) (mid-y))
|
||||
(Vec2 (- (mid-x) (em)) (- (mid-y) (em)))
|
||||
(Vec2 (+ (mid-x) (em)) (- (mid-y) (em)))
|
||||
(Vec2 (- (mid-x) (em)) (+ (mid-y) (em)))
|
||||
(Vec2 (+ (mid-x) (em)) (+ (mid-y) (em)))])
|
||||
(Vec2 (mid-x) (- (mid-y) (em)))
|
||||
(Vec2 (+ (mid-x) (em)) (- (mid-y) (en)))
|
||||
(Vec2 (+ (mid-x) (em)) (mid-y))
|
||||
(Vec2 (+ (mid-x) (em)) (+ (mid-y) (en)))
|
||||
(Vec2 (mid-x) (+ (mid-y) (em)))
|
||||
(Vec2 (- (mid-x) (em)) (+ (mid-y) (en)))
|
||||
(Vec2 (- (mid-x) (em)) (mid-y))
|
||||
(Vec2 (- (mid-x) (em)) (- (mid-y) (en)))])
|
||||
i)))
|
||||
|
||||
;; 1
|
||||
;; / \
|
||||
;; 8 2
|
||||
;; | |
|
||||
;; 7 0 3
|
||||
;; | |
|
||||
;; 6 4
|
||||
;; \ /
|
||||
;; 5
|
||||
|
||||
(defstruct TypografGlyph
|
||||
[point-ids (:Array :int)])
|
||||
|
||||
(defn glyph-0 [] (TypografGlyph [0 1 3 4]))
|
||||
|
||||
(defn int->glyph [x]
|
||||
(let [glyphs [(glyph-0)]
|
||||
(let [glyphs [(TypografGlyph [8 1 2 3 7 6 5 4 3]) ;; a
|
||||
(TypografGlyph [8 7 6 5 4 3 7]) ;; b
|
||||
(TypografGlyph [1 8 7 6 5]) ;; c
|
||||
(TypografGlyph [2 3 7 6 5 4 3]) ;; d
|
||||
(TypografGlyph [7 3 2 1 8 6 5 4]) ;; e
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])
|
||||
(TypografGlyph [])]
|
||||
i (- x 65)]
|
||||
(if (< i (count &glyphs))
|
||||
(copy (nth &glyphs i))
|
||||
(glyph-0))))
|
||||
(TypografGlyph []))))
|
||||
|
||||
(defn draw-glyph [glyph]
|
||||
(let [ids (get-point-ids glyph)
|
||||
points [(Vec2 100f 100f) (Vec2 250f 150f) (Vec2 300f 300f)]]
|
||||
points (map-copy point-for-id ids)]
|
||||
(draw-lines &points)))
|
||||
|
||||
(defn draw [whatever]
|
||||
(let [glyph (int->glyph gstate)]
|
||||
(do
|
||||
(glColor3f 0.4f 0.4f 0.4f)
|
||||
;;(draw-lines [(Vec2 100.1f 100.1f) (Vec2 100.3f 300.2f) (Vec2 200.5f 100.5f)])
|
||||
(glColor3f 0.3f 0.2f 0.2f)
|
||||
(draw-line 0f 256f 512f 256f)
|
||||
(glColor3f 1f 1f 1f)
|
||||
(draw-glyph &glyph))))
|
||||
@ -56,5 +93,6 @@
|
||||
(defn typograf []
|
||||
(glfw-app "Typograf" setup id draw on-keys))
|
||||
|
||||
(bake-exe typograf)
|
||||
;;(typograf)
|
||||
;;(bake-exe typograf)
|
||||
;;(bake typograf)
|
||||
(typograf)
|
||||
|
Loading…
Reference in New Issue
Block a user