我正在使用Analemma库制作一些svg数字。为了制作更复杂的数字,我想将svg分解成可以在不同函数中生成并传递给主svg
函数的组件。简单的想法,对吗?
当我尝试传递一系列值并且我不确定如何解决问题时,我一直被绊倒。在python中你可以使用*list
解压缩列表,我想知道clojure中的等价物是什么。
如果没有相应的内容,我会感谢任何关于如何实现同一目标的指示。
(use 'analemma.svg)
;set a line
(def oneline (->
(line 0 0 100 100)
(style :stroke "#006600" :stroke-width 3)))
;create an SVG by passing one or more line elements works fine
; this works
(svg oneline)
; so does this
(svg oneline oneline)
; but if i have a list of lines created in a different function i have a problem
(def manylines (repeat 5 oneline))
; this will not work
(svg manylines)
;I've tried the following but this doensn't work eaither becasue it mushes the list all together
(svg (apply concat manylines))
感谢 zach cp
答案 0 :(得分:7)
也许你正在寻找像
这样的东西(apply svg manylines)
这会产生与
相同的结果(svg oneline oneline oneline oneline oneline)