AbstractSignDrawer

符号基类

new YS.AbstractSignDrawer(options)

符号基类
Name Type Description
options Object 对象有下面这些属性:
Name Type Default Description
id String optional 唯一标识
name String optional 名称
color Color optional 颜色
fill Boolean true optional 是否填充,不填充将只绘制边线
lineWidth Number 2 optional 线宽,单位像素,fill=false时有效
active Boolean optional 是否激活
See:

Members

active : Boolean

获取或设置是否激活

readonlycolor : Color

获取或设置颜色

controlPoints : Array.<XYZ>

获取控制点

fill : Boolean

获取是否填充

readonlyicon : String

代表矢量符号的缩略图图标

readonlyid : String

获取唯一标识

lineWidth : Number

不填充,只绘线时的线宽

maxControlNum : Number

控制点最大数目

name : String

获取名称
Default Value: ""

readonlytype : ShapeDrawerType

获取符号类型

visible : Boolean

获取或设置是否可见

Methods

addControlPoint(point)

增加新控制点
Name Type Description
point XYZ 要增加的控制点坐标

calculateIntersection(v_1, v_2, point1, point2)Object

计算两条直线的交点 通过向量的思想进行计算,需要提供两个向量以及两条直线上各自一个点
Name Type Description
v_1 Object 直线1的向量
v_2 Object 直线2的向量
point1 Object 直线1上的任意一点
point2 Object 直线2上的任意一点
Returns:
返回交点

calculateVector(v, a, d)Array

计算和基准向量v夹角为a、长度为d的目标向量(理论上有两个,一左一右)
Name Type Description
v Object 基准向量
a Number 目标向量和基准向量的夹角,默认为90度,这里的单位使用弧度
d Number 目标向量的长度,即模,默认为1,即单位向量
Returns:
返回目标向量数组(就两个向量,一左一右)

dragSign(pointOld, pointNew)

拖动
Name Type Description
pointOld XYZ 旧位置坐标
pointNew XYZ 新位置坐标

abstractexportOptions()Object

获取SignDrawer的导出附加信息,即该Drawer的特有参数,用于导入时恢复现场
Returns:
返回自定义json对象,默认undefined

getPositionss()Array.<Array.<XYZ>>

获取点集
Returns:
点集

abstractimportOptions(options)

设置SignDrawer的导入附加信息,即该Drawer的特有参数,用于恢复现场
Name Type Description
options Object 导出时的自定义json对象

moveControlPoint(index, point)

移动控制点
Name Type Description
index Number 要移动的控制点索引
point XYZ 移动后的控制点坐标

Events

click

点击