AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

GLscene Kreise

Ein Thema von Schuby · begonnen am 3. Jan 2021 · letzter Beitrag vom 5. Jan 2021
Antwort Antwort
Seite 1 von 2  1 2      
Schuby

Registriert seit: 25. Dez 2018
93 Beiträge
 
#1

GLscene Kreise

  Alt 3. Jan 2021, 11:02
Guten morgen,
gibt es eine andere Nöglichkeit mit GLScene halb Kreise zu Zeichnen ?

im mom mache ich es per Pixel.

Delphi-Quellcode:
    if Quadrant = 1 then
    begin
         if (G2_StepX = true) then
         Begin
              GLLines3 := TGLLines(GLXYZGrid1.AddNewChild(TGLLines));
              GLLines3.NodesAspect := lnaInvisible;
              GLLines3.LineWidth := 2;
              //X
              GLLines3.LineColor.AsWinColor := clBlack;
              GLLines3.AddNode(X_Steppen,0, Y_Steppen);
              y_Steppen:= y_Steppen + 0.1;
              GLLines3.AddNode(X_Steppen, 0, Y_Steppen);

           G2_StepX:= false;
         end;
         if G2_StepY = true then
         Begin
              GLLines3 := TGLLines(GLXYZGrid1.AddNewChild(TGLLines));
              GLLines3.NodesAspect := lnaInvisible;
              GLLines3.LineWidth := 2;
              //Y
              GLLines3.LineColor.AsWinColor := clBlack;
              GLLines3.AddNode(X_Steppen,0, Y_Steppen);
              x_Steppen:= x_Steppen + 0.1;
              GLLines3.AddNode(x_Steppen, 0, Y_Steppen);

           G2_StepY:= false;
         end;
    end;

mfg schuby
Miniaturansicht angehängter Grafiken
kreis.jpg  
  Mit Zitat antworten Zitat
mmw
(Gast)

n/a Beiträge
 
#2

AW: GLscene Kreise

  Alt 3. Jan 2021, 11:35
hallo,

eine Möglichkeit wäre DirecopenGL

Delphi-Quellcode:
procedure TForm34.GLDirectOpenGL1Render(Sender: TObject; var rci: TGLRenderContextInfo);

var start_winkel,
    end_winkel,
    laenge_x,
    laenge_y,
    radius,
    xm,
    ym:Real;

begin
 start_winkel:=0;
 end_winkel:=360;
 radius:=0.20;
 xm:=0;
 ym:=0;

 gllinewidth(1);
// glcolor3f(farbe.rot,farbe.gruen,farbe.blau);

 glBegin(GL_LINE_STRIP);
    while start_winkel <= end_winkel do
       begin
        laenge_x := radius * cos(start_winkel * pi / 180);
        laenge_y := radius * sin(start_winkel * pi / 180);
         glvertex3f(xm + laenge_x, ym + laenge_y,0); //<--------hier ggf. anpassen
       start_winkel:=start_winkel+1;
      end;
 GLEnd;
end;
dazu muss man von hier
https://wiki.delphigl.com/index.php/dglOpenGL.pas

die dglopengl.pas runterladen.

Geändert von mmw ( 3. Jan 2021 um 14:39 Uhr)
  Mit Zitat antworten Zitat
Schuby

Registriert seit: 25. Dez 2018
93 Beiträge
 
#3

AW: GLscene Kreise

  Alt 3. Jan 2021, 12:48
@mmv

upsss das ist openGL und ich habe GLScene

Aber Danke für Antwort.


mfg Schuby
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#4

AW: GLscene Kreise

  Alt 3. Jan 2021, 12:48
GLLines3.Nodes.AddXYArc
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
mmw
(Gast)

n/a Beiträge
 
#5

AW: GLscene Kreise

  Alt 3. Jan 2021, 12:54
@mmv

upsss das ist openGL und ich habe GLScene

Aber Danke für Antwort.


mfg Schuby
wenn man mit GLScene arbeitet, gehoert OpelGL dazu

GRuß

Geändert von mmw ( 3. Jan 2021 um 12:58 Uhr)
  Mit Zitat antworten Zitat
Schuby

Registriert seit: 25. Dez 2018
93 Beiträge
 
#6

AW: GLscene Kreise

  Alt 3. Jan 2021, 13:16
Hallo Uwe,
könntest du mir bitte helfen was ich genau schreiben müsste ?
Ich bekomme nur error

Delphi-Quellcode:
  public
    MyVec3f : TVector3f;

...
GLLines3.Nodes.AddXYArc(,,,,,MyVec3f);


mfg Schuby
  Mit Zitat antworten Zitat
mmw
(Gast)

n/a Beiträge
 
#7

AW: GLscene Kreise

  Alt 3. Jan 2021, 14:54
hallo,

nur zur Info

die dglopengl.pas wie in #2 angegeben funktiomiert nicht (jedenfalls nicht bei mir). Dafür funktinoiert die mitegelieferte.

Gruß
  Mit Zitat antworten Zitat
Schuby

Registriert seit: 25. Dez 2018
93 Beiträge
 
#8

AW: GLscene Kreise

  Alt 3. Jan 2021, 16:58
Hallo,
ich habe es doch noch geschafft, es haben paar units gefehlt.
Aber es wird immer nur hochkannt angezeigt, drehen kann man den Kreis nicht ?


Delphi-Quellcode:
uses
  GLS.Nodes,
  GLS.VectorGeometry,
  GLS.VectorTypes;


....
    GLLines3 := TGLLines(GLXYZGrid1.AddNewChild(TGLLines));
    GLLines3.NodesAspect := lnaInvisible;
    GLLines3.LineWidth := 2;
    GLLines3.LineColor.AsWinColor := clblack;


    MyVec3f.X:= 0;
    MyVec3f.Y:= 0;
    MyVec3f.Z:= 0;
    GLLines3.Nodes.AddXYArc(30,15,90,0, 500, MyVec3f);


mfg schuby
Miniaturansicht angehängter Grafiken
kreis1.jpg  
  Mit Zitat antworten Zitat
mmw
(Gast)

n/a Beiträge
 
#9

AW: GLscene Kreise

  Alt 3. Jan 2021, 18:36
hallo,
vielleicht hilft das weiter

https://de.wikibooks.org/wiki/Spiele...ne:_Bewegungen

Gruß
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#10

AW: GLscene Kreise

  Alt 3. Jan 2021, 19:30
Aber es wird immer nur hochkannt angezeigt, drehen kann man den Kreis nicht ?
Der Bogen wird, wie aus dem Namen AddXYArc abzuleiten ist, in der XY-Ebene des GLLines-Objekts gezeichnet. Das kannst du natürlich beliebig drehen. Vermutlich musst du dann aber auch deine Linien so zeichnen, dass sie in dieser XY-Ebene liegen. Sonst passen sie halt nicht zu dem Bogen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 16:47 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