Я шел дальше от попытки использовать OpenGL через Мягкое затенение к попытке привлечь непосредственно на JPanel использование его Графического контекста.
Это было бы большим, кроме я сталкиваюсь с некоторой проблемой …, я компилирую свой код, и в ~1 раз из 25, диаграмма (это - прямоугольник для примера), тянет очень хорошо. Другие ~24 раза это не делает.
Вот мой код:
(def main
(let [frame (JFrame. "This is a test.")
main-panel (JPanel. (GridBagLayout.))
tpan (proxy [JPanel] [] (getPreferredSize [] (Dimension. 600 400)))]
(doto frame
(set-content-pane
(doto main-panel
(grid-bag-layout
:gridx 0 :gridy 0
tpan
:gridx 0 :gridy 1
xy-label)))
(pack-frame)
(set-visible))
(draw-line tpan Color/RED 250 250 50 50)))
Функция draw-line
ниже:
(defn draw-line [panel color x y w h]
(let [graphics (.getGraphics panel)]
(doto graphics
(.setColor color)
(.drawRect x y w h))))
Я понятия не имею, что продолжается. Сначала я думал, что это были судьи, я продолжал работать, но затем я вынул их, и все еще имейте эти проблемы. Я сбросил lein и слизь/чванство и emacs, также. Я вполне озадачен.
Как обычно, любая справка ценилась бы. Я надеюсь, что это - вопрос с ответом! В последнее время я, кажется, спрашиваю невозможное :)