AS3 изменить линию кривой
У меня есть эта конечная часть моего кода, мне просто нужно согнуть ее в противоположном направлении. Он создает линию от точки до мыши, которая изгибается вверх. Мне нужно, чтобы это изогнулось. Какие значения я бы изменил, чтобы сделать это?
if ((mouseX-targetPointX<0 && mouseY-targetPointY>0) || (mouseX-targetPointX>=0 && mouseY-targetPointY<=0))
{
if (mouseY-targetPointY>0)
{
line.moveTo(mouseX-offset,mouseY-offset);
line.curveTo(mouseX-offset,targetPointY-offset,targetPointX-offset,targetPointY-offset);
line.lineTo(targetPointX+offset,targetPointY+offset);
line.curveTo(mouseX+offset,targetPointY+offset,mouseX+offset,mouseY+offset);
}
else
{
line.moveTo(mouseX-offset,mouseY-offset);
line.curveTo(targetPointX-offset,mouseY-offset,targetPointX-offset,targetPointY-offset);
line.lineTo(targetPointX+offset,targetPointY+offset);
line.curveTo(targetPointX+offset,mouseY+offset,mouseX+offset,mouseY+offset);
}
}
else
{
if (mouseX<targetPointX && mouseY<targetPointY)
{
line.moveTo(mouseX-offset,mouseY+offset);
line.curveTo(targetPointX-offset,mouseY+offset,targetPointX-offset,targetPointY+offset);
line.lineTo(targetPointX+offset,targetPointY-offset);
line.curveTo(targetPointX+offset,mouseY-offset,mouseX+offset,mouseY-offset);
}
else
{
line.moveTo(mouseX-offset,mouseY+offset);
line.curveTo(mouseX-offset,targetPointY+offset,targetPointX-offset,targetPointY+offset);
line.lineTo(targetPointX+offset,targetPointY-offset);
line.curveTo(mouseX+offset,targetPointY-offset,mouseX+offset,mouseY-offset);
}
}
line.endFill();
}
}
1 ответ
Решение
Вам нужно изменить контрольные точки в curveTo
методы, которые являются первыми 2 параметрами.
curveTo(controlPointX,controlPointY,targetX,targetY);
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Graphics.html