Calcul des surfaces et affichage des formes géometriques

Résolu
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -  
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Est il possible après le calcul des surfaces de les afficher ( des rectangles ) sur un form en VB6 ?

Si c'est oui, merci d'avance de m'orienter

10 réponses

  1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 784
     
    Bonjour,

    Afficher 25 ha sur quelques cm² c'est pas possible !
    0
  2. LenouveauApprenti
     
    Re

    Vous avez raison. Mais mes surfaces ne dépassent pas ces quelques cm2
    0
  3. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
     
    Bonjour

    Merci pour l'orientation vers les deux tutos, je les consulterai sans faute
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
     
    Bonjour

    N.B : l'environnement VB6

    Je tente de dessiner un rectangle à l'intérieur de PictureBox en utilisant les données suivantes:

    Private Sub Cmd_Click()
    
    Dim X, Y, Lon, Lar As Double
    
    
    Y = 288 / 0.0265
    X = 122 / 0.0265
    
    Pict1.Left = 100
    Pict1.Height = X
    Pict1.Width = Y
    
    Lon = 75 / 0.0265
    Lar = 60 / 0.0265
    
    Pict1.Line (0, 0)-(Lon, Lar), , B
    
    
    
    End Sub
    

    le problème est l'application me renvoie la moitié du rectangle, c'est à dire, une Ligne (Longueur),
    et une Largeur (Largeur), en constituant une angle de 90 °

    Merci d'avance de m'aider à avoir mon rectangle

    Important : J'ai sélectionné les deux crochets <> et choisi Basic sans resultat

    EDIT : Ajout du LANGAGE dans les balises de code.
    NB: Si la selection ne t'affiche pas le langage dans les balises... tu peux l'écrire à la main tel qu'indiqué dans le lien que je t'ai donné ! (jordane)
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
       
      Tu as essayé de ne pas commencer à 0,0 ?
      Tu as essayé (comme dans les exemples) d'utiliser le mot clé STEP ?
      Pour info, une autre doc sur le sujet : https://bytes.com/topic/visual-basic/insights/706417-drawing-graphics


      Et comme indiqué dans mon EDIT de ton message :

      Si la selection ne t'affiche pas le langage dans les balises... tu peux l'écrire à la main tel qu'indiqué dans le lien que je t'ai donné ! (jordane)
      0
  6. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
     
    Re

    Merci pour votre réponse.
    Je vous explique pourquoi J'ai commencé par (0,0)

    L'idée est :
    J'ai une plaque de 280 cm de longueur et 120 cm de largeur ( désigné par PictureBox )
    Après je veux y tracer un rectangle de 75 cm x 60 cm

    Le traçage commencé le bord gauche de la plaque et le haut
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
       
      peu importe la raison que tu as de commencer à 0,0 ....
      ce que j'aimerais savoir c'est si tu décales le début est-ce que ton rectangle apparaît ?
      0
  7. LenouveauApprenti
     
    Re

    J'ai tenté de décaler le rectangle, toujours le même résultat. La moitié du rectangle.
    Par contre, si je travaille directement sur la form en éliminant la PictureBox, mes rectangles apparaissaient
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
       
      par contre, tu es sûr qu'il faille multiplier tes longeurs largeurs par 37,73 ?
      Quelles sont les dimensions

      par ce que là.. tu as un Y à plus de 10000 ...
      0
  8. LenouvauApprenti
     
    Re

    Voilà ce que j'ai tenté sauf erreur de ma part.

    J'ai prédéfini la propriété ScalMode PictureBox à Pixel

    Comme ma plaque est de 280 cm x 120 cm
    J'ai transforme les cm en Pixel ( 0,0265 )

    X est la longueur
    Y est la largeur

    X= 280/0,0265
    Y= 120/0,0265

    Le rectangle , car il y a plusieurs. Mais comme essai je tente avec un seul

    Dimension du rectangle 75 cm x 60 cm ( à transformer en Pixel )
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
       
      Le pixel est une unité relative qui dépend de la définition du support en l'occurrence ton d'écran
      0
      1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831 > jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Et je doute fort que tu aiess plus de 10000 pixels en hauteur sur l'affichage de ton ordinateur
        0
      2. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831 > jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention  
         
        0
  9. LenouveauApprenti
     
    Re

    Le cadre ( PictureBox) avec les dimensions que je t'ai donné auparavant, apparaît normalent dans presque la moitié de l'ecran
    0
  10. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
     
    Bonjour

    J'ai réessayé une autre fois, et j'ai pu arriver à un début de résultat, mais je n'arrive pas à comprendre certains détails, à savoir
    1 définition des mesures des X et Y, puisque la PictureBox est prédéfinie en Pixel, et les données que je cherche sont en cm (à convertir en pixel pour avoir une homogénéité de mesures)
    Notez bien que les vrais mesures :
    - de Picture1, le cadre initial (X=280 cm, Y=140 cm)
    - des morceaux à découper (X=75 cm, Y=60 cm)
    - les 60, et 4 sont estimations je ne peux pas les expliquer, seulement ils me permettaient de donner
    formes visibles à mes rectangle

    2 Au premier clic du bouton Command1, la demi, demi rectangle apparaît,
    Au deuxième Click tous les rectangles apparaissent (alors que l’événement est Click)

    mes codes:

    Private Sub CmdNouv_Click()
    
    
    Dim XCadre, YCadre As Double
    Dim XBloc, YBloc As Double
    
    XCadre = 280 * 60
    YCadre = 140 * 60
    
    
    
    Picture1.Left = 50
    Picture1.Width = XCadre
    Picture1.Height = YCadre
    
    
    XBloc = 75 * 4
    YBloc = 60 * 4
    
    'Ligne 1
    Picture1.Line (0, 0)-Step(XBloc, YBloc), vbBlue, B
    Picture1.Line (0 + (1 * XBloc), 0)-Step(XBloc, YBloc), vbBlue, B
    Picture1.Line (0 + (2 * XBloc), 0)-Step(XBloc, YBloc), vbBlue, B
    'Ligne 2
    Picture1.Line (0, 0)-Step(XBloc, (2 * YBloc)), vbBlue, B
    Picture1.Line (0 + (1 * XBloc), 0)-Step(XBloc, (2 * YBloc)), vbBlue, B
    Picture1.Line (0 + (2 * XBloc), 0)-Step(XBloc, (2 * YBloc)), vbBlue, B
    
    
    
    End Sub
    


    Je vous prie de m'expliquer :
    - comment devrais je faire pour harmoniser mes mesures, celles de PictureBox et celles des rectangles à y dessiner.
    - pourquoi devrais je cliquer une deuxième fois sur la commande pour avoir le bon résultat, alors que l’événement est Click et non double click
    0