Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash 8

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-10-2005, 18:25   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2002
Beiträge: 47
100% rund

Hey hallo,
sagt mal wie erstelle ich in Flash einen Kreis welcher auch zu 100 % rund ist. Mit dem normalen Kreiswerkzeug sieht der Kreis nur auf den ersten Blick rund aus. Lässt man ihn jetzt ein wenig rotieren, kann man sehr gut sehn das er schwankt und nicht zu 100% rund ist.
Blue12 ist offline   Mit Zitat antworten
Alt 12-10-2005, 18:26   #2 (permalink)
Master
 
Registriert seit: Aug 2001
Ort: Heilbronn
Beiträge: 352
halte einfach beim aufziehen die Shift-Taste gedrückt.
DonJuan ist offline   Mit Zitat antworten
Alt 12-10-2005, 18:34   #3 (permalink)
Neuer User
 
Registriert seit: Dec 2002
Beiträge: 47
Naja, der Kreis ist zwar proportional rund, jedoch – hast du ihn mal gedreht? Dann siehst du wie er wackelt. Da ich eine Animation mit einem Kreis basteln will der sich dreht darf er nicht so schwanken.
Angehängte Dateien
Dateityp: rar rund.rar (3,9 KB, 25x aufgerufen)
Blue12 ist offline   Mit Zitat antworten
Alt 12-10-2005, 22:57   #4 (permalink)
Master
 
Registriert seit: Aug 2001
Ort: Heilbronn
Beiträge: 352
hast irgendwie recht, hab auch mal eins gemacht und wenn man genau hinschaut, sieht es schon eirig aus. Ist mir noch nie augefallen.
Weiß jemand, woran es liegt?
Angehängte Dateien
Dateityp: rar kreis.rar (6,4 KB, 12x aufgerufen)
DonJuan ist offline   Mit Zitat antworten
Alt 13-10-2005, 09:30   #5 (permalink)
OldMcFlash
 
Benutzerbild von rupi78
 
Registriert seit: May 2005
Ort: Vaduz, FL
Beiträge: 29
Oh mein Gott. Das ist mir selbst auch noch nie aufgefallen.
Habe aber mal nen Kreis per Actionscript gebastelt und da ist der um einiges runder als selbst gezeichnet. Warum das so ist? Keine Ahnung.
rupi78 ist offline   Mit Zitat antworten
Alt 13-10-2005, 09:46   #6 (permalink)
Neuer User
 
Benutzerbild von Quasimondo
 
Registriert seit: Nov 2003
Ort: München
Beiträge: 114
Zitat:
Zitat von DonJuan
Weiß jemand, woran es liegt?
Das Problem dürfte daher kommen, daß Flash zwar im Design-Mode mit Kubischen Bezierkurven arbeitet, die dann aber beim publishen in Quadratische Beziers umgewandelt werden. Dabei kommt es wohl zu leichten Rechenungenauigkeiten, die normalerweise nicht auffallen, bei einem Kreis aber schon.

Wenn man den Kreis gleich per Actionscript zeichnet, setzt man die Kontrollpunkte von vorneherein so, daß diese Ungenauigkeiten sehr klein sind, dadurch sieht das besser aus als die gezeichnete Version.
__________________
[Quasimondo | incubator | talks
Quasimondo ist offline   Mit Zitat antworten
Alt 13-10-2005, 09:49   #7 (permalink)
Neuer User
 
Registriert seit: Dec 2002
Beiträge: 47
... und einen richtig runden Kreis, weiß da keiner wie man den hinbekommt???
Blue12 ist offline   Mit Zitat antworten
Alt 13-10-2005, 09:53   #8 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
wennd nur darum geht einen kreis ohne eiern zu drehen,
leg doch einfach eine stehende kreismaske an unter der du dein objekt drehst.
die unregelmäßigkeiten fallen ja nur durch die drehung am rand auf
michael ist offline   Mit Zitat antworten
Alt 13-10-2005, 10:26   #9 (permalink)
Neuer User
 
Registriert seit: Dec 2002
Beiträge: 47
Ja ok, dass löst zwar mein Problem nur indirekt aber ist erstmal ein guter Anfang den ich jetzt ausbauen kann. Zwei fragen hätte ich da gleich noch:
- wie erstelle ich einen Kreis per Actionscript und
- wie lasse ich einen gezeichneten bzw. erstellten Kreis per Actionscript drehen?
Blue12 ist offline   Mit Zitat antworten
Alt 13-10-2005, 10:48   #10 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
kreis zeichen kannst du dir hier beispiele anschauen:

Hilfe: perfekten Kreis mit sin und cos!

zum drehen brauchst du eigentlich nur eine frameschleife und _rotation.

hab das mal abgespeckt:
ActionScript:
  1. function fDrawCircle(_mc, x, y, r) {
  2.     var sin = Math.sin, cos = Math.cos;
  3.     var t = 8, w = 0, c = Math.PI/t, d = c+c, e = r/cos(c);
  4.     _mc.moveTo(x+r, y);
  5.     while (t--) {
  6.         _mc.curveTo(x+e*cos(c), y+e*sin(c -= d), x+r*cos(w), y+r*sin(w -= d));
  7.     }
  8. }
  9. var kreis_mc:MovieClip = this.createEmptyMovieClip("kreis_mc", 1);
  10. kreis_mc._x = 300;
  11. kreis_mc._y = 300;
  12. kreis_mc.lineStyle(2, 0x0000FF, 100);
  13. kreis_mc.beginFill(0xFF0000, 100);
  14. fDrawCircle(kreis_mc, 0, 0, 100);
  15. kreis_mc.endFill();
  16. kreis_mc.onEnterFrame = function() {
  17.     this._rotation += 10;
  18. };
ein bisschen flimmern tuts immer noch am rand
michael ist offline   Mit Zitat antworten
Alt 13-10-2005, 14:59   #11 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
sorry, aber einen runden kreis braucht man überhaupt nicht zu drehen: der ist überall rund.
dreh halt nur das, was drinnen ist (falls da etwas wäre).

---------------
"..genau, deshalb der vorschlag mit der maske.."
bzw. kreis und inhalt in getrennte mc's.

oder lasst es eiern ;-) wenn mein fahrad 'ne 8 hat, dann eiert das auch.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (13-10-2005 um 18:09 Uhr)
hgseib ist offline   Mit Zitat antworten
Alt 13-10-2005, 15:38   #12 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
Zitat:
Zitat von hgseib
sorry, aber einen runden kreis braucht man überhaupt nicht zu drehen: der ist überall rund.
dreh halt nur das, was drinnen ist (falls da etwas wäre).
genau, deshalb der vorschlag mit der maske.
michael ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 20:19 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele