sketchucation logo sketchucation
    • Login
    ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    Valeurs limites

    Scheduled Pinned Locked Moved Français
    10 Posts 4 Posters 252 Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B Offline
      Boris VAISMAN
      last edited by

      Bonjour à tous,

      Je cherche à limiter en valeur certaines variables de mes composants. Par exemple, pour une variable appelée largeur, je souhaiterais que l'on ne puisse pas saisir de valeur supérieur à 3500.

      J'imagine que c'est possible mais comment ?

      1 Reply Last reply Reply Quote 0
      • L Offline
        Laurent Brixius
        last edited by

        Bonjour Boris,

        Il est possible de limiter la mise à l'échelle d'un composant dynamique en utilisant la fonction LARGEST.

        Voir sa description dans la page d'exemples de fonctions de composants dynamiques:
        http://support.google.com/sketchup/bin/answer.py?hl=fr&answer=115749

        Laurent Brixius
        http://www.arch-image.com/formations-sketchup/

        1 Reply Last reply Reply Quote 0
        • B Offline
          Boris VAISMAN
          last edited by

          Alors, là, je dois être probablement neuneu mais je n'arrive pas à utiliser cette fonction. LARGEST me donne bien la plus grande des valeurs mais j'obtiens une référence circulaire si je l'applique à ma variable.

          En fait, en lisant la doc Google, dans la définition de la variable LARGEUR, j'écris : = LARGEST(CURRENT("LARGEUR"),350) pour dire que ma largeur est forcément supérieure à 350.

          Et bien ça ne marche pas...

          Pourquoi tant de haine ? 😉

          1 Reply Last reply Reply Quote 0
          • TIGT Offline
            TIG Moderator
            last edited by

            LARGEUR =LARGEST(LenX, 350)
            Définit LARGEUR à Lenx OU 350, si elle est plus grande.
            Sets LARGEUR to Lenx OR 350, whichever is the larger.

            TIG

            1 Reply Last reply Reply Quote 0
            • B Offline
              Boris VAISMAN
              last edited by

              Je comprends bien mais ce n'est pas ce que je veux obtenir.

              Je souhaite en sortie du champ de saisie pouvoir limiter les valeurs, par exemple dire que mon champ Largeur est inférieur à 350. Dans mon cas, LENX n'est pas égal à LARGEUR, c'est bien le champ LARGEUR que je veux limiter et non autre chose.

              Boris

              1 Reply Last reply Reply Quote 0
              • TIGT Offline
                TIG Moderator
                last edited by

                J'ai utilisé LenX parce qu'il n'était pas LARGEUR - évitant ainsi une référence circulaire - vous pouvez utiliser n'importe quel autre touche que vous voulez, à condition que ce n'est pas «circulaire».
                Il ya plusieurs fonctions pour contraindre les valeurs.
                Si vous souhaitez limiter les choses dans la façon dont vous expliquer maintenant, alors «SMALLEST» est nécessaire.
                LARGEUR =SMALLEST(LenX, 350)
                Cela rend LARGEUR comme LenX ou 350 si elle est plus petite [«SMALLEST»] valeur.
                I used LenX because it wasn't LARGEUR - thereby avoiding a circular reference - you can use whatever other key you want, provided it's not 'circular'.
                There are several functions to constrain values.
                If you want to limit things in the way you now explain, then 'SMALLEST' is needed
                LARGEUR =SMALLEST(LenX, 350)
                This makes LARGEUR LenX OR 350 whichever is the SMALLER value.

                TIG

                1 Reply Last reply Reply Quote 0
                • B Offline
                  Boris VAISMAN
                  last edited by

                  Oui mais encore une fois, ce n'est pas ce que je souhaite. Je souhaite, si c'est possible, pouvoir limiter les valeurs d'un champ unique.

                  si je fais LARGEUR=SMALLEST("LARGEUR2",350), je suis obligé de saisir LARGEUR2 sinon, j'obtiens une référence circulaire. Or, c'est LARGEUR que je veux saisir et limiter.

                  Par exemple, quand je saisis le champ largeur et que je fais appliquer, je voudrais que si la largeur est supérieure à 350, alors, il remplace ma saisie par 350.

                  J'espère être assez clair dans ma demande.

                  Boris

                  1 Reply Last reply Reply Quote 0
                  • TIGT Offline
                    TIG Moderator
                    last edited by

                    Cela fonctionne pour moi.
                    Lorsque vous entrez le valeur de 'width1' donc la valeur liée 'width' montre que la valeur de 'width1', jusqu'à ce qu'il soit supérieur à 100, puis il montre que 100...
                    This works for me.
                    When you enter values of 'width1' the linked value 'width' shows as the value of 'width1', until it is greater than 100, then it shows as 100...
                    Capture.PNGCapture1.PNG

                    TIG

                    1 Reply Last reply Reply Quote 0
                    • DareDevilD Offline
                      DareDevil
                      last edited by

                      Tu ne peux pas avoir un champ de saisie et une formule pour la même valeur. Quoi que tu fasses, soit la saisie enlève le fonction, soit tu te retrouves avec une référence cyclique. A mon avis, la solution passe par deux valeurs, un champ de saisie (qui peut avoir n'importe quelle valeur) et un retour (qui lui est limité et qui passe l'info au reste du composant).

                      [EDIT]
                      ...comme dans l'exemple de TIG (posts croisés 😉 )

                      1 Reply Last reply Reply Quote 0
                      • B Offline
                        Boris VAISMAN
                        last edited by

                        Merci à tous d'avoir répondu sur l'impossibilité de gérer ce genre de cas.

                        Peut-on détourner le problème en alliant un formulaire Web au composant? Ainsi, dans une page Web, on fait ce qu'on veut avec du javascript.

                        Puis-je trouver des exemples qui font ça si c'est possible et j'adapterai...

                        Merci d'avance,

                        Boris

                        1 Reply Last reply Reply Quote 0
                        • 1 / 1
                        • First post
                          Last post
                        Buy SketchPlus
                        Buy SUbD
                        Buy WrapR
                        Buy eBook
                        Buy Modelur
                        Buy Vertex Tools
                        Buy SketchCuisine
                        Buy FormFonts

                        Advertisement