'=============================================== ' Functions library '=============================================== Const PI=acos(-1) '=============================================== ' Return the short name of file '=============================================== Function GetFileName(file as string) as string result=RIGHT$(file,Len(file)-RINSTR(file,"\")) End Function '=============================================== ' Return the path name of file '=============================================== Function GetPathName(file as string) as string result=LEFT$(file,RINSTR(file,"\")-1) End Function '=============================================== ' Return the extension of file '=============================================== Function GetFileExt(file as string) as string result=RIGHT$(file,Len(file)-RINSTR(file,".")) End Function '=============================================== ' Return the n word in a string expression '=============================================== Function Word$(s as string,index as integer) as string dim stemp as string dim i as integer dim flagSpace as integer stemp="" for i=1 to len(s) if mid$(s,i,1)<>space$(1) then stemp=stemp+mid$(s,i,1) flagSpace=0 else if flagSpace=0 then stemp=stemp+space$(1) flagSpace=1 end if next i stemp=ltrim$(rtrim$(stemp)) result=Field$(stemp," ",index) End Function '================================================== ' Return the number of word in a string '================================================== function GetWordCount(s as String) as integer dim flagStop as integer dim counter as integer counter=1 flagStop=0 while flagStop=0 if Word$(s,counter)<>"" then counter=counter+1 else flagStop=1 end if wend result=counter-1 end function '==================================================== ' Return a string with remove char '==================================================== function RemoveChar$(s as string,char as string) as string dim source as string if s<>"" then source=s while instr(source,char)<>0 source=left$(source,instr(source,char)-1)+mid$(source,instr(source,char)+len(char)) wend result=source end if end function '==================================================== ' Return a string without space to start and to end '==================================================== Function Trim$(s as string) as string Result=LTRIM$(RTRIM$(s)) End Function '====================================================== ' Return ratio '====================================================== function Ratio(Value1 as double,Value2 as double) as double Result=((Value1-Value2)*100)/Value1 end function '======================================== ' Return radian value '======================================== function GetRadian(degrees as double) as double Result=degrees*(Pi/180) end function '========================================== ' Return degrees value '========================================== function GetDegrees(radian as double) as double Result=radian*(180/Pi) end function '=================================== ' Return distance '=================================== function Distance(x as double,y as double) as double Result=SQR(x^2+y^2) end function '=================================== ' Return surface '=================================== function Surface(Width as double,Height as double) as double Result=Width*Height end function '=================================== ' Return blue value of color '=================================== function GetBlue(Color as long) as long Result=int(Color/65536) end function '=================================== ' Return red value of color '=================================== function GetRed(Color as long) as long dim blue as long dim green as long blue=int(Color/65536) green=int((Color-(blue*65536))/256) Result=int(Color-(blue*65536)-(green*256)) end function '=================================== ' Return green value of color '=================================== function GetGreen(Color as long) as long dim blue as long blue=int(Color/65536) Result=int((Color-(blue*65536))/256) end function '========================================== ' Return Dec from bin '========================================== function BinToDec(bin as string)as long dim bit as integer dim i as integer dim value as integer bin=REVERSE$(bin) bit=1 value=0 for i=1 to len(bin) if mid$(bin,i,1)="1" then value=value+bit bit=bit*2 next i result=value end function '============================================= ' Return Dec from hex '============================================= function HexToDec(hex as string)as long dim bit as long dim valbit as integer dim i as integer dim value as integer hex=REVERSE$(hex) bit=1 value=0 for i=1 to len(hex) if mid$(hex,i,1)="A" then value=value+(10*bit) elseif mid$(hex,i,1)="B" then value=value+(11*bit) elseif mid$(hex,i,1)="C" then value=value+(12*bit) elseif mid$(hex,i,1)="D" then value=value+(13*bit) elseif mid$(hex,i,1)="E" then value=value+(14*bit) elseif mid$(hex,i,1)="F" then value=value+(15*bit) else value=value+(val(mid$(hex,i,1))*bit) end if if (bit*16)<2147483647 then bit=bit*16 next i result=value end function