activiti前端画图转化_使用Flex开发Activiti流程设计器(七)-线条箭头画法

画线条的箭头要根据线条的开始坐标和结束坐标来确定角度

代码:

public function drawArrow(ui:Sprite,fromPoint:Point,toPoint:Point,color:uint):void

{

ui.graphics.lineTo(toPoint.x,toPoint.y);

var vDistance:Number= toPoint.y-fromPoint.y;//起始点垂直距离

var sDistance:Number=Point.distance(fromPoint,toPoint);//起始点直线距离

var sinValue:Number=vDistance/sDistance;//起始点间的夹角的sin值

/**两点间直线与水平线的角度(弧度)*/

var radian:Number=Math.asin(sinValue);

this.radian = radian;

/**用于计算三角形顶点与目标点水平距离的夹角(弧度)*/

var hRadian:Number=Math.PI/6-radian;

/**用于计算三角形顶点与目标点垂直距离的夹角(弧度)*/

var vRadian:Number=radian+Math.PI/6;

/**上顶点与目标点的垂直距离*/

var topYDis:Number=13*Math.sin(vRadian);

/**上顶点与目标点的水平距离*/

var topXDis:Number=13*Math.cos(vRadian);

/**下顶点与目标点的垂直距离*/

var botYDis:Number=13*Math.sin(hRadian);

/**下顶点与目标点的水平距离*/

var botXDis:Number=13*Math.cos(hRadian);

/**计算三角形上下顶点坐标*/

var topPointX:Number=toPoint.x-topXDis;

var topPointY:Number=toPoint.y-topYDis;

var botPointX:Number=toPoint.x-botXDis;

var botPointY:Number=toPoint.y+botYDis;

if(toPoint.x

{

topPointX=toPoint.x+topXDis;

botPointX=toPoint.x+botXDis;

}

ui.graphics.beginFill(0xFECff0);

ui.graphics.moveTo(topPointX,topPointY);

ui.graphics.lineTo(toPoint.x,toPoint.y);

ui.graphics.lineTo(botPointX,botPointY);

ui.graphics.lineTo(topPointX,topPointY);

}

分享到:

2012-03-26 15:18

浏览 5471

评论

2 楼

tangchenglin

2013-07-19

博主,能给份事例源码吗?我们现在打算做一个Activiti在线流程设计器,以供学习,谢谢!474863759@qq.com

1 楼

ca喜气洋洋

2013-03-28

<![CDATA[${deptLeaderPass == 'false'}]]>

conditionExpression 下面的脚本 的 < 怎么强制转换成 >了?求解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值