• Login
sketchucation logo sketchucation
  • Login
๐Ÿค‘ SketchPlus 1.3 | 44 Tools for $15 until June 20th Buy Now

Ruby script for selecting color

Scheduled Pinned Locked Moved Developers' Forum
62 Posts 4 Posters 1.9k 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.
  • N Offline
    nithi09
    last edited by 8 Apr 2013, 12:29

    Hi TIG how do I can add glass texture to only one wall of box out of four walls.above method applying whole box. I like to try only one wall glass.thanks

    1 Reply Last reply Reply Quote 0
    • T Offline
      TIG Moderator
      last edited by 8 Apr 2013, 14:03

      Well... you need to work out how to 'find' the face first, then once you have it give it a [preexisting] material - let's assume it's name is 'Glass'...
      A face has a 'normal' - which the vector that tells us which way a face is looking...
      So let's say the collection of faces [along with edges etc] is in ` - then you need to filter that to find just the faces and then from that exact face with a particular 'normal'...
      Let's also assume it is a box so only one matching face.normal will be found...

      group.entities.grep(Sketchup;;Face).each{|face|
        if face.normal==Z_AXIS ### == faces 'UP'... BUT you can use any vector to compare
          face.material='Glass'
          face.back_material='Glass'
          break ### stop looking
        end
      }
      

      group.entities.grep(Sketchup;;Face).each{|face|
      if face.normal==Z_AXIS ### == faces 'UP'... BUT you can use any vector to compare
      face.material='Glass'
      face.back_material='Glass'
      break ### stop looking
      end
      }[/code:ngl1vctf]

      TIG

      1 Reply Last reply Reply Quote 0
      • N Offline
        nithi09
        last edited by 8 Apr 2013, 14:46

        Hi TIG how do I find preexisting material on my box? is not 'Glass' thx

        1 Reply Last reply Reply Quote 0
        • T Offline
          TIG Moderator
          last edited by 8 Apr 2013, 15:59

          Your materials have names.
          I used 'Glass' as an example.
          The material must already exist in the model.
          [I am skipping explaining how to create a material if it doesn't already exist, change its RGB and opacity etc... that wasn't your original question!]

          So use any existing material you want - just pass its 'name'... ๐Ÿ˜•

          TIG

          1 Reply Last reply Reply Quote 0
          • N Offline
            nithi09
            last edited by 8 Apr 2013, 16:52

            Hi TIG What I am trying to do above creating box one side of box look like see through glass and rest solid coloured any idea???

            1 Reply Last reply Reply Quote 0
            • T Offline
              TIG Moderator
              last edited by 8 Apr 2013, 18:47

              An image of what you expect might help us help you, we are not mind-readers.

              I have given you a general framework for code that finds "any face" by its direction and gives it a material.
              The example I gave was for face.normal==Z_AXIS
              which means it faces directly upwards,
              BUT you can compare it to any axis
              X_AXIS
              Y_AXIS
              and for the 'opposite direction'...
              X_AXIS.reverse
              Y_AXIS.reverse
              Z_AXIS.reverse

              You need to find and read code examples more....

              TIG

              1 Reply Last reply Reply Quote 0
              • N Offline
                nithi09
                last edited by 8 Apr 2013, 19:07

                Hi TIG could you recommend any good book specific for sketchup with code example. I have a book called "Automatic Sketchup" by Matthew Scarpino. It's not enough detail for me.

                1 Reply Last reply Reply Quote 0
                • T Offline
                  TIG Moderator
                  last edited by 8 Apr 2013, 22:16

                  @nithi09 said:

                  Hi TIG could you recommend any good book specific for sketchup with code example. I have a book called "Automatic Sketchup" by Matthew Scarpino. It's not enough detail for me.
                  That's an excellent start.
                  Also get examples of others scripts [not too complex to start] and see how others do it...

                  TIG

                  1 Reply Last reply Reply Quote 0
                  • N Offline
                    nithi09
                    last edited by 9 Apr 2013, 14:45

                    Hi TIG It's working thanks.
                    How do I choose specific one face If I have multiple faces in same direction

                    1 Reply Last reply Reply Quote 0
                    • T Offline
                      TIG Moderator
                      last edited by 10 Apr 2013, 07:07

                      Find something unique about that face - like its bounds.min x/y/z ?

                      TIG

                      1 Reply Last reply Reply Quote 0
                      • T Offline
                        TIG Moderator
                        last edited by 17 Apr 2013, 13:22

                        The sloping, upward looking face will have a normal.z>0 BUT ALSO normal.z<1, it also has a normal.x<0 - so that finds that kind of face ?
                        The triangular face has normal.x==1, BUT so does the rectangular one next to it.
                        You can differentiate them using face.vertices.lengthon each, ==3 for the triangle and ==4 for the rectangle ?
                        Or if the difference is that it is below the red axis, testing face.bounds.min.y<0 will find it...

                        Tip on bb=object.bounds
                        bb.width is in X
                        bb.height is in Y
                        bb.depth is in Z
                        this is NOT as you might initially assume - 'height' is NOT the Z - the bounds conventions come from the older CAD concept, where width/height are from the screen, when you typically looked at an object in plan, from above; and the 'depth' is the extent it projected 'out-of-the-screen'. 3D modelers like SketchUp show axes in 3d with Z typically up the screen rather that 'out-of-it'... bb.min, bb.max and bb.center etc should be self-evident ?

                        TIG

                        1 Reply Last reply Reply Quote 0
                        • N Offline
                          nithi09
                          last edited by 17 Apr 2013, 14:50

                          thanks TIG for fast reply I am going to try. I will let you know!!

                          1 Reply Last reply Reply Quote 0
                          • Dan RathbunD Offline
                            Dan Rathbun
                            last edited by 17 Apr 2013, 19:54

                            @nithi09: Please use [ code ] ... many lines of Ruby code here ... [ /code ] bbCode tags around large blocks of Ruby code.

                            ๐Ÿค“

                            I'm not here much anymore.

                            1 Reply Last reply Reply Quote 0
                            • N Offline
                              nithi09
                              last edited by 17 Apr 2013, 20:40

                              Hi TIG I didn't understand boundingbox method here is my code look at it. Also I attaching image of this

                              <span class="syntaxdefault"><br /></span><span class="syntaxkeyword">require&nbsp;</span><span class="syntaxstring">'Sketchup.rb'<br /></span><span class="syntaxkeyword">class&nbsp;</span><span class="syntaxdefault">Testbox<br />def&nbsp;initialize</span><span class="syntaxkeyword">()</span><span class="syntaxcomment">#testbox1&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">model&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">active_model<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ent&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">model</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxcomment">#mats&nbsp;=&nbsp;model.materials<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#glass&nbsp;=&nbsp;mats.add&nbsp;"Glass"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#ent&nbsp;=&nbsp;Sketchup.active_model.entites<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">ent&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">model</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">active_entities<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;group&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">ent</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_group<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ent&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">group</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;prompts&nbsp;</span><span class="syntaxkeyword">=&nbsp;[</span><span class="syntaxstring">"Width"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Depth"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Height"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Colour"</span><span class="syntaxkeyword">]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">defaults&nbsp;</span><span class="syntaxkeyword">=&nbsp;[</span><span class="syntaxstring">"6'"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"4'"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"5'"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">'Red'</span><span class="syntaxkeyword">]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list&nbsp;=&nbsp;[[</span><span class="syntaxstring">"6'|8'|10'|Custom"</span><span class="syntaxkeyword">],[</span><span class="syntaxstring">"2'|4'|1\""</span><span class="syntaxkeyword">],[</span><span class="syntaxstring">"5'|7'|9'"</span><span class="syntaxkeyword">],[</span><span class="syntaxstring">"Blue|Red|Green|White"</span><span class="syntaxkeyword">]]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">results&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">inputbox&nbsp;prompts</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxdefault">defaults</span><span class="syntaxkeyword">,&nbsp;list,&nbsp;</span><span class="syntaxstring">"Test_Box"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxkeyword">return&nbsp;if&nbsp;</span><span class="syntaxdefault">not&nbsp;results<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;</span><span class="syntaxdefault">w&nbsp;</span><span class="syntaxkeyword">==&nbsp;</span><span class="syntaxstring">"Custom"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">results_w&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">inputbox&nbsp;</span><span class="syntaxkeyword">([</span><span class="syntaxstring">"Enter&nbsp;Width;"</span><span class="syntaxkeyword">],&nbsp;[</span><span class="syntaxstring">"1'"</span><span class="syntaxkeyword">],&nbsp;</span><span class="syntaxstring">"Custom&nbsp;Size"</span><span class="syntaxkeyword">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;</span><span class="syntaxdefault">nil&nbsp;</span><span class="syntaxkeyword">if&nbsp;</span><span class="syntaxdefault">not&nbsp;results_w<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">results_w</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxkeyword">else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">w&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">w</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">to_l<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wid&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">w<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dep&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">1</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hei&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">2</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;color&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">3</span><span class="syntaxkeyword">]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">pts&nbsp;</span><span class="syntaxkeyword">=&nbsp;[[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],&nbsp;[</span><span class="syntaxdefault">wid</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],&nbsp;[</span><span class="syntaxdefault">wid</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],&nbsp;[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">]]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">back_wall&nbsp;</span><span class="syntaxkeyword">=&nbsp;[[-</span><span class="syntaxdefault">5</span><span class="syntaxkeyword">,-</span><span class="syntaxdefault">36</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],[-</span><span class="syntaxdefault">5</span><span class="syntaxkeyword">,-</span><span class="syntaxdefault">36</span><span class="syntaxkeyword">,(</span><span class="syntaxdefault">hei</span><span class="syntaxkeyword">+</span><span class="syntaxdefault">36</span><span class="syntaxkeyword">)],[-</span><span class="syntaxdefault">5</span><span class="syntaxkeyword">,(</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">+</span><span class="syntaxdefault">36</span><span class="syntaxkeyword">),(</span><span class="syntaxdefault">hei</span><span class="syntaxkeyword">+</span><span class="syntaxdefault">36</span><span class="syntaxkeyword">)],[-</span><span class="syntaxdefault">5</span><span class="syntaxkeyword">,(</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">+</span><span class="syntaxdefault">36</span><span class="syntaxkeyword">),</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">]]&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">angle_ptr&nbsp;</span><span class="syntaxkeyword">=&nbsp;[[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],[&nbsp;</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,(</span><span class="syntaxdefault">hei</span><span class="syntaxkeyword">/</span><span class="syntaxdefault">2</span><span class="syntaxkeyword">)],[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,-(</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">/</span><span class="syntaxdefault">2</span><span class="syntaxkeyword">)]]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">triangle&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">ent</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_face&nbsp;angle_ptr<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;base&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">ent</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_face&nbsp;pts<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;backwall&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">ent</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_face&nbsp;back_wall<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hei&nbsp;</span><span class="syntaxkeyword">=&nbsp;-</span><span class="syntaxdefault">hei&nbsp;</span><span class="syntaxkeyword">if&nbsp;(</span><span class="syntaxdefault">base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">normal</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">dot</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">Z_AXIS</span><span class="syntaxkeyword">)&nbsp;<&nbsp;</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">back_material&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">color&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">material&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">color<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mat&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">material<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mat</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">alpha&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">0.5<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">reverse</span><span class="syntaxkeyword">!<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">pushpull&nbsp;</span><span class="syntaxkeyword">-</span><span class="syntaxdefault">hei<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;triangle</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">pushpull&nbsp;wid<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;group</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">grep</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">Sketchup</span><span class="syntaxkeyword">;;</span><span class="syntaxdefault">Face</span><span class="syntaxkeyword">).</span><span class="syntaxdefault">each</span><span class="syntaxkeyword">{&nbsp;|</span><span class="syntaxdefault">face</span><span class="syntaxkeyword">|<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;</span><span class="syntaxdefault">face</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">normal</span><span class="syntaxkeyword">==</span><span class="syntaxdefault">X_AXIS&nbsp;</span><span class="syntaxcomment">##&&&nbsp;face.normal==X_AXIS.reverse###&nbsp;==&nbsp;faces&nbsp;'UP'...&nbsp;BUT&nbsp;you&nbsp;can&nbsp;use&nbsp;any&nbsp;vector&nbsp;to&nbsp;compare<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">mats</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">model</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">materials</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add&nbsp;</span><span class="syntaxstring">"Color_Texture"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">mats</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">texture&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">find_support_file&nbsp;</span><span class="syntaxstring">"panelskin1.jpg"</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxstring">"Plugins"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">mats</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">color&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">color<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;face</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">material</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">mats&nbsp;</span><span class="syntaxcomment">#"Magenta"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">face</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">back_material</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxstring">"Magenta"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">mat1&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">face</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">material<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mat1</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">alpha&nbsp;</span><span class="syntaxkeyword">=</span><span class="syntaxdefault">5<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elsif<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;face</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">normal</span><span class="syntaxkeyword">==</span><span class="syntaxdefault">X_AXIS</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">reverse<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxcomment">#face.material=&nbsp;#"Magenta"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">mats</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">model</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">materials</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add&nbsp;</span><span class="syntaxstring">"Color_Texture"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">mats</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">texture&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">find_support_file&nbsp;</span><span class="syntaxstring">"brick.jpg"</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxstring">"Plugins"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxcomment">#mats.color&nbsp;=&nbsp;color<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#face.material=&nbsp;mats<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">face</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">back_material</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">mats&nbsp;</span><span class="syntaxcomment">#"Magenta"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#mat1&nbsp;=&nbsp;face.material<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#mat1.alpha&nbsp;=0.5<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#break&nbsp;###&nbsp;stop&nbsp;looking<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxkeyword">}&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;</span><span class="syntaxdefault">end<br />end<br /><br /><br /></span><span class="syntaxkeyword">if&nbsp;(</span><span class="syntaxdefault">not&nbsp;$Testbox_menu_loaded</span><span class="syntaxkeyword">)<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;</span><span class="syntaxdefault">UI</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">menu</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Tools"</span><span class="syntaxkeyword">).</span><span class="syntaxdefault">add_item</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"TEST_BOX"</span><span class="syntaxkeyword">)&nbsp;{&nbsp;</span><span class="syntaxdefault">Testbox</span><span class="syntaxkeyword">.new&nbsp;}&nbsp;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;</span><span class="syntaxdefault">$Testbox_menu_loaded&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">true<br />end</span>
                              

                              TestBox.jpg

                              1 Reply Last reply Reply Quote 0
                              • N Offline
                                nithi09
                                last edited by 18 Apr 2013, 18:49

                                Thanks Thom, It's working fine now. I have a question if I change same code like this (using insted of method if I use class) doesn't happening any thing meaning not working). I am sorry I don't know how to wrap in code.

                                <span class="syntaxdefault"><br />require </span><span class="syntaxstring">'Sketchup.rb'<br /></span><span class="syntaxdefault">class Testbox<br />def testbox1 <br />                <br />        model </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">active_model<br />        ent </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> model</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities <br />        </span><span class="syntaxcomment">#ss = model.selection<br /></span><span class="syntaxdefault">        </span><span class="syntaxcomment">#obj = ss[3]<br /></span><span class="syntaxdefault">        prompts </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"Width"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Depth"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Height"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Colour"</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault">        defaults </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"6'"</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">4.feet</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">2.feet</span><span class="syntaxkeyword">,</span><span class="syntaxstring">'Red'</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault">        list </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[[</span><span class="syntaxstring">"6'|8'|10'|Custom"</span><span class="syntaxkeyword">],</span><span class="syntaxstring">""</span><span class="syntaxkeyword">,</span><span class="syntaxstring">""</span><span class="syntaxkeyword">,[</span><span class="syntaxstring">"Blue|Red|Green"</span><span class="syntaxkeyword">]]<br /></span><span class="syntaxdefault">        results </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> inputbox prompts</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> defaults</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> list</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Test_Box"<br /></span><span class="syntaxdefault">        return if not results<br />        <br />        x </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault">        if x </span><span class="syntaxkeyword">==</span><span class="syntaxdefault"> </span><span class="syntaxstring">'Custom'<br /></span><span class="syntaxdefault">        resultsx </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> inputbox </span><span class="syntaxkeyword">([</span><span class="syntaxstring">"Enter Width;"</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"1'"</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Custom Size"</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault">        return nil if not resultsx<br />        x </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> resultsx</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br />        else<br />        x </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> x</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">to_l<br />        end<br />        <br />        wid </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> x<br />        dep </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">1</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br />        hei </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">2</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br />        color </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">3</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault">        <br />        pts </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxdefault">wid</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxdefault">wid</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">]]<br /></span><span class="syntaxdefault">                <br />        base </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> ent</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_face pts<br />       hei </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">-</span><span class="syntaxdefault">hei if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">normal</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">dot</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">Z_AXIS</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword"><</span><span class="syntaxdefault"> 0</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault">        <br />        </span><span class="syntaxcomment">#color = nil if color ==''<br /></span><span class="syntaxdefault">        <br />        base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">back_material </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> color<br />        </span><span class="syntaxcomment">#base.reverse!<br /></span><span class="syntaxdefault">        base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">pushpull hei<br />        <br />        <br /> end<br /> <br /> end<br /><br />if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">not $Testbox_menu_loaded</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault">  <br />  UI</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">menu</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Tools"</span><span class="syntaxkeyword">).</span><span class="syntaxdefault">add_item</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"TEST_BOX"</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{</span><span class="syntaxdefault">Testbox</span><span class="syntaxkeyword">.new}</span><span class="syntaxdefault">  <br />  <br />  $Testbox_menu_loaded </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> true<br />end<br /></span>
                                
                                1 Reply Last reply Reply Quote 0
                                • N Offline
                                  nithi09
                                  last edited by 22 Apr 2013, 13:46

                                  Hi TIG thanks it's works. I have different question now about menu I try create user Inputbox.this is my code I want when user select Door only door size & door custom size has to be active rest has to be disabled vice versa when user select window I am attaching picture to

                                  <span class="syntaxdefault"><br /></span><span class="syntaxkeyword">require&nbsp;</span><span class="syntaxstring">'Sketchup.rb'<br /><br /></span><span class="syntaxkeyword">class&nbsp;</span><span class="syntaxdefault">Testmenu<br /><br />def&nbsp;initialize</span><span class="syntaxkeyword">()<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">ents&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">active_model</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities<br />&nbsp;&nbsp;&nbsp;&nbsp;group&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">ents</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_group<br />&nbsp;&nbsp;&nbsp;&nbsp;ents&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">group</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">1<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxkeyword">while&nbsp;</span><span class="syntaxdefault">x&nbsp;</span><span class="syntaxkeyword"><=&nbsp;</span><span class="syntaxdefault">4<br />&nbsp;&nbsp;&nbsp;&nbsp;prom&nbsp;</span><span class="syntaxkeyword">=&nbsp;[</span><span class="syntaxstring">"A&nbsp;wall&nbsp;unit&nbsp;&nbsp;#{x};"</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxstring">"Door&nbsp;size;&nbsp;"</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxstring">"Custom&nbsp;Door&nbsp;size;"</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxstring">"Window&nbsp;Size;&nbsp;"</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxstring">"Custom&nbsp;Window&nbsp;size;"&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxkeyword">]<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">values&nbsp;</span><span class="syntaxkeyword">=&nbsp;[</span><span class="syntaxstring">'Door'</span><span class="syntaxkeyword">,</span><span class="syntaxstring">""</span><span class="syntaxkeyword">,</span><span class="syntaxstring">""</span><span class="syntaxkeyword">,</span><span class="syntaxstring">""</span><span class="syntaxkeyword">,</span><span class="syntaxstring">""</span><span class="syntaxkeyword">]<br />&nbsp;&nbsp;&nbsp;&nbsp;list&nbsp;=&nbsp;[</span><span class="syntaxstring">"Door|Window"</span><span class="syntaxkeyword">,[</span><span class="syntaxstring">'87"|81"|75"|69"|63"|57"|Custom'</span><span class="syntaxkeyword">],</span><span class="syntaxstring">""</span><span class="syntaxkeyword">,[</span><span class="syntaxstring">'87"|81"|75"|69"|63"|57"|51"|45"|39"|33"|Custom'</span><span class="syntaxkeyword">],</span><span class="syntaxstring">""</span><span class="syntaxkeyword">]<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">res&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">inputbox&nbsp;prom</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxdefault">values</span><span class="syntaxkeyword">,&nbsp;list,&nbsp;</span><span class="syntaxstring">"A&nbsp;wall&nbsp;Door&nbsp;&&nbsp;Window"<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">x&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">x</span><span class="syntaxkeyword">+</span><span class="syntaxdefault">1<br />&nbsp;&nbsp;&nbsp;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />end<br />end<br /><br /></span><span class="syntaxkeyword">if&nbsp;(</span><span class="syntaxdefault">not&nbsp;$Testmenu_menu_loaded</span><span class="syntaxkeyword">)<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;</span><span class="syntaxdefault">UI</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">menu</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Tools"</span><span class="syntaxkeyword">).</span><span class="syntaxdefault">add_item</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"TEST_MENU"</span><span class="syntaxkeyword">)&nbsp;{&nbsp;</span><span class="syntaxdefault">Testmenu</span><span class="syntaxkeyword">.new&nbsp;}&nbsp;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;</span><span class="syntaxdefault">$Testmenu_menu_loaded&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">true<br />end<br /></span>
                                  

                                  TestMenu.jpg

                                  1 Reply Last reply Reply Quote 0
                                  • T Offline
                                    TIG Moderator
                                    last edited by 22 Apr 2013, 13:50

                                    prom = ["A wall unit #{x}:", "Door size: ", "Custom Door size:", "Window Size: ", "Custom Window size:" ] values = ['Door', "", "", "", ""] list = ["Door|Window", ['87"|81"|75"|69"|63"|57"|Custom'], "", ['87"|81"|75"|69"|63"|57"|51"|45"|39"|33"|Custom'], ""] res = inputbox prom, values, list, "A wall Door & Window"

                                    prom= sets the prompts to the left of each input box line

                                    values= sets the starting values - you only have 'Door' set for the first one, the "" after that say start with NO value. The default needs to be a value in the matching list entry OR a lone default-value.
                                    To use the list's first in each case try:
                                    values = ["Door", "87"", "60"", "87"", "60""]
                                    ...notice how I escape the " inside "" using " then each box gets a default value.
                                    I chose 60" as the default for the custom size - that's up to you...

                                    list= gives the dropdown lists to choose from, each item in the dropdown is separated by a | any NON-dropdown 'single values' are shown as ""...

                                    Please use () around arguments passed... e.g.
                                    res = inputbox(prom, values, list, "A wall Door & Window")[/ruby]
                                    Un-parenthesized lists my be deprecated in future ruby releases, and using () inside any arguments tat involve clacs etc when the set is un-parenthesized will cause issues now.

                                    TIG

                                    1 Reply Last reply Reply Quote 0
                                    • N Offline
                                      nithi09
                                      last edited by 22 Apr 2013, 14:21

                                      Hi TIG thanks for fast reply
                                      My question is when user select let say window from listbox then door size and door custom size grayout is it possible. I mean dynamicalley.

                                      1 Reply Last reply Reply Quote 0
                                      • T Offline
                                        TIG Moderator
                                        last edited by 22 Apr 2013, 14:28

                                        Not with the standard inputbox.

                                        You can do it using a complex webdialog...
                                        That's a 'whole new kettle-of-fish'... ๐Ÿ˜‰

                                        If you want the user to choose window/Door then why not have a simple item inputbox first and depending on the answer chosen in that open a second inputbox giving different options ?
                                        That's easier than learning webdialog/html/js/css etc - unless you want a bigger challenge than you already have ??

                                        TIG

                                        1 Reply Last reply Reply Quote 0
                                        • thomthomT Offline
                                          thomthom
                                          last edited by 23 Apr 2013, 13:47

                                          Don't put a space between the = sign of the BBCode CODE block.

                                          Thomas Thomassen โ€” SketchUp Monkey & Coding addict
                                          List of my plugins and link to the CookieWare fund

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

                                          Advertisement