Avatar billede nekjam Nybegynder
23. maj 2008 - 16:05 Der er 5 kommentarer

Rotér grafik interaktivt?

Hej!

Nogen der ved hvordan man roter grafik interaktivt?

Jeg har nogle knapper på en mixerpult, som jeg vil
kunne roter med musen, med et center i midten af knappen.

Nogen der kan hjælpe?
Avatar billede w13 Novice
23. maj 2008 - 16:39 #1
Jeg har ikke koden til det, men hvis du ikke får det løst på anden vis, så er der masser af sider om det: http://www.google.com/search?q=actionscript+rotate+mc+mouse&rls=com.microsoft:*&ie=UTF-8&oe=UTF-8&startIndex=1&startPage=1
Avatar billede Slettet bruger
26. maj 2008 - 09:07 #2
package {
    import flash.display.Sprite;
    import flash.events.MouseEvent.*;
    public class RotButton extends Sprite {
        public function RotButton() {
            addEventListener(MouseEvent.MOUSE_DOWN, MOUSE_DOWN);
        }
        public function RotToMouse():Number {
            rotation = Math.atan2(stage.mouseX - x, stage.mouseY - y);
            return rotation;
        }
        public function MOUSE_DOWN(e:MouseEvent) {
            removeEventListener(MouseEvent.MOUSE_DOWN, MOUSE_DOWN);
            addEventListener(MouseEvent.MOUSE_MOVE, MOUSE_MOVE);
            addEventListener(MouseEvent.MOUSE_UP, MOUSE_UP);
        }
        public function MOUSE_MOVE(e:MouseEvent) {
            RotToMouse();
        }
        public function MOUSE_UP(e:MouseEvent) {
            removeEventListener(MouseEvent.MOUSE_MOVE, MOUSE_MOVE);
            removeEventListener(MouseEvent.MOUSE_UP, MOUSE_UP);
            addEventListener(MouseEvent.MOUSE_DOWN, MOUSE_DOWN);
        }
    }
}

Burde kunne gøre det ;)
Avatar billede nekjam Nybegynder
26. maj 2008 - 09:36 #3
Hmm...får følgende fejlmeddelelse:

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 1: Syntax error.
    package {

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 4: Attribute used outside class.
        public class RotButton extends Sprite {

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 12: The class or interface 'MouseEvent' could not be loaded.
            public function MOUSE_DOWN(e:MouseEvent) {

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 17: The class or interface 'MouseEvent' could not be loaded.
            public function MOUSE_MOVE(e:MouseEvent) {

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 20: The class or interface 'MouseEvent' could not be loaded.
            public function MOUSE_UP(e:MouseEvent) {

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 1: Statement must appear within on handler
    package {

Total ActionScript Errors: 6     Reported Errors: 6



Skal koden være på en knap eller mc?
Skal den have et instance name?
Avatar billede rookieboy Nybegynder
26. maj 2008 - 09:55 #4
nekjam, ovenstående kode er en actionscript 3 classfile!
Det skal afvikles i en seperat .as fil som ligger i samme folder som din fla fil.
Derudover, skal dit projekt naturligvis også køres i AS3.

Hvis du ikke har rodet med objekt orienteret programmering gør, vil jeg anbefale dig enten af læse Colin Moock: Essential Actionscript 3 - eller at finde en anden indgangsvinkel til at løse opgaven.
Avatar billede Slettet bruger
26. maj 2008 - 10:58 #5
Ups, ja, det er måske lidt for lige på og hårdt, hvis du ikke har arbejdet med klasser før. Men læs da om det... OOP (objektorienteret programmering) er utrolig smart, når først man kan det :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



Seneste spørgsmål Seneste aktivitet
I går 20:46 opkaldside Af hagbartm i Mobiltelefoner
I går 16:05 win 10 vil ikke boote Af bb69 i Windows
I går 11:20 Lenovo x390 Af tobberjas i PC
I går 10:14 Alder i Excel Af Nanarsi i Excel
I går 09:00 Flere linier på faneblad Af Peder Lund Nielsen i Excel