Graphics 用于可变尺寸光刻的阵列生成

Graphics 用于可变尺寸光刻的阵列生成,graphics,Graphics,首先我必须道歉,因为我是一名化学家,而不是一名程序员,所以我要冒险进入一个未知的领域 我正在开发一些微合同打印模式,以创建控制细胞生长的模板。模板的母版是在A4透明纸上打印的,无论我使用多少空间,成本都差不多。我的一个图案大约是2 x 2 mm,因此您可以想象我可以在主模板上放置多少个图案 考虑到这一点,我想做的是生成一个循环和轨迹的重复数组。这在AdobeIllustrator中很容易实现,但它已经变得单调乏味。我希望能够自动改变圆的尺寸、连接它们的轨道的宽度以及圆之间的空间 例如,我可能需要

首先我必须道歉,因为我是一名化学家,而不是一名程序员,所以我要冒险进入一个未知的领域

我正在开发一些微合同打印模式,以创建控制细胞生长的模板。模板的母版是在A4透明纸上打印的,无论我使用多少空间,成本都差不多。我的一个图案大约是2 x 2 mm,因此您可以想象我可以在主模板上放置多少个图案

考虑到这一点,我想做的是生成一个循环和轨迹的重复数组。这在AdobeIllustrator中很容易实现,但它已经变得单调乏味。我希望能够自动改变圆的尺寸、连接它们的轨道的宽度以及圆之间的空间

例如,我可能需要一个20 x 20的网格,由30μm的圆组成,与一个10μm宽的轨道相连,边缘之间有150μm的圆

我希望在Matlab中实现这一点,因为我目前正在学习Matlab的一些图像处理功能

最终产品的外观示例如下所示:

我希望能在以下方面提供一些指导:

在Matlab中这样做是一个好主意吗? 设置代码以生成圆网格 用垂直、水平或对角轨迹连接这些圆 我觉得这是以前有人做过的事情,所以即使给我指出我可以学习的类似代码也会有很大帮助
谢谢

我不太习惯Matlab,所以我不能直接告诉你

下面是1和3的可能答案。如果你认为我的答案可以帮助你,我可以写一些关于2的代码

库d3.js可能对您正在做的事情感兴趣。它基本上允许您将数据绑定到svg元素

下面是一个你可以做的例子。假设您的数据是一个圆属性列表,包括大小、位置

JSFIDLE

注意:语法selectAll>enter>append一开始可能看起来很奇怪,如果您感到困惑,请随时查看

现在,对于数据本身的生成,一个由圆圈组成的网格,您可以有如下内容

var numCirclesX = 500
var numCirclesY = 700

var data = []

for(var i=0; i<numCirclesX; i++){
    for(var j=0; j<numCirclesY, j++){
        data.push({ x: i*size_A4_x/numCirclesX,
                  y: j*size_A4_y/numCirclesY,
                  radius: 5 })
    }
}

谢谢你花时间写这篇文章。我需要花更多的时间研究你写的东西的元素,但是看起来它可能有用。是的,对不起,如果你是编程和javascript新手,这可能有点难以熟悉。请随意提问。我对代码进行了一些修改,得到了一些有趣的模式,我将如何保存图像?我想把一些东西导入Adobe Illustrator。这个问题建议使用SVG撬杆。我在firefox上试用过,效果似乎很好。只需转到,拖放至书签栏,然后单击。
var numCirclesX = 500
var numCirclesY = 700

var data = []

for(var i=0; i<numCirclesX; i++){
    for(var j=0; j<numCirclesY, j++){
        data.push({ x: i*size_A4_x/numCirclesX,
                  y: j*size_A4_y/numCirclesY,
                  radius: 5 })
    }
}