Newsgroup: it.comp.lang.visual-basic
Titolo: Algoritmo creazione colori diversi

Salve a tutti gli utenti del NG, ho una domanda da porvi: come posso
creare un algoritmo per la creazione di colori diversi? Da dove devo
cominciare? Grazie

 cominciare? Grazie
Diversi nel senso di colori che la scienza non ha ancora saputo definire o
cosa?
Piero


Non devi creare assolutamente creare nessun algoritmo!
VB ha gia la funzione Randomize, o qualcosa del genere, che restituisce un
numro casuale.
Poi siccome i colori non sono altro che numeri, prendi quel numero e lo
assegni come "colore diverso" alla tua "tela".
--
Greg

> Poi siccome i colori non sono altro che numeri
Una piccola domanda...
Ma i colori sono in esadecimale ? ( Tipo FF0033 ecc... tipo come si usa in
HTML?)
--
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site (
http://www.tekkentag.altervista.org/
 )
Co-Webmaster di SceptilePage (
http://www.sceptilepage.altervista.org/
 )
Account Messenger: 
thetot...@msn.com





Ma premere F1 nell'IDE e scrivere colori costa troppa fatica?
Lokar
-- 
Sito Comune: 
http://www.it-lang-vb.net/
Manifesto: 
http://www.it-lang-vb.net/docs
­/Manifesto.txt
Statuto: 
http://www.it-lang-vb.net/docs
­/Statuto.txt

 HTML?)
Un colore, per VB, è un numero a 4 byte (long). Il byte meno
significativo è il rosso, il secondo byre meno significativo è il verde,
poi viene il blu. Il byte più significativo è usato per i colori di
sistema. Ergo
Rosso  = &H000000FF&
Verde  = &H0000FF00&
Blu    = &H00FF0000&
Bianco = &H00FFFFFF&

Che peccato... era + semplice utilizzare il sistema a 6 cifre HTML... (
#FF0000 ecc...)
Sai un sito o altro dove posso trovare una tabella con tutti i colori ? o un
tool dove scelgo il colore che voglio ?


Ma...
ho provato a mettere
Me.BackColor (Me è una form SDI ) = 255 ed esce rosso
Me.BackColor = 465843 e Funziona !!!


 tool dove scelgo il colore che voglio ?
Microsoft Common Dialog Control, ce l'hai già installato e, oltre a
gestire i colori, di permette anche altre operazioni (Selezionare file
da aprire/salvare, ...)

 &HFFFFFF
No, un sito tipo la ASCII Table , dove spiega almeno il codice Hex per i
primi 255 colori (almeno).


 primi 255 colori (almeno).
Beh, non credo si possa definire un ordine tra i colori... E' uno spazio
a più dimensioni (3 in RGB e HSB, 4 per CMYK), e per avere un ordine
monodimensionale devi fissare 2 o 3 dimensioni. Tutto ciò sta per "Non
ha senso dire 'i primi 255 colori'".
Se però ti riferisci ai colori usati da Windows quando funziona a 4 o 8
bit/pixel (cioè il desktop è rispettivamente a 16 e 256 colori):
Qui per esempio ho trovato la palette a 16 colori:
http://www.sketchpad.net/basics6.htm
Per la palette standard a 256 colori googla un po' e potresti trovarla.
Qui invece ci sono i 216 colori standard delle pagine web:
http://www.scantips.com/palettes.html

Ok grazie !
Ciao,


 Me.BackColor = 465843 e Funziona !!!
Beh, il 465843 decimale non è proprio il rosso-rosso, essendo
rappresentabile in esadecimale come 071BB3, cioè
Rosso:B3
Verde: 1B
Blu=07
La quantità di rosso è alta rispetto al verde e al blu, per questo
risulta rosso, anche se il rosso pieno sarebbe con verde=0, blu=0 e
rosso=255, ossia in decimale verde=0, blu=0, rosso=FF e, mettendo tutto
insieme (BBVVRR)=0000FF, cioè il 255 di prima

 primi 255 colori (almeno).
Non avrebbe molto senso una tabella del genere.
In VB.Net (non so se è il tuo caso) hai la classe Color che come membri ha
anche tutti i colori definiti nella classica tabella HTML in modo ad es. da
poter fare
Me.ForeColor = Color.MistyRose
E ottieni un rosino, ma solo perchè questi definiscono ognuno la
combinazione RGB voluta.
Nulla ti vieta di farti un Enum anche in VB6 (a parte la pazienza), tra
l'altro i colori principali sono già definiti come ad es. vbRed, vbWhite,
vbBlack ecc.
I primi 255 colori sarebbero tutte le gradazioni dal nero (000000) al rosso
(0000FF) quindi anche questo non ha senso.
Piuttosto impara a mescolare i colori in tricromia
(
http://thestarman.pcministry.com/RGB/16WinColorT.html
).
Nota che i colori quando sono dati dalla luce (come su uno schermo di PC) si
mescolano in modo differente che con i colori solidi (ad es. pastelli o
colori ad olio), ad es. il rosso+verde+blu sullo schermo tendono al bianco,
su un foglio tendono al grigio-marrone.
Ciao

 vbBlack ecc.
Però posso creare un dll COM da Net con tutti i colori della classe Color...
Ciao,


 su un foglio tendono al grigio-marrone.
Magari fosse così semplice! In pratica purtroppo quando si stampa
qualcosa il risultato è funzione anche della stampante (o comunque del
metodo di stampa) usata. Qalche volta esce marroncino, altre volte
azzurro chiaro... Insomma, bisogna fare esperienza e conoscere il mezzo
di stampa.

 di stampa.
Mmm... no, non confondiamo le idee.
Da una stampante io mi aspetto lo stesso risultato che ho a video!
Puň variare qualcosa a causa della calibrazione delle tinte, ma la tinta di
base deve coincidere!
Quello che intendo io č che mescolando i colori (mai usato le tempere?) si
ottiene un risultato diverso che mescolando le luci: una luce rossa, una
verde e una blu sovrapposte danno una luce bianca.
Difficilmente riuscirai ad ottenere il bianco mescolando una tempera rossa,
blu e verde.
Ciao

 blu e verde.
sottrattivo, se non sbaglio.
solo che la somma non dava nero, dava sempre verdone oliva scuro :)
ciao, a.

 blu e verde.
E' appunto per questo che ci sono problemi quando si stampano le cose.
Certo, per fini "casalinghi" o comunque non professionali non ci sono
grandi problemi. Se invece si deve produrre qualcosa a livello
tipografico occorre prendere qualche accorgimento (ed entrano in gioco
le varie codifiche CMYK e/o i profili di colore di Photoshop et similia.
Poi spesso occorre prestare attenzione ad stampare certi tipi di colore,
soprattutto se vicini tra loro... Ma questo inizia ad essere decisamente
OT per ICLVB...