graphics error : wat gaat mis ?

Nieuwe Liberty BASIC programmeurs kunnen hier om hulp vragen.

Moderators: anthonio, Abcott

graphics error : wat gaat mis ?

Berichtdoor bluatigro » wo aug 05, 2009 10:40 am

bij de volgende code krijg ik n criptyse
error message
wat is de error ?
Code: Selecteer alles
WindowWidth = 1024
WindowHeight = 760
nomainwin
timer 40 , [timer_tick]
open "lines" for graphics as #m
print #m , "trapclose [quit]"
wait
[timer_tick]
   print #m , "cls"
   frame = frame + 1
   call lijn 0 , 0 , 0 , sin( rad( frame ) ) * 100 _
   , cos( rad( frame ) ) * 100 , 0 _
   , 1 , hexdec( "ffff" )
   print #m , "flush"
wait
function rad( x )
   rad = x * 355 / 113 / 180
end function
sub lijn x1 , y1 , z1 , x2 , y2 , z2 , t , kl
   r = kl and 255
   g = ( kl / 256 ) and 255
   b = ( kl / 256 / 256 ) and 255
   dx = WindowWidth
   dy = WindowHeight
   ax = dx / 2 + x1 / ( z1 + 1000 ) * 1000
   ay = dy / 2 - y1 / ( z1 + 1000 ) * 1000
   bx = dx / 2 + x2 / ( z2 + 1000 ) * 1000
   bx = dy / 2 - y2 / ( z2 + 1000 ) * 1000
   print #m , "color "; r ;" "; g ;" "; b
   print #m , "down"
   print #m , "line "; ax ;" "; ay ;" "; bx ;" "; by
   print #m , "up"
end sub
[quit]
   close #m
   end

deze error krijg ik tot nu toe
bij AL mijn graphics in LB
zeer hinderlijk dus

doel v dit programma n : gele lijn ronddraien
bluatigro
 
Berichten: 306
Geregistreerd: za sep 27, 2008 6:01 pm

Re: graphics error : wat gaat mis ?

Berichtdoor Gordon » zo aug 16, 2009 10:28 pm

Geen idee.
Maar

r = kl / 256
g = ( kl / 256 ) / 256
b = ( kl / 256 / 256 ) / 256

geeft geen fout, maar een gele lijn, ho maar?
Is (kl and 255) wel exact gelijk aan (kl /256) ?

kl = hexdec("ffff")
print kl, 256*256, kl and 255, kl /256

Bij Liberty BASIC zie ik overal (256*256) i.p.v. (65535 and 255)

Gordon
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Re: graphics error : wat gaat mis ?

Berichtdoor bluatigro » ma aug 17, 2009 12:05 pm

pardon hoor , maar
( kl / 256 ) <> ( kl and 255 ) !!!
voorbeeld :
AABBCC(hex) / 256(dec) = AABB(hex)
AABBCC(hex) and 255(dec) = CC(hex)
te gebruiken :
( AABBCC(hex) / 256(dec) ) and 255(dec) is dus BB(hex)
bluatigro
 
Berichten: 306
Geregistreerd: za sep 27, 2008 6:01 pm

Re: graphics error : wat gaat mis ?

Berichtdoor Gordon » ma aug 17, 2009 4:53 pm

Oeps, ik kan het niet uitleggen.
Maar zo gaat het wel.

r = kl and 255
g = int( kl / 256 ) and 255
b = int( kl / 256 / 256 ) and 255

en ook de gele lijn verschijnt.

Gordon
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Re: graphics error : wat gaat mis ?

Berichtdoor bluatigro » di aug 18, 2009 1:14 pm

das vreemd
( int( kl / 256 ) and 255 ) <> ( ( kl / 256 ) and 255 ) ???
( 101.234(dec) and 255(dec) ) zou ( 101.000(dec) ) als andwoord moeten hebben !!!
in vb5 ging t prima
bluatigro
 
Berichten: 306
Geregistreerd: za sep 27, 2008 6:01 pm


Keer terug naar Beginner

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers. en 1 gast

cron