/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Cirkler med Radianer
Fra : Ole J. Hansen


Dato : 31-10-01 16:07

Hej NG
Nu er jeg da rigtigt på den, min opgave siger, at jeg skal lave et program
der kan tegne en
cirkel, der er noget med Radianer skulle være = grader*n/180.
??????
Mon der skulle være en der havde en lille stump kode, ikke for vanskelig, da
jeg ikke er for
god til dette.
Jeg kunne godt tænke mig, at den kunne tegne cirklen eller en del af cirklen
på selve FORMEN.
M.v.h
Ole J. Hansen



 
 
Bjarke Walling Peter~ (01-11-2001)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 01-11-01 22:38

Ole J. Hansen skrev:
> Mon der skulle være en der havde en lille stump kode, ikke for vanskelig,
da
> jeg ikke er for
> god til dette.

Det her ved jeg en masse om - tror jeg nok... (jeg elsker at lave
grafik-programmer i noget der hedder QBasic)...

Måske kan du bruge det her til noget:


Const pi = 3.14159265358979

Private Sub TegnCirkel(XPosition As Integer, YPosition As Integer, _
XRadius As Integer, YRadius As Integer,
_
StartVinkel As Integer, SlutVinkel As
Integer)
Dim x As Single, y As Single
Dim gx As Single, gy As Single
Dim i As Double
While StartVinkel > SlutVinkel
StartVinkel = StartVinkel - 360
Wend
x = Cos(StartVinkel * pi / 180) * XRadius + XPosition
y = Sin(StartVinkel * pi / 180) * YRadius + YPosition
PSet (x, y)
For i = StartVinkel To SlutVinkel Step 5 ' Jo større tal ...
' ... jo mere kantet bliver cirklen. Med en værdi på 120 er det
f.eks.
' en trekant, hvilket må siges at være en meget kantet cirkel!
x = Cos(i * pi / 180) * XRadius + XPosition
y = Sin(i * pi / 180) * YRadius + YPosition
Line -(x, y)
Next i
x = Cos(SlutVinkel * pi / 180) * XRadius + XPosition
y = Sin(SlutVinkel * pi / 180) * YRadius + YPosition
Line -(x, y)
End Sub

Private Sub Command1_Click()
' Fuld cirkel:
TegnCirkel 1200, 1200, 300, 300, 0, 360
' Cirkelstykke:
TegnCirkel 1200, 1200, 400, 400, 20, 340
' Cirkelstykke:
TegnCirkel 1200, 1200, 500, 500, 300, 60
' Fuld oval:
TegnCirkel 1200, 1200, 1000, 600, 0, 360
End Sub


.... her er også en forsimpling af det, hvor princippet nok er nemmere at se:


Private Sub Command1_Click()
' Tegner altid en fuld cirkel:

Dim XPosition As Integer
Dim YPosition As Integer
Dim Radius As Integer
Dim x As Integer
Dim y As Integer
Dim i As Double

XPosition = 1200
YPosition = 1200
Radius = 900

For i = 0 To 2 Step 0.001
x = Cos(i * pi) * Radius + XPosition
y = Sin(i * pi) * Radius + YPosition
PSet (x, y)
Next i
End Sub


.... foresten så bør du nok sætte propertien AutoRedraw på din form til True.

- Bjarke Walling Petersen



Ole J. Hansen (02-11-2001)
Kommentar
Fra : Ole J. Hansen


Dato : 02-11-01 17:06

Hej Bjarke!
Jeg tror du har ret, det er nok sådan noget jeg skal bruge, men men, besvim
nu ikke af grin, hvorledes får jeg noget af det her til at stå på formen,
altså sådan at når jeg trykker på knappen, så skriver den den fulde cirkel
ud på formen.
M.v.h.
Ole J. Hansen
"Ole J. Hansen" <ojh@hansen.mail.dk> skrev i en meddelelse
news:3be0147f$0$773$edfadb0f@dspool01.news.tele.dk...
> Hej NG
> Nu er jeg da rigtigt på den, min opgave siger, at jeg skal lave et program
> der kan tegne en
> cirkel, der er noget med Radianer skulle være = grader*n/180.
> ??????
> Mon der skulle være en der havde en lille stump kode, ikke for vanskelig,
da
> jeg ikke er for
> god til dette.
> Jeg kunne godt tænke mig, at den kunne tegne cirklen eller en del af
cirklen
> på selve FORMEN.
> M.v.h
> Ole J. Hansen
>
>



Bjarke Walling Peter~ (05-11-2001)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 05-11-01 21:03

Ole J. Hansen skrev:
> Hej Bjarke!
> Jeg tror du har ret, det er nok sådan noget jeg skal bruge, men men,
besvim
> nu ikke af grin, hvorledes får jeg noget af det her til at stå på formen,
> altså sådan at når jeg trykker på knappen, så skriver den den fulde cirkel
> ud på formen.
> M.v.h.
> Ole J. Hansen

Først og fremmest: Undskyld jeg først svarer nu. Måske har du fundet
løsningen og måske ikke. Så...

Det du gør er at placere en knap (CommandButton) på din Form. Derefter går
du ind i kodevisning og kopierer min kode ind... og kun et eksempel af
gangen (af de to, jeg skrev). Dog skal du sætte linien der starter med Const
pi = 3.1415...... ind i begge eksempler.

Bare skriv igen, hvis du stadigvæk har problemer.

Måske burde du få fat i en eller anden Visual Basic-begynder bog... det er
bare et forslag (men da jeg ikke rigtigt kender nogle bøger, har jeg ikke
nogen at anbefale).

Mvh. Bjarke



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste