Seite 1 von 1

2D Drawing ... Bug im Kopf

Verfasst: 01.09.2019 17:38
von Then
Hi Leute !

Gestern habe ich mir scheinbar die letzten Gehirnzellen weg gesof..... :cry:

Ich kriege das nicht mehr hin, dass ich in 2D Linien von der Mitte eines Kreises nach Außen zeichne im Abstand von zb. 20 Grad.... sollten dann ja 18 Linien sein. Ich steh völlig am Schlauch.... Hilfe, Bitte ! :oops:

Re: 2D Drawing ... Bug im Kopf

Verfasst: 01.09.2019 17:49
von #NULL

Code: Alles auswählen

EnableExplicit
Define ww, wh, style, win, canvas, event, quit

ww=800
wh=600
style | #PB_Window_ScreenCentered
style | #PB_Window_SystemMenu
style | #PB_Window_MinimizeGadget

win = OpenWindow(#PB_Any, 50,100, ww,wh, "", style)
AddKeyboardShortcut(win, #PB_Shortcut_Escape, 10)
canvas = CanvasGadget(#PB_Any, 0, 0, ww, wh, #PB_Canvas_Keyboard)

StartDrawing(CanvasOutput(canvas))
  Define a.f = 0
  Define r.f = 100
  While a < 360
    LineXY(ww/2, wh/2, ww/2 + (r * Cos(Radian(a))), wh/2 + (r * Sin(Radian(a))), $00ff00)
    a + 20
  Wend
StopDrawing()

Repeat
  event   = WaitWindowEvent(100)
  Select event
    Case #PB_Event_CloseWindow
      quit = #True
    Case #PB_Event_Menu
      Select EventMenu()
        Case 10
          quit = #True
      EndSelect
  EndSelect
Until quit

Re: 2D Drawing ... Bug im Kopf

Verfasst: 01.09.2019 17:57
von mk-soft
Musste kurz überlegen. Urzeiger sinn

Code: Alles auswählen


Define x, y, dx, dx, len

len = 100
x = 0
y = y

For winkel = 0 To 359 Step 20
  alpha.f = Radian(winkel)
  dx = x + Sin(alpha) * len
  dy = y + Cos(alpha) * len
  Debug "w = " + winkel +" dx = " + dx + " dy = " + dy
Next

Re: 2D Drawing ... Bug im Kopf

Verfasst: 01.09.2019 18:21
von Then
Danke, habe jetzt im dem Codearchiv gesucht und diesen Code missbraucht.... aber eurer ist schöner....

DANKE ! :allright: