lendadomato 1 Denunciar post Postado Fevereiro 10, 2011 bom pessoal, já resolvi muitas pendengas dos meus projetos neste forum e recorro mais uma vez aqui porque é o melhor forum do mundo. vamos lá, tenho um componente Slider que aumenta e diminui uma imagem carregada dentro de um mc, o problema é que eu não consigo definir o ponto de registro da imagem carregada para que a mesma seja ampliada à partir do centro, no mc eu consegui alterando o ponto de registro mas a imagem que está dentro do mc se posiciona com o canto superior esquerdo no registro central do mc "no meio", gostaria de posicionar o centro da imagem no centro do mc, acho que fui claro: import fl.events.SliderEvent; var myRequest:URLRequest=new URLRequest("imagem.gif"); var loader:Loader = new Loader() loader.load(myRequest) loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loadTheImage); function loadTheImage(evt:Event):void { mc.addChild(loader) loader.x = -50; loader.y = -60; } slider.addEventListener(SliderEvent.CHANGE, aumentarDiminuir); function aumentarDiminuir (event:SliderEvent):void { mc.scaleX = event.target.value /5; mc.scaleY = event.target.value /5; } eu tentei posicionar o loader: loader.x = -50; loader.y = -60; mas preciso dessa fórmula independente do tamanho da imagem. Umildemente agradeço a ajuda de todos! Compartilhar este post Link para o post Compartilhar em outros sites
Pedro Bartulihe 0 Denunciar post Postado Fevereiro 10, 2011 Boa noite, Cara é simples, o meio da imagem sempre será o tamanho dela dividido por 2, ou seja a metade dela. function aumentarDiminuir (event:SliderEvent):void { mc.scaleX = event.target.value /5; mc.scaleY = event.target.value /5; mc.x = -mc.width/2; mc.y = -height/2; } ae é só você adapatar para o que você precisa. Abcs Compartilhar este post Link para o post Compartilhar em outros sites
lendadomato 1 Denunciar post Postado Fevereiro 10, 2011 Boa noite Pedro, é por isso q este forum é o melhor do mundo. cara ficou assim para quem precisar: var myRequest:URLRequest=new URLRequest("imagem.gif"); var loader:Loader = new Loader() loader.load(myRequest) loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loadTheImage); function loadTheImage(evt:Event):void { mc.addChild(loader) loader.x = -loader.width/2; loader.y = -loader.height/2; } mc.addEventListener(MouseEvent.MOUSE_DOWN, drag); mc.addEventListener(MouseEvent.MOUSE_UP, drop); function drag(dragevent:MouseEvent):void { dragevent.currentTarget.startDrag(); } function drop(dropevent:MouseEvent):void { dropevent.currentTarget.stopDrag(); } import fl.events.SliderEvent; slider.addEventListener(SliderEvent.CHANGE, aumentarDiminuir); function aumentarDiminuir (event:SliderEvent):void { mc.scaleX = event.target.value /5; mc.scaleY = event.target.value /5; } eu coloquei a fórmula no loader da imagem e ficou resolvido. Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites