//package cn.sagacloud.android.cadengine.items
//
///**
// * 标志item
// *
// * @author 付国宝
// */
//class UserMark {
//    /** 标志宽度 */
//    private var width: Double = 10.0
//    /** 标志高度 */
//    private var height: Double = 10.0
//    /** 轮廓线坐标 */
//    var outLine: ArrayList<SPoint>? = null
//    /** 是否闭合 */
//    var closeFlag = false
//
//    /**
//     * 构造函数
//     *
//     * @param parent    指向父对象
//     * @param data      标志数据
//     */
//    constructor(parent: SGraphyItem?, data: SPoint){
//        super(parent)
//        this.outLine.add(data)
//    } // Constructor
//
//    /**
//     * Item 对象边界区域
//     *
//     * @return	SRect
//     */
//    fun boundingRect() : SRect {
//        return SRect(0, 0, this.width, this.height)
//    } // Function boundingRect()
//
//    /**
//     * 鼠标按下
//     *
//     * @param	event         事件参数
//     * @return	boolean
//     */
//    fun onMouseDown(event: SMouseEvent) : Boolean {
//        if (!this.closeFlag) {
//            var newPoint = this.outLine?.get(this.outLine!!.size - 1)
//            if (newPoint.x == this.outLine?.get(0).x && newPoint.y == this.outLine?.get(0).y) {
//                this.closeFlag = true
//            } else {
//                newPoint = SPoint(event.x, event.y)
//                this.outLine!!.add(newPoint)
//            }
//        }
//        return true
//    } // Function onMouseDown()
//
//    /**
//     * 鼠标移动事件
//     *
//     * @param	event         事件参数
//     * @return	boolean
//     */
//    fun onMouseMove(event: SMouseEvent) : Boolean {
//        if (!this.closeFlag) {
//            var first: SPoint? = null
//            var newLast: SPoint? = null
//            if (this.outLine!!.size > 1) {
//                this.outLine.pop()
//                first = this.outLine?.get(0)
//            }
//            newLast = SPoint(event.x, event.y)
//            if(this.outLine!!.size > 2 && first != null){
//                if (event.x + 20 >= first.x && event.x - 20 <= first.x && event.y + 20 >= first.y && event.y - 20 <= first.y) {
//                    newLast = first
//                }
//            }
//            this.outLine!!.add(newLast)
//        }
//        return true
//    } // Function onMouseMove()
//
//    /**
//     * Item绘制操作
//     *
//     * @param   painter       painter对象
//     * @param   rect          绘制区域
//     */
//    fun onDraw(painter: SPainter, rect/*?*/: SRect){
//        if (this.visible) {
//            painter.pen.color = SColor("#00ff00")
//            painter.pen.lineWidth = 2
//            if (this.closeFlag) {
//                painter.brush.color = SColor("#00ff00")
//            }else{
//                painter.brush.color = SColor("#ffffff80")
//            }
////            this.outLine.map(t => {
////                painter.drawRect(t.x - 4, t.y - 4, 8, 8)
////            })
//            painter.drawPolyline(this.outLine)
//        }
//    } // Function onDraw()
//} // Class UserMark