跳至主要內容

CurveLine

大约 2 分钟

CurveLine

曲线,继承自Thing对象,拥有一切Thing属性及方法。

构造器

new VT.CurveLine({
    // 几何参数
    geometry: {
        // 起始位置 [x, y, z],必须
        startPosition: null,
        // 结束位置 [x, y, z],必须
        endPosition: null,
        // 高度比例
        heightRatio: 1,
        // 点生成数量
        pointNumber: 50,
        // 反转
        flipY: false,
    },
    // 线参数
    line: {
        material: {
            // 颜色 
            color: "#FF9900",
            // 线宽
            linewidth: 1,
            // 透明度
            opacity: 1,
            // 是否透明
            transparent: true,
            // 虚线
            dashed: false,
            // 虚线偏移
            dashOffset: undefined,
            // 虚线比例
            dashScale: 1.0,
            // 虚线大小
            dashSize: 0.2,
            // 间隔大小
            gapSize: 0.2,
            // 是否采用世界单位,如果为true,linewidth的单位为米
            worldUnits: false,
        }
    },
    // 箭头参数
    arrow: {
        // 是否可见
        visible: false,
        // 长度
        length: 0.1,
        // 头长度
        headLength: 0.2,
        // 头宽度
        headWidth: 0.3,
        // 材质
        material: {
            // 颜色
            color: "#FF9900",
        }
    },
})

属性成员

needPoints

  • 类型:{Boolean} 是否需要控制点,不可更改,值为 true

isCurveLine

  • 类型:{Boolean} 是否是CurveLine类型,不可更改,默认为true

lineMesh

  • 类型:{Line2} 线体,见Line2

arrowHelper

  • 类型:{THREE.ArrowHelper} 箭头辅助

方法

updateLine

更新线体

  • updateLine(line)
  • 类型:{Function}
  • 参数:
    • line {Object} 线参数,如下
  • 返回:无
{
    material: {
        // 颜色 
        color: "#FF9900",
        // 线宽
        linewidth: 1,
        // 透明度
        opacity: 1,
        // 是否透明
        transparent: true,
        // 虚线
        dashed: false,
        // 虚线偏移
        dashOffset: undefined,
        // 虚线比例
        dashScale: 1.0,
        // 虚线大小
        dashSize: 0.2,
        // 间隔大小
        gapSize: 0.2,
        // 是否采用世界单位,如果为true,linewidth的单位为米
        worldUnits: false,
    }
}

updateArrow

更新箭头

  • updateArrow(arrow)
  • 类型:{Function}
  • 参数:
    • arrow {Object} 箭头参数,如下
  • 返回:无
{
    // 是否可见
    visible: false,
    // 长度
    length: 0.1,
    // 头长度
    headLength: 0.2,
    // 头宽度
    headWidth: 0.3,
    // 材质
    material: {
        // 颜色
        color: "#FF9900",
    }
}

getCurvePoints

获取曲线点位

  • getCurvePoints(start, end)
  • 类型:{Function}
  • 参数:
    • start {Integer} 起始位置,可选
    • end {Integer} 结束位置,可选
  • 返回:{Array}

play

播放曲线动画

  • play()
  • 类型:{Function}
  • 参数:无
  • 返回:无

stop

停止曲线动画

  • stop()
  • 类型:{Function}
  • 参数:无
  • 返回:无
上次编辑于:
贡献者: dashun