Verbesserungs Vorschläge für folgende Funktion:
Übersicht

![]() |
LukasBananaBetreff: Verbesserungs Vorschläge für folgende Funktion: |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Leute,
ich hab mal ne Funktion geschrieben mit der man eine fette Linie zeichnen kann: Code: [AUSKLAPPEN] Function DrawFatLine(x1, y1, x2, y2, size) If y2 < y1 deg_x# = x1-x2 : deg_y# = y1-y2 Else deg_x# = x2-x1 : deg_y# = y2-y1 EndIf deg_hyp# = Sqr(deg_x^2+deg_y^2) degree# = ASin(deg_x/deg_hyp)-90 ; --- For index = 1 To size posx# = Sin(degree)*(index-size/2) posy# = Cos(degree)*(index-size/2) ; --- Line(x1+posx, y1+posy, x2+posx, y2+posy) Next End Function Aber: ... , wie ich mir auch schon dachte, sieht es noch etwas komisch aus weil zwischen den vielen Linien noch Zwischenräume sind, jetzt weiß ich aber nicht wie ich da noch vernünftig Linien dazwischen bekomme. Kennt sich jemand mit Sinus/ Cosinus gut aus, dass er mir da vielleicht helfen könnte? Gruß LukasBanana |
||
Mein YouTube Channel: http://www.youtube.com/user/SoftPixel
Mein Twitter Profil: https://twitter.com/LukasBanana Meine Projekte auf github.com: https://github.com/LukasBanana Meine Projekte auf bitbucket.org: https://bitbucket.org/LukasBanana |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Falls du Blitz3D haben solltest, so probiere mal das hier https://www.blitzforum.de/foru...hp?t=21659
Ist sicherlich um Faktor 1000 schneller, als unzählige und langsme 2D-Befehle zu zeichnen. Wenn dir der diffuse Verlauf von Line3D nicht gefällt, so kannst du diesen durch neues UV-Maping wet machen (sind nur 6 Zahlen ändern). Willst du es denoch mit 2D-Machen, so würde ich den Bereich berechnen und es dann nur noch mit vertikalen oder horizontalen Rect's und 1 Pixel Breite machen. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
LukasBanana |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich weiß leider nicht woher ich das "Draw3D.bb" nehmen soll ![]() |
||
Mein YouTube Channel: http://www.youtube.com/user/SoftPixel
Mein Twitter Profil: https://twitter.com/LukasBanana Meine Projekte auf github.com: https://github.com/LukasBanana Meine Projekte auf bitbucket.org: https://bitbucket.org/LukasBanana |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Ihr braucht zur Funktion des ganzen, einmal die Include Draw3D.bb
https://www.blitzforum.de/upload/file.php?id=1189 und das Image https://www.blitzforum.de/upload/file.php?id=1187 hier, fertig... |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
LukasBanana |
![]() Antworten mit Zitat ![]() |
---|---|---|
OK, jetzt kann ich es starten aber ich seh kein Text, ich seh im Code nirgends was davon wo das Bild geladen wird?! ![]() |
||
Mein YouTube Channel: http://www.youtube.com/user/SoftPixel
Mein Twitter Profil: https://twitter.com/LukasBanana Meine Projekte auf github.com: https://github.com/LukasBanana Meine Projekte auf bitbucket.org: https://bitbucket.org/LukasBanana |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der Textfont wir mit folgender Zeile (in der Draw3D.bb) geladen:
Code: [AUSKLAPPEN] Global text_brush=LoadBrush("font.png",3,256,256)
In dieser Konstellation sollte sich das Bild natürlich im selben Verzeichnis befinden wie die Draw3D.bb Der Brush für Plot3D, Line3D, Rect3D und Oval3D, wird nicht geladen, sondern im Code direkt erstellt. Willst du zB nur Line3D ohne 'Verlauf' haben, so ändere folgende Zeilen in der Line3D-Function zu: Code: [AUSKLAPPEN] draw_v0=AddVertex(draw_face,f_draw_x1+TFormedY()*draw_br,f_draw_y1-TFormedX()*draw_br,0, 1.5,0.5)
draw_v1=AddVertex(draw_face,f_draw_x1-TFormedY()*draw_br,f_draw_y1+TFormedX()*draw_br,0, 1.5,0.5) draw_v2=AddVertex(draw_face,f_draw_x2-TFormedY()*draw_br,f_draw_y2+TFormedX()*draw_br,0, 1.5,0.5) draw_v3=AddVertex(draw_face,f_draw_x2+TFormedY()*draw_br,f_draw_y2-TFormedX()*draw_br,0, 1.5,0.5) Die Draw3D.bb sollte im eigenem Projekt per ql:Include eingebunden werden. Dabei sollte (falls keine Änderungen vorgenommen werden) sich sowohl die Draw3D.bb als auch font.png im selben Verzeichnis befinden, wo sich dein Code befindet. Die Draw3D.bb selber kann nicht ausgeführt werden, da sich lediglich nur Funktionen und Variablendeklarationen in ihr befinden. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Triton |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit 2D-Befehlen würde ich den dicken Strich (der ja eigentlich ein rechteck ist, welches man wiederrum in 2 Dreiecke teilen kann) mit ner Dreiecksfüllroutine zeichnen.
![]() |
||
Coding: silizium-net.de | Portfolio: Triton.ch.vu |
![]() |
LukasBanana |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke, an euch beide ![]() Gefällt mir beides ganz gut und funktioniert auch. Gruß LukasBanana |
||
Mein YouTube Channel: http://www.youtube.com/user/SoftPixel
Mein Twitter Profil: https://twitter.com/LukasBanana Meine Projekte auf github.com: https://github.com/LukasBanana Meine Projekte auf bitbucket.org: https://bitbucket.org/LukasBanana |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group