Options
All
  • Public
  • Public/Protected
  • All
Menu

PathSegment类

层次结构

  • PathSegment

PathSegment表示作为 PathFigure 一部分的两个或多个点之间的路径的直选或曲线段。 第一个点由 PathFigure.startXPathFigure.startY 属性给出。 在第一个片段之后,下一个片段的起点与上一个片段的终点相同。 对于大多数类型的PathSegment,该段的终点由 endXendY 给出

一旦将包含 PathFigureGeometry 的PathSegment分配给 Shape,就不得对其进行修改

Index

Constructors

constructor

  • new PathSegment(type?: EnumValue, ex?: number, ey?: number, x1?: number, y1?: number, x2?: number, y2?: number | boolean, clockwise?: boolean): PathSegment
  • 构造一个不去任何地方的线段,除非你指定一些点

    路径的第一个点是包含的 PathFigure 中通过其 PathFigure.startXPathFigure.startY 属性指定的

    线段类型必须是以下值之一: PathSegment.Line, PathSegment.Bezier, PathSegment.QuadraticBezier, PathSegment.Arc, PathSegment.SvgArc。 你将要向 PathFigurePathFigure.segments 列表中添加PathSegment的新实例

    Parameters

    • Optional type: EnumValue

      如果未提供,则默认的PathSegment类型为 PathSegment.Line。 但是如果提供了类型,则还必须提供终点X和Y值,作为此构造函数中的参数或通过设置 endXendY 属性。 如果类型是QuadraticBezier,则必须同时提供X1和Y1控制点的值。 如果类型为Bezier,则必须全部提供 X1, Y1, X2, 和 Y2 控制点值

      如果类型为 Line 则需要以下参数:

      (go.PathSegment.Line, ex, ey)

      • ex, ey 表示终点

      如果类型为 QuadraticBezier 则需要以下参数:

      (go.PathSegment.QuadraticBezier, ex, ey, x1, y1)

      • ex, ey 表示终点
      • x1, y1 表示唯一的控制点

      如果类型为 Bezier 则需要以下参数:

      (go.PathSegment.Bezier, ex, ey, x1, y1, x2, y2)

      • ex, ey 表示终点
      • x1, y1 表示第一个控制点
      • x2, y2 表示第二个控制点

      如果类型为 Arc 则需要以下参数:

      (go.PathSegment.Arc, startAngle, sweepAngle, centerX, centerY, radiusX, radiusY)

      • startAngle 表示起始角度, 以度为单位
      • sweepAngle 表示扫角, 以度为单位
      • centerX, centerY 表示中心点
      • radiusX, radiusY 表示radiusX 和 radiusY

      如果类型为 SvgArc 则需要以下参数:

      (go.PathSegment.SvgArc, ex, ey, radiusX, radiusY, xAxisRotation, largeArcFlag, clockwiseFlag)

      它们与SVG路径字符串中的弧线顺序相同,只是终点X和Y值排在前面,而不是最后

      • ex, ey 表示终点
      • radiusX, radiusY 表示半径
      • xAxisRotation 表示 xAxisRotation (以度为单位的数字)
      • largeArcFlag 表示 isLargeArc (true 或 false)
      • clockwiseFlag 表示 isClockwiseArc (true 或 false).

      如果类型为 Move 则需要以下参数:

      (go.PathSegment.Move, ex, ey)

      • ex, ey 表示下一个起点
    • Optional ex: number

      可选: 终点的X坐标或弧的startAngle

    • Optional ey: number

      可选: 终点的Y坐标或弧的sweepAngle

    • Optional x1: number

      可选: 第一个贝塞尔曲线控制点的X坐标,或弧的centerX,或SvgArc的radiusX

    • Optional y1: number

      可选: 第一个贝塞尔曲线控制点的Y坐标,或弧的centerY,或SvgArc的radiusY

    • Optional x2: number

      可选: 第二个贝塞尔控制点的X坐标,或弧的radiusX,或SvgArc的xAxisRotation

    • Optional y2: number | boolean

      可选: 第二个贝塞尔控制点的Y左边,或弧的radiusY,或SvgArc是否是较大的弧

    • Optional clockwise: boolean

      可选: SvgArc是顺时针还是逆时针旋转

    Returns PathSegment

Properties

centerX : number

  • 获取或设置PathSegment类型为 Arc 的圆弧中心的X值

centerY : number

  • 获取或设置PathSegment类型为 Arc 的圆弧中心的Y值

endX : number

  • 获取或设置除 Arc 之外的所有PathSegment类型的终点的X坐标,默认值为0

endY : number

  • 获取或设置除 Arc 之外的所有PathSegment类型的终点的Y坐标,默认值为0

isClockwiseArc : boolean

  • 获取或设置 SvgArc 类型的PathSegment 顺时针标志。 SVG弧指定半径和终点,并且始终是椭圆的一部分。 参数允许两个潜在的椭圆和四个潜在的弧。 设置为true的顺时针标志将使用两个可能的正角度弧之一,而false将使用两个负角度的弧之一。 选择哪个弧(小还是大)取决于 isLargeArc 的值。 有关更多信息,请参见 SVG Arc 规范 (w3.org)

isClosed : boolean

  • 获取或设置在此PathSegment之后是否闭合路径,默认值为false

isLargeArc : boolean

  • 获取或设置 SvgArc 类型的PathSegment的large-arc-flag。 SVG Arcs 指定半径和终点,并且始终是椭圆的一部分。 参数允许两个潜在的椭圆和四个潜在的弧。 设置为true的large-arc-flag将选择两个扫过弧中较大的一个。 弧扫掠的方式(正角或负角)取决于 isClockwiseArc 的值 有关更多信息,请参阅 SVG Arc 规范 (w3.org)

point1X : number

point1Y : number

point2X : number

  • 获取或设置三次贝塞尔曲线类型的PathSegment的第二个控制点的X值

point2Y : number

  • 获取或设置三次贝塞尔曲线类型的PathSegment的第二个控制点的Y值

radiusX : number

  • 获取或设置 ArcSvgArc 类型的PathSegment的半径的x值,值必须为正数

radiusY : number

  • 获取或设置 ArcSvgArc 类型的PathSegment的半径的Y值,值必须为正数

startAngle : number

  • 获取或设置 Arc 类型的PathSegment的起始角度。该值必须在以下范围内: (0 <= value < 360).

sweepAngle : number

  • 获取或设置 Arc 类型的PathSegment的角度长度或"sweep"的弧度。 必须在-360到360之间(含-360)。

type : EnumValue

xAxisRotation : number

  • 获取或设置 SvgArc 类型的PathSegment的X轴Rotation, X轴Rotation用于旋转从其创建圆弧的椭圆,并且必须在0到360度之间,默认值为0

Methods

close

  • 在此PathSegment之后闭合路径

    Returns PathSegment

    返回当前PathSegment

Virtual copy

  • 创建此PathSegment的副本,该副本具有相同的类型和相同的点值

    Returns PathSegment

Constants

Static Arc : EnumValue

用于绘制圆弧线段,PathSegment.type 的值

Static Bezier : EnumValue

用于绘制三次贝塞尔曲线线段,PathSegment.type 的值

Static Line : EnumValue

用于绘制直线线段,PathSegment.type 的值

Static Move : EnumValue

要开始新的子路径,PathSegment.type 的值

Static QuadraticBezier : EnumValue

用于绘制二次贝塞尔曲线线段,PathSegment.type 的值

Static SvgArc : EnumValue

用于绘制SVG弧度线段, PathSegment.type 的值

参阅: SVG Arc specification (w3.org)

since

1.1