Mercurial > hg > indyvon
changeset 89:54f6e6d196c3
Make the transform functions public.
author | Mikhail Kryshen <mikhail@kryshen.net> |
---|---|
date | Mon, 22 Nov 2010 16:02:27 +0300 |
parents | 18abc7d66d49 |
children | dd7b8dbb20bc |
files | src/net/kryshen/indyvon/core.clj |
diffstat | 1 files changed, 10 insertions(+), 10 deletions(-) [+] |
line diff
1.1 --- a/src/net/kryshen/indyvon/core.clj Wed Oct 06 18:45:51 2010 +0400 1.2 +++ b/src/net/kryshen/indyvon/core.clj Mon Nov 22 16:02:27 2010 +0300 1.3 @@ -197,21 +197,26 @@ 1.4 ;; Rendering 1.5 ;; 1.6 1.7 -(defn- relative-transform 1.8 - "AffineTransform: layer context -> awt component." 1.9 +(defn relative-transform 1.10 + "Returns AffineTransform: layer context -> AWT component." 1.11 [] 1.12 (let [tr (.getTransform *graphics*)] 1.13 (.preConcatenate tr *inverse-initial-transform*) 1.14 tr)) 1.15 1.16 -(defn- inverse-relative-transform 1.17 - "AffineTransform: awt component -> layer context." 1.18 +(defn inverse-relative-transform 1.19 + "Returns AffineTransform: AWT component -> layer context." 1.20 [] 1.21 (let [tr (.getTransform *graphics*)] 1.22 (.invert tr) ; absolute -> layer 1.23 (.concatenate tr *initial-transform*) ; component -> absolute 1.24 tr)) 1.25 1.26 +(defn transform-point [^AffineTransform tr x y] 1.27 + (let [p (Point2D$Double. x y)] 1.28 + (.transform tr p p) 1.29 + [(.x p) (.y p)])) 1.30 + 1.31 ;; (defn- clip 1.32 ;; "Intersect clipping area with the specified shape or bounds. 1.33 ;; Returns new clip (Shape or nil if empty)." 1.34 @@ -471,14 +476,9 @@ 1.35 (defn- remove-all [coll1 coll2 pred] 1.36 (filter #(not (some (partial pred %) coll2)) coll1)) 1.37 1.38 -(defn- transform [^AffineTransform tr x y] 1.39 - (let [p (Point2D$Double. x y)] 1.40 - (.transform tr p p) 1.41 - [(.x p) (.y p)])) 1.42 - 1.43 (defn- translate-mouse-event [^java.awt.event.MouseEvent event 1.44 ^AffineTransform tr id] 1.45 - (let [[x y] (transform tr (.getX event) (.getY event))] 1.46 + (let [[x y] (transform-point tr (.getX event) (.getY event))] 1.47 (MouseEvent. id (.getWhen event) x y 1.48 (.getXOnScreen event) (.getYOnScreen event) 1.49 (.getButton event))))