我有一个 html 画布,想在上面显示一个 Quil 草图。大多数 Quil 示例用于defsketch
在静态 html 页面上定义的画布上绘图。我想在这个 Reagent 组件中的画布上做它:
(defn my-component []
(reagent/create-class
{:component-did-mount (fn [this]
(let [canvas (reagent/dom-node this)
width (.-width canvas)
height (.-height canvas)]
(u/log (str "On canvas with width, height: " width " " height))))
:component-will-mount #(u/log "component-will-mount")
:display-name "my-component"
:reagent-render (fn [] [:canvas {:width 400}])}))
(defn graph-panel []
[v-box
:gap "1em"
:children [[my-component]]])
我发现做这类事情的最佳文档是here,但我不太清楚如何进入下一个级别并将其应用到上面的画布上。在上面的画布上画一条线的实际代码会很棒。
实际上,静态且始终运行defsketch
就可以了-困难在于让它访问这种动态的画布。
如果它不能完成,那么很高兴知道,我将直接使用 Processing.js,假设这是下一个最好的主意。