vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Fade-In,Fade-Out nicht linear 
Autor: Hannes H.
Datum: 25.02.07 10:13

Hallo GPM

Inzwischen habe ich eigentlich schon alles was ich benötige, nur eine Sache macht mir noch Probleme:
In der GetPoints Sub wird ja berechnet.
Nun übergebe ich die bzp Punkte so wie am Monitor. Je kleiner die gezeigte Bezier, desto ungenauer die Berechnungen im Kommabereich.
Beispiel: 33% sind 33,3333 Pixel ... muss auf 33 abgerunden werden, was eben im Kommabereich sichtbar wird.

Meine Idee:
Ich Berechne die Punkte unabhängig der momentanen Anzeige des Bezier.

Habe da aber so meine Probleme. Dachte in der GetPoints die Koordinaten *1000 zu rechnen ... in der Paint Sub der Picturebox alles noch so hoch berechnen zu lassen und beim zeichen der Punkte, die Koordinaten wieder /1000

Leider klappt das so wohl nicht. Endweder dauert die Berechnung in der GetPoints ewig lange oder ist eine Dauerschleife.
Mein Versuch:
Sub GetPoints()
        Dim r As RectangleF
 
        plist.Clear()
        gp.Reset()
        Dim a, b, c, d As PointF
        a.X = bzp(0).X * 1000
        a.Y = bzp(0).Y * 1000
 
        b.X = bzp(1).X * 1000
        b.Y = bzp(1).Y * 1000
 
        c.X = bzp(2).X * 1000
        c.Y = bzp(2).Y * 1000
 
        d.X = bzp(3).X * 1000
        d.Y = bzp(3).Y * 1000
 
        gp.AddBezier(a, b, c, d)
        r.Location = a
        Do
            plist.Add(r)
            Select Case True
                Case gp.IsOutlineVisible(r.X + 1, r.Y - 1, Pens.Black)
                    r.X += 1
                    r.Y -= 1
                    r.Width += 1414
                Case gp.IsOutlineVisible(r.X, r.Y - 1, Pens.Black)
                    r.Y -= 1
                    r.Width += 1000
                Case gp.IsOutlineVisible(r.X + 1, r.Y, Pens.Black)
                    r.X += 1
                    r.Width += 1000
                Case gp.IsOutlineVisible(r.X + 1, r.Y + 1, Pens.Black)
                    r.X += 1
                    r.Y -= 1
                    r.Width += 1414
                Case Else
                    Exit Do
            End Select
            r.Height = (400 - (r.Y - 50)) / 0.4
        Loop
    End Sub
Hier erfolgt wohl(?) eine Endlosschleife.

Was wäre, wenn ich für die Berechnung FEST eine Größe hernehme und für die Anzeige diese Ableite.
Problem sehe ich da bei den Zwischenpunkte. Diese werden ja mit der Maus verschoben. Also müßte ich die koordinaten passend zur Festen Berechnung skalieren. Nicht so das wahre, oder?

Was würdest du vorschlagen?

Ich möchte gerne die Zwischenpunkte als Prozent haben (ist eh schon), aber auf 2 Kommastellen genau. Wenn ich ihn die Debug Ausgabe blicke, ist bei 2 Mittelwerten (33% und 66%) als PointF ein Kommawert zu sehen ... dieser wird bei Pixel ja gerundet.

Wie geschrieben, würde gerne die Berechnung unabhängig der Anzeige vornehmen (bzp(0) = 0,0;bzp(3)=1000,1000)
Nur die Zwischenpunkte dann passend umzurechnen??

Danke dir

Hannes

PS: Werde den Code dann hier posten, aber je nach Größe meiner Form erhalte ich statt 100% nur 99,8684738%. Konnte hier den Fehler noch nicht finden
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Fade-In,Fade-Out nicht linear1.488Hannes H.24.12.06 10:44
Re: Fade-In,Fade-Out nicht linear1.000GPM24.12.06 19:43
Re: Fade-In,Fade-Out nicht linear989Hannes H.24.12.06 20:03
Re: Fade-In,Fade-Out nicht linear945Hannes H.25.12.06 09:47
Re: Fade-In,Fade-Out nicht linear967Hannes H.25.12.06 10:25
Re: Fade-In,Fade-Out nicht linear975GPM25.12.06 14:39
Re: Fade-In,Fade-Out nicht linear948Hannes H.25.12.06 16:16
Re: Fade-In,Fade-Out nicht linear947Hannes H.25.12.06 17:05
Re: Fade-In,Fade-Out nicht linear934GPM25.12.06 18:48
Re: Fade-In,Fade-Out nicht linear1.151Hannes H.26.12.06 09:41
Re: Fade-In,Fade-Out nicht linear978GPM26.12.06 11:34
Re: Fade-In,Fade-Out nicht linear994GPM26.12.06 13:52
Re: Fade-In,Fade-Out nicht linear940Hannes H.26.12.06 16:18
Re: Fade-In,Fade-Out nicht linear951Hannes H.30.12.06 09:02
Re: Fade-In,Fade-Out nicht linear1.110GPM30.12.06 09:59
Re: Fade-In,Fade-Out nicht linear944GPM30.12.06 11:19
Re: Fade-In,Fade-Out nicht linear928Hannes H.30.12.06 16:00
Re: Fade-In,Fade-Out nicht linear970GPM30.12.06 17:29
Re: Fade-In,Fade-Out nicht linear959Hannes H.30.12.06 18:37
Re: Fade-In,Fade-Out nicht linear1.016GPM03.01.07 13:35
Re: Fade-In,Fade-Out nicht linear971Hannes H.25.01.07 21:07
Re: Fade-In,Fade-Out nicht linear910Hannes H.20.02.07 10:40
Re: Fade-In,Fade-Out nicht linear1.017GPM20.02.07 12:16
Re: Fade-In,Fade-Out nicht linear908Hannes H.20.02.07 15:50
Re: Fade-In,Fade-Out nicht linear940Hannes H.23.02.07 09:34
Re: Fade-In,Fade-Out nicht linear912Hannes H.23.02.07 09:38
Re: Fade-In,Fade-Out nicht linear892GPM23.02.07 11:16
Re: Fade-In,Fade-Out nicht linear913Hannes H.23.02.07 12:21
Re: Fade-In,Fade-Out nicht linear1.036Hannes H.25.02.07 10:13
Re: Fade-In,Fade-Out nicht linear932GPM25.02.07 11:54
Re: Fade-In,Fade-Out nicht linear1.045GPM25.12.06 18:57

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel