Sketch.distribute()
是一个用于在Sketch中分布实体的方法。它可以帮助用户实现自动布局和对齐操作。
Sketch.distribute(direction: Tuple[float], spacing: float, entities: Union[List[Entity], None], centered: bool = False)
(0,1)
表示向y轴正方向分布,(1,0)
表示向x轴正方向分布。该方法没有返回值。
以下示例演示如何在Sketch中垂直分布所有实体:
import cadquery as cq
# 创建一个Sketch
sketch = cq.Workplane("XY").sketch()
# 添加实体
sketch.rect(10, 5).circle(3).rect(5, 10)
# 垂直分布所有实体
sketch.distribute((0, 1), 5)
# 展示Sketch
show(sketch)
在执行此代码后,将在界面上打开一个Sketch,其中包含三个实体,它们垂直分布,并且它们之间的间距为5毫米。
在这个例子中,我们首先使用cq.Workplane()
创建一个位于XY平面的Sketch。然后,我们使用rect()
方法和circle()
方法向Sketch中添加三个实体。最后,我们调用distribute()
方法并传递(0,1)向量作为第一个参数,5毫米作为第二个参数。由于我们没有指定要分布的实体列表,所以默认情况下将对Sketch中的所有实体进行分布。此外,我们没有将centered
参数设置为True,因此分布的实体不会居中。最后,我们使用show()
方法来显示Sketch。
direction
参数中传递的向量应该是规格化的(即它的长度应该为1)。centered
参数设置为True。否则,它们将以Sketch的原点为起始点进行分布。