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}线参数,如下 
 - 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,
    }
}
updateArrow
更新箭头
- updateArrow(arrow)
 - 类型:
{Function} - 参数: 
- arrow 
{Object}箭头参数,如下 
 - arrow 
 - 返回:无
 
{
    // 是否可见
    visible: false,
    // 长度
    length: 0.1,
    // 头长度
    headLength: 0.2,
    // 头宽度
    headWidth: 0.3,
    // 材质
    material: {
        // 颜色
        color: "#FF9900",
    }
}
getCurvePoints
获取曲线点位
- getCurvePoints(start, end)
 - 类型:
{Function} - 参数: 
- start 
{Integer}起始位置,可选 - end 
{Integer}结束位置,可选 
 - start 
 - 返回:
{Array} 
play
播放曲线动画
- play()
 - 类型:
{Function} - 参数:无
 - 返回:无
 
stop
停止曲线动画
- stop()
 - 类型:
{Function} - 参数:无
 - 返回:无