我正在为(好)电路/方框图绘制寻找算法或可视化工具。
我也对这个问题的一般表述感兴趣。
通过“电路绘图”,我的意思是探索地方的能力。具有I / O端口及其连接(电线)的框图(矩形)的路由。这些块图可以是分层的,即某些块可能有一些嵌套的内部子结构等。
本主题与经典的图形绘制密切相关,需要考虑端口位置的补充约束,以及可能的块形状(各种尺寸的矩形)。 Graphviz工具无法解决问题(至少我以前的实验并不令人满意)。
力导向算法引起了我的注意,但我刚刚在经典有向图上找到了论文。
任何提示?
[2013年11月21日更新]似乎对日期的最佳参考是Spönemann
答案 0 :(得分:3)
我目前也在使用TikZ,但您可能希望尝试http://blockdiag.com/
答案 1 :(得分:1)
这是一个: http://www.physicsbox.com/indexsolveelec2en.html
以下是寻找他人的地方:
http://www.freebyte.com/electronics/
www.educypedia.be/electronics/easoftsim.htm
答案 2 :(得分:1)
graphviz有替代方案可以完成这项工作 - 例如infovis,protovis,tulip。
你能解释一下graphviz不足之处吗?您列出的唯一要求我不确定是附加到特定端口。我原以为你可以用复合形状/子图解决这个问题,但也许不能......?
编辑:另一种选择,特别是如果您正在查看软件工程图。你考虑过eclipse gmp toolkit了吗?这是用于构建的内容,例如UML2 editor tools。
第h
答案 3 :(得分:1)
为了制作生产质量电路图和方框图,我强烈推荐J. D. Aplevich"电路宏"。它记录良好并积极维护。请参阅此程序包circuit macros examples
生成的示例有一些学习曲线,例如能够使用" dpic"用图形语言绘制自己的图表。但该工具本身非常强大。
对我来说还有两个问题:
我将一些Javascript破解为
(watch m4 file change)->[m4->dpic->latex->pdf]->svg->(show in html)
这是它的要点
// watch .m4 file
var chokidar = require('chokidar');
var resolve = require('path').resolve;
const touch = require('touch')
const {exec} = require('child_process')
chokidar.watch("*.m4").on('change', fn=>{
let ff = resolve(fn)
console.log(ff, "changed")
exec("runtask.bat " + ff, {cwd:"../"}, (err,stdin,stdout)=>{
console.log(err,stdin, stdout)
touch("index.html") //svg updated
})
})
以下是Windows的runtask.bat
m4 pgf.m4 %1 | dpic -g > tmp.tex
C:\texlive\2017\bin\win32\pdflatex template.tex
tool\dist-64bits\pdf2svg template.pdf %~dpn1.svg
tool\dist-64bits\pdf2svg template.pdf %~dp1tmp.svg
这样,你可以"画"通过编写m4 / dpic代码并在浏览器中查看结果;和svg是从pdf生成的,看起来好多了。
答案 4 :(得分:0)
我不知道任何明显的胜利者可以轻松制作出具有最少手工劳动力的精美方块图。我见过的一些最好看的结果来自 TikZ 。看看这里的例子:
答案 5 :(得分:0)
我从Draw.io获得了很好的结果。它是一个webapp,但具有强大的图表编辑器和一些不错的股票符号库。工程图可以导出为PNG或SVG,因此可以达到出版质量,并且可以链接到