鼠标编辑动态标绘标号类。该控件激活时,单击即可选中标号,被选中的标号将显示其控制点及比例点,拖拽这些点以编辑标号,拖拽符号本身平移标号。
通过 active 和 deactive 两个方法,实现动态的激活和注销。
plottingEdit.activate();
注销控件,方法如下:
plottingEdit.deactivate();
| SuperMap. |
鼠标编辑动态标绘标号类。该控件激活时,单击即可选中标号,被选中的标号将显示其控制点及比例点,拖拽这些点以编辑标号,拖拽符号本身平移标号。 |
| Properties | |
| avoidEditPointStyle | {Object} 避让编辑模式下节点 style。 |
| controlPointsStyle | {Object} 控制点风格。 |
| editMode | {SuperMap.Plot.EditMode} 当前的编辑模式。 |
| highlightFlag | {Boolean} 选择航线后是否高亮 |
| highlightStyle | {Object} 航线高亮的样式 |
| hoverMilliSec | {Integer} 悬停的毫秒数。 |
| lockedControlPointsStyle | {Object} 标号锁定的控制点风格。 |
| mouseTolerance | {Integer} 鼠标模式容限。 |
| onComplete | {Function} 拖拽完成时都会调用该方法。该方法传递两个参数:拖拽的矢量要素。 |
| onDblclick | {Function} 鼠标双击在矢量要素上会调用该方法。该方法传递两个参数:鼠标悬停的矢量要素、鼠标事件。 |
| onDrag | {Function} 矢量要素的每一次移动都会调用该方法。该方法传递两个参数:拖拽的矢量要素、鼠标当前位置。 |
| onHover | {Function} 鼠标悬停在矢量要素上会调用该方法。该方法传递两个参数:鼠标悬停的矢量要素、鼠标事件。 |
| onMove | {Function} 平移时可以调用该方法,完成用户指定的任务。 |
| onOut | {Function} 鼠标离开矢量要素会调用该方法。该方法传递一个参数:鼠标离开的矢量要素。 |
| onOver | {Function} 鼠标进入矢量要素会调用该方法。该方法传递两个参数:鼠标进入的矢量要素、鼠标事件。 |
| onStart | {Function} 拖拽开始时执行的方法。该方法传递两个参数:拖拽的矢量要素、鼠标当前位置。 |
| rotatePointStyle | {Object} 旋转点 style。 |
| scalePointsStyle | {Object} 比例点 style。 |
| touchTolerance | {Number} 触摸屏模式容限。 |
| unEditBoxStyle | {Object} 不可编辑时包围盒 style。 |
| Constructor | |
| SuperMap. |
创建该控件的新实例。 |
| Functions | |
| activate | 激活该控件。 |
| align | 设置标号对齐。 |
| avoidEdit | 设置进入或者退出避让编辑 |
| deactivate | 取消激活控件,使其不可用。 |
| deleteSelectFeature | 删除标绘扩展符号 (选中) |
| destroy | 销毁该类,释放空间。 |
| equalLarge | 设置标号等大。 |
| multiSelect | 多选与点选的切换接口。 |
| removeAllAvoidRegion | 移除当前选中对象所有的避让区域 |
| removeAvoidRegion | 移除当前选中对象指定的避让区域 |
| setEditMode | 设置当前的编辑模式 |
| uniformDistribution | 均匀分布。 |
{SuperMap.Plot.EditMode} 当前的编辑模式。
{Function} 拖拽开始时执行的方法。该方法传递两个参数:拖拽的矢量要素、鼠标当前位置。
var plottingEdit = new SuperMap.Control.PlottingEdit();
plottingEdit.onStart=test;
function test(feature,pixel){
var fea= feature;
var position = pixel;
console.log( fea);
}
| feature | {SuperMap.Feature.Vector} 拖拽的要素。 |
| pixel | {SuperMap.Pixel} 鼠标当前的位置。 |
{Function} 矢量要素的每一次移动都会调用该方法。该方法传递两个参数:拖拽的矢量要素、鼠标当前位置。
var plottingEdit = new SuperMap.Control.PlottingEdit();
plottingEdit.onDrag=onDrag;
function onDrag(feature,pixel){
var fea= feature;
var position = pixel;
console.log( fea);
}
| feature | {SuperMap.Feature.Vector} 拖拽的要素。 |
| pixel | {SuperMap.Pixel} 鼠标当前的位置。 |
{Function} 拖拽完成时都会调用该方法。该方法传递两个参数:拖拽的矢量要素。
var plottingEdit = new SuperMap.Control.PlottingEdit();
plottingEdit.onComplete=onComplete;
function onComplete(feature){
var feas = features;
console.log( feas );
}
| feature | {Array(SuperMap.Feature.Vector)} 拖拽的要素。 |
{Function} 平移时可以调用该方法,完成用户指定的任务。
| feature | {SuperMap.Feature.Vector} 平移的要素。 |
| x | {Float} x轴正方向上移动的距离。 |
| y | {Float} y轴正方向上移动的距离。 |
{Function} 鼠标进入矢量要素会调用该方法。该方法传递两个参数:鼠标进入的矢量要素、鼠标事件。
var plottingEdit = new SuperMap.Control.PlottingEdit();
plottingEdit.onOver=onOver;
function onOver(feature,pixel){
var fea= feature;
var position = pixel;
console.log( fea);
}
| feature | {SuperMap.Feature.Vector} 矢量要素。 |
| evt | {MouseEvent} 鼠标事件。 |
{Function} 鼠标离开矢量要素会调用该方法。该方法传递一个参数:鼠标离开的矢量要素。
var plottingEdit = new SuperMap.Control.PlottingEdit();
plottingEdit.onOut=onOut;
function onOut(feature){
var fea= feature;
console.log( fea);
}
| feature | {SuperMap.Feature.Vector} 矢量要素。 |
{Function} 鼠标悬停在矢量要素上会调用该方法。该方法传递两个参数:鼠标悬停的矢量要素、鼠标事件。
var plottingEdit = new SuperMap.Control.PlottingEdit();
plottingEdit.onHover=onHover;
function onHover(feature,evt){
var fea= feature;
console.log( fea);
}
| feature | {SuperMap.Feature.Vector} 悬停的要素。 |
| evt | {MouseEvent} 鼠标事件。 |
{Function} 鼠标双击在矢量要素上会调用该方法。该方法传递两个参数:鼠标悬停的矢量要素、鼠标事件。
var plottingEdit = new SuperMap.Control.PlottingEdit();
plottingEdit.onDblclick=onDblclick;
function onDblclick(feature,evt){
var fea= feature;
console.log( fea);
}
| feature | {SuperMap.Feature.Vector} 双击的要素。 |
| evt | {MouseEvent} 鼠标事件。 |
创建该控件的新实例。
| layer | {SuperMap.Layer.PlottingLayer} 执行编辑的图层。 |
| options | {Object} 设置该类开放的属性值。 |
创建 PlottingEdit 控件新实例的方法如下所示:
//定义一个矢量图层 vectorLayer 进行符号的编辑
var plottingLayer = new SuperMap.Layer.PlottingLayer("plottingLayer");
//实例化一个 plottingEdit 控件
var plottingEdit = new SuperMap.Control.PlottingEdit();
//地图上添加控件
map.addControl(plottingEdit);
//激活 plottingEdit 控件
plottingEdit.activate();
removeAvoidRegion: function( region )
移除当前选中对象指定的避让区域
| region | {SuperMap.Geometry.AvoidRegion} 要删除的避让区域。 |
equalLarge: function( equalLargeType )
设置标号等大。
| EqualLargeType | {SuperMap.Plot.EqualLargeType} 等大类型。 |
uniformDistribution: function( uniformDistributionType )
均匀分布。
| uniformDistribution | {SuperMap.Plot.UniformDistributionType} 均匀分布。 |
销毁该类,释放空间。
destroy: function ()
激活该控件。
activate: function ()
取消激活控件,使其不可用。
deactivate: function ()
设置标号对齐。
align: function ( alignType )
多选与点选的切换接口。
multiSelect: function ( multiple )
设置当前的编辑模式
setEditMode: function( editMode )
设置进入或者退出避让编辑
avoidEdit: function( avoidEditting )
移除当前选中对象所有的避让区域
removeAllAvoidRegion: function()
移除当前选中对象指定的避让区域
removeAvoidRegion: function( region )
删除标绘扩展符号 (选中)
deleteSelectFeature: function ()
设置标号等大。
equalLarge: function( equalLargeType )
均匀分布。
uniformDistribution: function( uniformDistributionType )