de ma classe principale i appel à créer une image-objet et l'ajouter à la scèneActionScript application rotation du sprite à startDrag() limites de rectangle
private function addSwatch(evt:MouseEvent):void
{
if (stage.getObjectsUnderPoint(mousePoint()).length == 0)
{
var swatchSide:Number = 100;
var newSwatch:Sprite = new Swatch(0 - swatchSide/2, 0 - swatchSide/2, swatchSide, swatchSide);
newSwatch.x = mouseX;
newSwatch.y = mouseY;
addChild(newSwatch);
}
}
j'ai ajouté une image-objet swatch à l'étape qui , lorsqu'il est déplacé, est contenu dans les limites définies.
this.startDrag(false, swatchBounds());
...
private function swatchBounds():Rectangle
{
var stageBounds = new Rectangle (
0 - defaultSwatchRect.x,
0 - defaultSwatchRect.y,
stage.stageWidth - defaultSwatchRect.width,
stage.stageHeight - defaultSwatchRect.height
);
return stageBounds;
}
si le sprite carré est mis à l'échelle, les travaux suivants limite rectangle retourné
private function swatchBounds():Rectangle
{
var stageBounds = new Rectangle (
0 - defaultSwatchRect.x * swatchObject.scaleX,
0 - defaultSwatchRect.y * swatchObject.scaleY,
stage.stageWidth - defaultSwatchRect.width * swatchObject.scaleX,
stage.stageHeight - defaultSwatchRect.height * swatchObject.scaleY
);
return stageBounds;
}
maintenant je suis en train d'inclure rotation, les sprites carrés dans le mélange. les mathématiques ne sont certainement pas mon fort, mais je sens que je suis sur la piste d'écriture. Cependant, je ne peux pas sembler envelopper la tête autour d'elle pour l'obtenir droit
private function swatchBounds():Rectangle
{
var stageBounds = new Rectangle (
0 - defaultSwatchRect.x * swatchObject.scaleX * Math.cos(defaultSwatchRect.x * swatchObject.rotation),
0 - defaultSwatchRect.y * swatchObject.scaleY * Math.sin(defaultSwatchRect.y * swatchObject.rotation),
stage.stageWidth - defaultSwatchRect.width * swatchObject.scaleX * Math.cos(defaultSwatchRect.width * swatchObject.rotation),
stage.stageHeight - defaultSwatchRect.height * swatchObject.scaleY * Math.sin(defaultSwatchRect.height * swatchObject.rotation)
);
return stageBounds;
}
qu'est ce que defaultSwatchRect et qu'est-ce que cela signifie? – jonathanasdf
oh, ouais c'est confus. Pardon. c'est la même chose que swatchObject (à ce stade). defaultSwatchRect sont les paramètres transmis pour que le site crée l'objet swatchObject. J'ai édité mon post afin que vous puissiez voir ce que je veux dire – TheDarkIn1978
l'édition n'a pas vraiment aider à clarifier ce que fait defaultSwatchRect ... – jonathanasdf