com.supermap.web.core.geometry
public class GeoLine
继承 GeoLine Inheritance Geometry Inheritance flash.events.EventDispatcher
子类 Route

几何线对象.

几何线对象由点对象集合组成,集合中存储了一个或多个组成线对象的子对象,各个子对象又由若干个线节点 Point2D 组成。该对象可用来表示河流、道路、国家边界线等线状地物。

默认 MXML 属性parts



公共属性
  属性 定义方
    bounds : Rectangle2D
[Override] [read-only] 获取地理坐标系下几何对象的范围,也就是几何对象的最小外接矩形。GeoPoint 的最小外接矩形就是其本身,即 Rectangle2D(x, y, x, y)。
GeoLine
    center : Point2D
[Override] [read-only]
GeoLine
    defaultStyle : Style
[Override] [read-only] 获取指定对象的默认样式。
GeoLine
    partCount : int
[read-only] 获取几何线对象中的子对象个数。
GeoLine
    parts : Array
组成几何线对象的子对象集合.
GeoLine
  Inherited SRID : int
投影坐标参数。通过该参数,服务器判断Geometry对象的坐标参考系是否与数据集相同,如果不同,则在数据入库前进行投影变换。(SuperMap iServer 7.0及以上版本支持)
Geometry
    type : String
[Override] 获取或设置几何对象类型。对应于 Geometry 类中的常量。
GeoLine
受保护的属性
  属性 定义方
  Inherited _center : Point2D
Geometry
公共方法
  方法 定义方
   
初始化( GeoLine )的新实例。
GeoLine
   
addPart(pts:Array):int
向线对象追加一个子对象。
GeoLine
   
[Override] 克隆几何对象.
GeoLine
   
createBezier(points:Array, precision:int, part:int):GeoLine
[static] 静态函数,创建三次贝塞尔曲线,利用输入的点数组计算出相应的三次贝塞尔曲线,可以由类名直接调用。
GeoLine
   
createBezier2(points:Array, part:int = 20):GeoLine
[static] 静态函数,创建二次贝塞尔曲线,利用输入的点数组计算出相应的二次贝塞尔曲线,可以由类名直接调用。
GeoLine
   
createBspline(points:Array, filterSize:int):GeoLine
[static] 静态函数,创建B样条曲线,利用输入的点数组计算出相应的B样条曲线,创建的曲线会穿过所有的输入点,可以由类名直接调用。
GeoLine
   
createCardinal(points:Array):Array
[static] 静态函数,创建 Cardinal 曲线的控制点,利用输入的点数组计算出相应的Cardinal控制点,再使用贝塞尔曲线(缺点在于控制点也得用户传入)插值出的 Cardinal 曲线是经过用户传入的所有点。
GeoLine
   
deletePoint(partIndex:int, pointIndex:int):void
删除子对象中指定位置上的点。
GeoLine
   
equals(geometry:Geometry):Boolean
[Override] 判断指定的几何对象是否与当前几何对象具有相同坐标值。
GeoLine
   
getPart(index:int):Array
从线对象中获取指定索引值的子对象。
GeoLine
   
indexOf(pts:Array):int
获取指定子对象在线对象中的索引位置。
GeoLine
   
insertPart(index:int, pts:Array):Boolean
向线对象中的指定位置插入一个子对象。
GeoLine
   
insertPoint(partIndex:int, pointIndex:int, point:Point2D):void
向子对象的指定位置插入一个点。
GeoLine
   
removePart(index:int):Boolean
根据指定的索引值删除线对象中的子对象。
GeoLine
   
setPart(index:int, pts:Array):Boolean
用新的子对象替换线对象中指定的子对象。
GeoLine
   
setPoint(partIndex:int, pointIndex:int, point:Point2D):void
替换子对象中指定位置上的点。
GeoLine
受保护的方法
  方法 定义方
  Inherited
geometryChangeHandler(event:Event):void
Geometry
事件
  事件 Summary 定义方
    当线对象的几何属性发生改变时解发该事件。如:删除线结点、增加线结点。 GeoLine
公共常量
  常量 定义方
  Inherited GEOLINE : String = SmGeoLine
[static] 定义常量 GEOLINE 的 type 属性值,表示几何对象类型——线。
Geometry
  Inherited GEOMETRY_CHANGE : String = geometryChange
[static] 定义常量 GEOMETRY_CHANGE 的 type 属性值。
Geometry
  Inherited GEOPOINT : String = SmGeoPoint
[static] 定义常量 GEOPOINT 的 type 属性值,表示几何对象类型——点。
Geometry
  Inherited GEOREGION : String = SmGeoRegion
[static] 定义常量 GEOREGION 的 type 属性值,表示几何对象类型——面。
Geometry
属性详细信息
bounds 属性
bounds:Rectangle2D  [read-only] [Override]

获取地理坐标系下几何对象的范围,也就是几何对象的最小外接矩形。GeoPoint 的最小外接矩形就是其本身,即 Rectangle2D(x, y, x, y)。


Implementation
    public function get bounds():Rectangle2D
center 属性  
center:Point2D  [read-only] [Override]


Implementation
    public function get center():Point2D
defaultStyle 属性  
defaultStyle:Style  [read-only] [Override]

获取指定对象的默认样式。


Implementation
    public function get defaultStyle():Style
partCount 属性  
partCount:int  [read-only]

获取几何线对象中的子对象个数。


Implementation
    public function get partCount():int

另请参见

parts 属性  
parts:Array

组成几何线对象的子对象集合.

几何线对象由一个或多个子对象组成,各个子对象又由若干个线节点 Point2D 组成。该数组中的对象个数与属性 partCount 相同。


Implementation
    public function get parts():Array
    public function set parts(value:Array):void

另请参见

type 属性  
type:String[Override]

获取或设置几何对象类型。对应于 Geometry 类中的常量。


Implementation
    public function get type():String
    public function set type(value:String):void

另请参见

构造函数详细信息
GeoLine () 构造函数
public function GeoLine()

初始化( GeoLine )的新实例。

方法详细描述
addPart () 方法
public function addPart(pts:Array):int

向线对象追加一个子对象。

参数

pts:Array — 组成子对象的点对象集合。

返回
int — 如果成功添加子对象则返回该子对象在线对象中的序号。
clone () 方法  
override public function clone():Geometry

克隆几何对象. clone 与 copy 的区别:clone要创建一个新的与原对象一样的对象;而 copy 则是将原对象中的值复制到现在的对象中,不需要重新创建一个对象。

返回
Geometry
createBezier () 方法  
public static function createBezier(points:Array, precision:int, part:int):GeoLine

静态函数,创建三次贝塞尔曲线,利用输入的点数组计算出相应的三次贝塞尔曲线,可以由类名直接调用。

参数

points:Array — 用来生成曲线的原始点数组
 
precision:int — 曲线的拆分精度,为整数,越小运算量越大。
 
part:int — 曲线的分段数,为整数,如果设置了此参数则precision无效。

返回
GeoLine — 返回GeoLine对象,GeoLine.parts[0]数组中保存生成的贝塞尔曲线点。
createBezier2 () 方法  
public static function createBezier2(points:Array, part:int = 20):GeoLine

静态函数,创建二次贝塞尔曲线,利用输入的点数组计算出相应的二次贝塞尔曲线,可以由类名直接调用。

参数

points:Array — 用来生成曲线的原始点数组
 
part:int (default = 20) — 曲线的分段数,为整数。

返回
GeoLine — 返回GeoLine对象,GeoLine.parts[0]数组中保存生成的贝塞尔曲线点。
createBspline () 方法  
public static function createBspline(points:Array, filterSize:int):GeoLine

静态函数,创建B样条曲线,利用输入的点数组计算出相应的B样条曲线,创建的曲线会穿过所有的输入点,可以由类名直接调用。

参数

points:Array — 用来生成曲线的原始点数组
 
filterSize:int — 曲线平滑曲度,为整数。

返回
GeoLine — 返回GeoLine对象,GeoLine.parts[0]数组中保存生成的B样条曲线点。
createCardinal () 方法  
public static function createCardinal(points:Array):Array

静态函数,创建 Cardinal 曲线的控制点,利用输入的点数组计算出相应的Cardinal控制点,再使用贝塞尔曲线(缺点在于控制点也得用户传入)插值出的 Cardinal 曲线是经过用户传入的所有点。

参数

points:Array — 用来生成控制点的基础点数组。

返回
Array — 返回点数组,此点数组包含了用户传入的点,并且在每两个点之间插入了两个控制点,用户可以使用此数组直接调用 GeoLine.createBezier 穿件曲线,不需要用户输入控制点,并且生成的曲线是穿过了所有用户的输入点。
deletePoint () 方法  
public function deletePoint(partIndex:int, pointIndex:int):void

删除子对象中指定位置上的点。

参数

partIndex:int — 子对象的索引位置。
 
pointIndex:int — 指定的删除位置。

equals () 方法  
override public function equals(geometry:Geometry):Boolean

判断指定的几何对象是否与当前几何对象具有相同坐标值。

参数

geometry:Geometry — 与当前几何对象进行比较的几何对象。

返回
Boolean — 如果两个几何对象具有相同坐标值,返回 true;否则返回 false。
getPart () 方法  
public function getPart(index:int):Array

从线对象中获取指定索引值的子对象。

参数

index:int — 指定的索引值。

返回
Array — 返回与指定索引值对应的子对象。由于子对象又由若干个线结点( Point2D )组成,因此返回类型为 Array,即点集合。
indexOf () 方法  
public function indexOf(pts:Array):int

获取指定子对象在线对象中的索引位置。

参数

pts:Array — 组成子对象的点对象集合。

返回
int — 若获取成功,则返回指定对象在线对象中的索引位置,否则返回 -1.
insertPart () 方法  
public function insertPart(index:int, pts:Array):Boolean

向线对象中的指定位置插入一个子对象。

参数

index:int — 指定的位置。
 
pts:Array — 组成子对象的点对象集合。

返回
Boolean — 若插入成功则返回 true,否则返回 false。
insertPoint () 方法  
public function insertPoint(partIndex:int, pointIndex:int, point:Point2D):void

向子对象的指定位置插入一个点。

参数

partIndex:int — 子对象的索引位置。
 
pointIndex:int — 指定的插入位置。
 
point:Point2D — 要插入的点。

removePart () 方法  
public function removePart(index:int):Boolean

根据指定的索引值删除线对象中的子对象。

参数

index:int — 要删除的子对象的索引值。

返回
Boolean — 如果成功删除指定索引的子对象则返回 true,否则返回 false。
setPart () 方法  
public function setPart(index:int, pts:Array):Boolean

用新的子对象替换线对象中指定的子对象。

参数

index:int — 指定的子对象索引值。
 
pts:Array — 组成新的子对象的点对象集合。

返回
Boolean — 如果成功替换子对象则返回 true,否则返回 false。
setPoint () 方法  
public function setPoint(partIndex:int, pointIndex:int, point:Point2D):void

替换子对象中指定位置上的点。

参数

partIndex:int — 子对象的索引位置。
 
pointIndex:int — 指定的替换位置。
 
point:Point2D — 替换点。

事件详细信息
geometryChange 事件
Event Object Type: flash.events.Event

当线对象的几何属性发生改变时解发该事件。如:删除线结点、增加线结点。