some letters work

This commit is contained in:
Erik 2016-03-31 10:15:24 +02:00
parent 13ca8ca8a0
commit b2495a2ad7
3 changed files with 62 additions and 19 deletions

1
.gitignore vendored
View File

@ -22,3 +22,4 @@ a.out
/bin/Debug/
/build/
/examples/exe

View File

@ -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})

View File

@ -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)