3.4.1 获取线中的三维点(离散)list列表

当我们想对某根线进行离散时,我们可以使用对弧线离散或使用对多段线离散函数。

对弧线离散函数形式:

    get_discrete_points_from_arc (arc:Arc,disNum=0,withEnd=False,isEqual = False)

对弧线离散时,需要将弧线装入上述函数,同时,需要确认三个标签(tag)的输入值是否符合要求。

Tag标签含义:

disNum离散点数量:表示离散点的个数;默认disNum为0,表示按照20毫米基准为间距进行离散,会自动计算离散点个数。

注意:由于离散后会取整,因此间距可能会略大于输入的数值;

withEnd是否包含尾点:表示是否需要每一段的尾点,默认为False。False表示不包含尾点,即去掉每段最后一个点,避免重复。True表示包含每一段尾点

isEqual是否等距:表示是否为等距离散。默认为False。False表示按照角度进行离散,True表示按照弧长进行等距离散。

对多段线离散:

    get_discrete_points_from_line (line:Line, disNum=0, onlyCurve=True)<br />

其中,line可以是直线段、多段线、含有弧线的多段线等,需要将line装入该函数,同事需要确认两个标签的输入值是否符合要求

Tag标签含义:

disNum离散点数量:表示离散点的个数;默认disNum为0,表示按照20毫米基准为间距进行离散,会自动计算离散点个数。

注意:由于离散后会取整,因此间距可能会略大于输入的数值;

onlyCurve是否只对圆弧离散:表示是否仅离散圆弧,默认值为True,表示只离散圆弧,直线部分不离散,False表示对直线和圆弧全部进行离散。

3.4.2 获取section中的三维点(离散)list列表

函数形式:

    get_discrete_points_from_section(sec:Section,num:int=0,onlyCurve=True)

该函数有三个参数,分别为截面、离散点数量,是否只离散弧线

示例:

如此一来,就得到了一个截面的一组离散点。

bottom_sec = Section(scale(3000, 4000)*Arc())
bottom_sec_points = get_discrete_points_from_section(bottom_sec, N, False)