Показать сообщение отдельно
Старый 17.01.2013, 01:38
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 6  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Вот можно посмотреть:

Код AS3:
import flash.events.MouseEvent;
import flash.geom.Point;
import flash.display.Shape;
import flash.display.Sprite;
 
var pointFrom:Point;
var pointTo:Point = new Point();
 
var layerBackground:Sprite = new Sprite();
var layerCanvas:Shape = new Shape();
var layerDraw:Shape = new Shape();
 
layerBackground.graphics.beginFill(0xffffff);
layerBackground.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
layerBackground.graphics.endFill();
 
addChild(layerBackground);
addChild(layerCanvas);
addChild(layerDraw);
 
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
 
function onMouseDown(event:MouseEvent):void
{
	if (!pointFrom)
	{
		pointFrom = new Point(event.stageX, event.stageY);
	}
 
	addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
}
 
function onMouseMove(event:MouseEvent):void
{
	pointTo.x = event.stageX;
	pointTo.y = event.stageY;
 
	redrawNewLine();
}
 
function onMouseUp(event:MouseEvent):void
{
	addNewLine();
 
	pointFrom.x = pointTo.x;
	pointFrom.y = pointTo.y;
 
	removeEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
}
 
function redrawNewLine():void
{
	layerDraw.graphics.clear();
	layerDraw.graphics.lineStyle(1, 0xf00000);
	layerDraw.graphics.moveTo(pointFrom.x, pointFrom.y);
	layerDraw.graphics.lineTo(pointTo.x, pointTo.y);
}
 
function addNewLine():void
{
	layerDraw.graphics.clear();
	layerCanvas.graphics.lineStyle(3, 0x70f000);
	layerCanvas.graphics.moveTo(pointFrom.x, pointFrom.y);
	layerCanvas.graphics.lineTo(pointTo.x, pointTo.y);
}
__________________
Поймай яблоко 2!