File "VB3D6.tmp"

Full Path: /home/analogde/www/Dessin/VB3D6.tmp
File size: 3.77 KB
MIME-type: text/plain
Charset: 8 bit

Attribute VB_Name = "Module1"
Public Function Import_Template()


    On Error GoTo OpenError
       
    Dim Fichier_Nom As String
    Dim Data As String
    Dim chaine(200) As String
    
    Dim nbre_ligne As Integer
    Dim position As Integer
    Dim cpt_BROCHE As Integer
    
    
    nbre_ligne = 1
        
    With Form_principale
        .CmDlg.CancelError = True
        .CmDlg.DialogTitle = "Slction du fichier  ouvrir"
        .CmDlg.Filter = filtre_champ
        .CmDlg.FilterIndex = 1
        .CmDlg.ShowOpen
   End With
       
   Fichier_Nom = Form_principale.CmDlg.FileName

   traitement_fichier_unix (Fichier_Nom)
   
  ' lecture du fichier
  'Open Fichier_Nom For Input As #1

  'Dim temp As String
  'Dim PAD_toto As Integer
  
  
  ' While Not EOF(1)
  '      Input #1, Data$
  '      cpt_BROCHE = cpt_BROCHE + 1
  '      chaine(nbre_ligne) = Data$
  '      temp = chaine(nbre_ligne)
  '      temp = extraction_champ(temp, "Template")
        ' ajouter
  '      pipo = Insert_BROCHE(Pos_X, Pos_Y, Num)
  '      Affiche_BROCHE Form_principale.Graphe
  '      nbre_ligne = nbre_ligne + 1
  ' Wend
   
  'Close #1
   
    
OpenError:

End Function

Public Function traitement_fichier_unix(ByVal fichier As String)

Dim ligne As String
Dim Buffer As String
Dim Lignes As Variant
Dim Pnt As Integer


Open fichier For Binary As #2
Buffer = String(LOF(2), 0)
'on dimensionne buffer  la taille du fichier
Get #2, , Buffer
'on lit le fichier en entier
Close #2
Lignes = Split(Buffer, vbLf)
'on decoupe le buffer dans un tableau
For Pnt = 0 To UBound(Lignes)
    ' remplace le sparateur par un espace
    Lignes(Pnt) = Replace(Lignes(Pnt), Chr(9), " ")
    ' remplace le point par une virgule
    Lignes(Pnt) = Replace(Lignes(Pnt), ".", ",")
    ' temporaire
    ligne = Lignes(Pnt)
    temp = extraction_champ(ligne, "Template")
    'ajouter
    pipo = Insert_BROCHE(Pos_X, Pos_Y, Num)
Next

Affiche_BROCHE Form_principale.Graphe

End Function


Public Function Insert_BROCHE(ByVal cX As Double, ByVal cY As Double, ByVal Num) As Long

' incrmente le nombre de broche
NB_BROCHE = NB_BROCHE + 1

' redimensionne le tableau de liens
ReDim Preserve Objet_BROCHE(NB_BROCHE - 1)

' instancie une nouvelle broche
Set Objet_BROCHE(NB_BROCHE - 1) = New BROCHE

' defini les parametres de la nouvelle broche
 tmp = Objet_BROCHE(NB_BROCHE - 1).Set_BROCHE_Parametres(NB_BROCHE - 1, cX, cY)

' retourne l'ID
Insert_BROCHE = NB_BROCHE - 1
    
End Function

Public Sub Affiche_BROCHE(picture As PictureBox)
    
    Dim i As Integer
    Dim PosX As Integer
    Dim PosY As Integer
    
    PosX = 0
    PosY = 0
    pic.Cls
            
    For i = 0 To NB_PIN - 1
           ' recupere la position de la pin
           ' tmp = Objet_BROCHE(i).Get_BROCHE_Position(PosX, PosY)
            'dessine la pin
            tmp = Dessine_BROCHE(PosX, PosY, picture)
    Next i
    
End Sub

Public Function Dessine_BROCHE(ByVal X As Double, ByVal Y As Double, picture As PictureBox)
            

Dim i As Integer
Dim couleur As String


couleur = &H80000007

X = 200
Y = 200

   'Trace des croix centres sur le curseur
   For i = -5 To 5
      pic.PSet (X - 66 + i, Y - 48), couleur
      pic.PSet (X - 66, Y - 48 + i), couleur
      'Trace des croix centres sur le curseur
   Next i


' dessine une croix pour indiquer la position dans le plan
'pic.Line (X, Y)-(X + 50, Y), couleurboite
'pic.Line (X + 25, Y - 25)-(X, Y + 25), couleurboite
' dessine le point de gravit
' pic.Circle (X + largeur / 2, Y + hauteur / 2), taillepuce, couleur

'For i = 0 To 50
'pic.PSet (X, Y + i), couleurboite
'Next i

'For i = 0 To 50
'pic.PSet (X + 25, Y - 25 + i), couleurboite
'Next i



End Function