您好!在 SketchUp Ruby API 中,add_line
和 add_edges
都可以用于创建线段或边集。它们的区别在于参数不同。
add_line
方法需要传递两个参数,分别是起点和终点的 3D 坐标(Point3d
),并返回一个 Edge
对象,该对象表示新创建的线段。例如:
start_point = Geom::Point3d.new(0, 0, 0)
end_point = Geom::Point3d.new(10, 0, 0)
new_edge = Sketchup.active_model.entities.add_line(start_point, end_point)
add_edges
方法需要传递一个参数,即一个由顺序排列的 3D 坐标数组(Array of Point3d
),并返回一个包含多条线段的 Edges
对象。例如:
points = [Geom::Point3d.new(0, 0, 0),
Geom::Point3d.new(10, 0, 0),
Geom::Point3d.new(10, 10, 0),
Geom::Point3d.new(0, 10, 0)]
new_edges = Sketchup.active_model.entities.add_edges(points)
代码解释:
Geom::Point3d.new(x, y, z)
创建一个 3D 坐标。Sketchup.active_model.entities
获取当前场景中的实体集合,即将要添加线段或边集的容器。entities.add_line(start_point, end_point)
创建一条起点为start_point
,终点为end_point
的线段,并返回一个Edge
对象。entities.add_edges(points)
创建一组连接points
中所有点的线段,返回一个包含多个线段的Edges
对象。
总之,如果要创建单条线段,请使用 add_line
;如果要创建多条线段,请使用 add_edges
。