home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 7_2009-2012.ISO / data / zips / EVOLVING_C220927892011.psc / cls / clsGradient3.cls < prev    next >
Text File  |  2011-06-15  |  1KB  |  47 lines

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4.   Persistable = 0  'NotPersistable
  5.   DataBindingBehavior = 0  'vbNone
  6.   DataSourceBehavior  = 0  'vbNone
  7.   MTSTransactionMode  = 0  'NotAnMTSObject
  8. END
  9. Attribute VB_Name = "clsGradient3"
  10. Attribute VB_GlobalNameSpace = False
  11. Attribute VB_Creatable = True
  12. Attribute VB_PredeclaredId = False
  13. Attribute VB_Exposed = False
  14. Private V(-255 To 255) As Long
  15.  
  16. Public Property Get GetGrad(I As Long)
  17.     GetGrad = V(I)
  18. End Property
  19.  
  20. Public Sub Init(R1, G1, B1, R0, G0, B0, R2, G2, B2)
  21.     Dim R          As Long
  22.     Dim G          As Long
  23.     Dim B          As Long
  24.  
  25.     Dim P1         As Single
  26.     Dim P2         As Single
  27.  
  28.     For I = 0 To 255
  29.         P1 = I / 255
  30.         P2 = 1 - P1
  31.  
  32.         R = R2 * P1 + R0 * P2
  33.         G = G2 * P1 + G0 * P2
  34.         B = B2 * P1 + B0 * P2
  35.         V(I) = RGB(R, G, B)
  36.  
  37.         R = R1 * P1 + R0 * P2
  38.         G = G1 * P1 + G0 * P2
  39.         B = B1 * P1 + B0 * P2
  40.         V(-I) = RGB(R, G, B)
  41.  
  42.     Next
  43.  
  44.  
  45. End Sub
  46.  
  47.