AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Polygon x% mit transparenter Farbe füllen

Polygon x% mit transparenter Farbe füllen

Ein Thema von gitta · begonnen am 4. Nov 2004 · letzter Beitrag vom 4. Nov 2004
Antwort Antwort
gitta

Registriert seit: 10. Okt 2004
10 Beiträge
 
#1

Polygon x% mit transparenter Farbe füllen

  Alt 4. Nov 2004, 12:49
Hallo Zusammen,

in diesem Forum gibt es mehrere Threds über "Transparentz"
Jedoch habe ich keinen Eintrag gefunden wie ich ein Polygon
oder ähnliches variabel Transparent füllen kann.

Wie kann ich bitte das folgende Polygon z.B.: 20% mit der Farbe
füllen so das der Hintergrund durchscheint?

Canvas.Brush.Color := clRed;
Canvas.Polygon([Point(10, 10), Point(30, 10),
Point(130, 30), Point(240, 120)]);


Gruß Gitta
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#2

Re: Polygon x% mit transparenter Farbe füllen

  Alt 4. Nov 2004, 14:48
Du kannst es so machen, wie mir mit transparentem Text geholfen wurde
*anmerk* Ein paar Themen weiter unten im Multimedia-Board.

Theorie:
Du erstellst ein neues Bild, dass du mit einer Hintergrundfarbe ungleich der Farbes des Polygons füllst.
In der Prozedur wird nun jeder Pixel abgelaufen.
ist der aktuelle Pixel gleich die angegebene HG-Farbe, so wird die Farbe des Pixels auf die Farbe des entspr. Pixels des Ziel-bildes gesetzt.

Ist es ungleich der HG-Farbe, d.h. es handelt sich um einen Punkt IM polygon, so wird die farbe mit der farbe des entspr. pixels des ziel-bildes mit der alpha-blending-formel unter einbezug der deckkraft-angabe verrechnet und gesetzt.

So hast du am Ende per Pixel-Manipulation das neue Bild wo das Polygon transparent auf dem Zielbild ist
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
gitta

Registriert seit: 10. Okt 2004
10 Beiträge
 
#3

Re: Polygon x% mit transparenter Farbe füllen

  Alt 4. Nov 2004, 17:52
Hallo Airblader,

erstmal Danke für die Antwort.
Das klinkt ja mächtig kompliziert und sicherlich sehr Zeitraubend.
Ich hoffe das es eine andere Möglichkeit gibt. Ich habe ein stück
Code gefunden um ein ganzes Form über den Alpha-Kanal Transparent zu machen.
So etwas suche ich. Wenn ich etwas finden sollte werde ich es auch hier
posten.

Gruß Gitta.
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#4

Re: Polygon x% mit transparenter Farbe füllen

  Alt 4. Nov 2004, 18:31
Eine ganze Form transparent zu machen ist ja nicht schwer

Ich dachte du willst das alles innerhalb eines TImage's machen, d.h. wie in einem Grafikprogramm ?
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
gitta

Registriert seit: 10. Okt 2004
10 Beiträge
 
#5

Re: Polygon x% mit transparenter Farbe füllen

  Alt 4. Nov 2004, 18:52
Hallo Airblader,

ich habe ein ActiveX Control welches mir eine Landkarte anzeigt.
Ich greife mir das Canvas-Handle und zeichne ein
Polygon um einen Ort. Dieses Polygon hätte ich gerne 80% Transparent
so dass das Polygon noch sichbar ist aber zugleich auch die
darunter liegende Ortskarte.

Gibt es dafür eine einfachere Möglichkeit?

Gruß Gitta
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#6

Re: Polygon x% mit transparenter Farbe füllen

  Alt 4. Nov 2004, 19:12
Hm..ich kenn mich mit ActiveX nun nicht aus, aber da es auch mit Canvas behandelt wird, würde ich sagen, könntest du "meine" Methode nehmen.

So langsam ist sie auch nicht

Und mit der Code-Vorlage aus meinem Thread dürfte es nicht zu schwer sein die Funktion umzubauen

air
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz