hilfdirselbst.ch
Facebook Twitter gamper-media
kal.ma
Beiträge: 3
19. Aug 2003, 10:46
Beitrag #1 von 6
Bewertung:
(1845 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bitmapdarsteller mit Lingo ändern


ersteinmal hallo zusammen. finde euer forum echt gelungen. ok dann mal zu meinem Problem. Ich lade mit importfileinto bitmapdarsteller in eine besetzung und möchte diese bitmapdarsteller in der größe ändern. wie kann ich dies tuen.

DANKE Top
 
X
Anonym
Beiträge: 22827
19. Aug 2003, 14:34
Beitrag #2 von 6
Beitrag ID: #47827
Bewertung:
(1845 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bitmapdarsteller mit Lingo ändern


on xy
sprite(me.spritenum).width=200
sprite(me.spritenum).height=300
end


das in das spritescript deines bitmaps

jolanda
als Antwort auf: [#47788] Top
 
Anonym
Beiträge: 22827
19. Aug 2003, 14:44
Beitrag #3 von 6
Beitrag ID: #47830
Bewertung:
(1845 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bitmapdarsteller mit Lingo ändern


erstmal vielen dank für die schnelle reaktion
doch dies ist hier nicht gemeint
ich möchte den member begrenzen und nicht das sprite dies ist dann wohl doch etwas komplizierter vielleicht durch ein xtra oder ...

Danke im voraus
als Antwort auf: [#47788] Top
 
Anonym
Beiträge: 22827
19. Aug 2003, 15:43
Beitrag #4 von 6
Beitrag ID: #47841
Bewertung:
(1845 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bitmapdarsteller mit Lingo ändern


von imaging lingo habe ich keine ahnung
versuchs mal mit der direktor hilfe unter quad --> copyPixels()
oder so
jo
als Antwort auf: [#47788] Top
 
donkey shot
Beiträge: 1416
19. Aug 2003, 17:35
Beitrag #5 von 6
Beitrag ID: #47872
Bewertung:
(1845 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bitmapdarsteller mit Lingo ändern


Willst Du die Größe des Sprites auf der Bühne ändern oder die Größe des Darstellers?

Ersteres geht zB. mit...

sprite(x).width = 1000
sprite(x).height = 1000
(konkrete Pixelangabe)

sprite(x).width = sprite(x).width * 1.5
sprite(x).height = sprite(x).height * 1.5
(Faktor)

sprite(x).rect = sprite(x).rect * 2

etc.

Letzteres geht mit folgendem Skript...

Dabei wird das Bild von einem Quelldarsteller mit dem Befehl copyPixels in einen anderen kopiert und dabei vergrößert oder verkleinert.

Trockengeschwommen:

Bildobjekt.copyPixels(Quellbild(zB. Darsteller).image, Ziel.rect, Quelle.rect, [hier können noch Parameter rein])

Beispiel:

Nehmen wir mal an Darsteller 2 ist 200 x 200 Pixel groß.

-- die folgende Zeile erzeugt ein neues Bild mit Breite, Höhe und Farbtiefe, das erstmal "virtuell" bleibt, halb so groß wie Darsteller 2

myImg = image(100, 100, 32)

-- diese Zeile kopiert die Pixel des Darstellers 2 in das "virtuelle" Bild und verkleinert sie auf dessen Größe, nämlich um die Hälfte (member(2).rect/2); als Zielrechteck könnte auch myImg.rect angegeben sein:

myImg.copyPixels(member(2).image, member(2).rect/2, member(2).rect)

-- und diese Zeile setzt das "virtuelle" Bild in Darsteller 3 ein:

member(3).image = myImg

Du kannst natürlich auch das Bild wieder in member(2) einsetzen, allerdings ist dann das Ursprungsbild verloren.

Statt der ersten Zeile mit den konkreten Angaben (100, 100) kannst Du natürlich auch (member(2).with / 2, member(2).height / 2) schreiben.

Ich weiß - das ganze ist leider etwas kompliziert und hat den Nachteil, das Director nicht sonderlich gut (bzw. gar nicht) interpoliert. Um Qualitätsverluste zu vermeiden, solltest Du nur verkleinern, nicht vergrößern. Oder bei der Veränderung von Sprites zuerst stark verkeinern und dann erst vergrößern.

Das beste ist es, solche Operationen irgendwie mit Bildbearbeitungsprogrammen zu machen.

Hoffe, ich habe das ganze halbwegs verständlich erklärt, wenn nicht, oder wenn ich Dich falsch verstanden habe, mußt Du nochmal nachfragen.

grüsse,

Christof
als Antwort auf: [#47788] Top
 
Anonym
Beiträge: 22827
20. Aug 2003, 08:04
Beitrag #6 von 6
Beitrag ID: #47927
Bewertung:
(1845 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bitmapdarsteller mit Lingo ändern


vielen vielen dank ich werde dies mal ausprobieren
hört sich erstmal verständlich an, ich dachte nicht das er unterschiedliche pixelanzahl kopiert.

kal.ma
als Antwort auf: [#47788] Top
 
X