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

    New API doc - typos and questions

    Scheduled Pinned Locked Moved Developers' Forum
    370 Posts 35 Posters 256.4k Views 35 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.
    • thomthomT Offline
      thomthom
      last edited by

      The Model collection some times doesn't list all the materials when you call .each on it.
      http://forums.sketchucation.com/viewtopic.php?f=11&t=21243

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

      1 Reply Last reply Reply Quote 0
      • thomthomT Offline
        thomthom
        last edited by

        WebDialog.new
        See Martin's post: http://forums.sketchucation.com/viewtopic.php?f=180&t=21502

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

        1 Reply Last reply Reply Quote 0
        • M Offline
          MartinRinehart
          last edited by

          The following was agreed, in http://forums.sketchucation.com/viewtopic.php?f=180&t=21502 to correctly document WebDialog.new.

          Alternate to the API docs, with help. This is for PC:

          title - string - This text will appear in the title bar of your WebDialog

          scrollable - boolean - This is a NOP. You get scrollbars, regardless. Workaround: <body scroll=no>.

          key - string - If this is nil or an empty string, your dialog's size/location is stored in "HKEY_CURRENT_USER/Software/Google/SketchUp7/WebDialog_". You should definitely include here the name of your Ruby, which will be concatenated:
          "HKEY_CURRENT_USER/Software/Google/SketchUp7/WebDialog_MyRuby"

          width, height, left, top - integers - size/location, in pixels, of the first appearance of your WebDialog. All subsequent appearances will be taken from the registry entry.

          resizeable - boolean - if false, your user cannot resize the dialog. Defaults to true, if omitted.

          Author, Edges to Rubies - The Complete SketchUp Tutorial at http://www.MartinRinehart.com/models/tutorial.

          1 Reply Last reply Reply Quote 0
          • T Offline
            tomasz
            last edited by

            class ShadowInfo

            ShadowTime_time_t
            SunRise_time_t
            SunSet_time_t
            TZOffset
            UseSunForAllShading

            Those keys are not mentioned/explained in the documentation.

            Author of [Thea Render for SketchUp](http://www.thearender.com/sketchup)

            1 Reply Last reply Reply Quote 0
            • M Offline
              MartinRinehart
              last edited by

              Topic: WebDialog.new

              The second parameter, scrollbars, appears to be operational on the Mac. PCs get scrollbars, regardless.

              Author, Edges to Rubies - The Complete SketchUp Tutorial at http://www.MartinRinehart.com/models/tutorial.

              1 Reply Last reply Reply Quote 0
              • J Offline
                Jim
                last edited by

                Just a general request for the API docs. When viewing a method which references another class, would it be possible to link to that class? For example, you are the viewing Model.bounds description - it would be nice to be able to jump right to the BoundingBox class.

                Thanks.

                Hi

                1 Reply Last reply Reply Quote 0
                • J Offline
                  Jim
                  last edited by

                  I wonder if we should lock this list and start a new one for 7.1?

                  Hi

                  1 Reply Last reply Reply Quote 0
                  • thomthomT Offline
                    thomthom
                    last edited by

                    @jim said:

                    I wonder if we should lock this list and start a new one for 7.1?

                    Maybe once Scott has updated the docs first?

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

                    1 Reply Last reply Reply Quote 0
                    • thomthomT Offline
                      thomthom
                      last edited by

                      Entity.typename
                      http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/entity.html#typename

                      I think it's worth noting here that .typename comparison is slow and should be avoided if possible. Ref: http://forums.sketchucation.com/viewtopic.php?f=180&t=19576&st=0&sk=t&sd=a#p166340
                      .typename is required if you need to identify entity types that don't have ruby API classes, such as DimensionLinear, DimensionRadial and Polyline3d. And if you scan for these that you check for entities of class DrawingElement before you do a .typename comaprison.

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

                      1 Reply Last reply Reply Quote 0
                      • T Offline
                        tomasz
                        last edited by

                        "DisplayColorbyLayer" key of RenderinOptions should read "DisplayColorByLayer"

                        Author of [Thea Render for SketchUp](http://www.thearender.com/sketchup)

                        1 Reply Last reply Reply Quote 0
                        • N Offline
                          NewOne
                          last edited by

                          @unknownuser said:

                          "DisplayColorbyLayer" key of RenderinOptions should read "DisplayColorByLayer"

                          What's wrong with Colorby Layer ? 🤣

                          1 Reply Last reply Reply Quote 0
                          • T Offline
                            tomasz
                            last edited by

                            @newone said:

                            What's wrong with Colorby Layer ? 🤣

                            Try read the value of it. Such a key does not exist.

                            Author of [Thea Render for SketchUp](http://www.thearender.com/sketchup)

                            1 Reply Last reply Reply Quote 0
                            • thomthomT Offline
                              thomthom
                              last edited by

                              Did I miss a joke..? 😕

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

                              1 Reply Last reply Reply Quote 0
                              • N Offline
                                NewOne
                                last edited by

                                @unknownuser said:

                                @newone said:

                                What's wrong with Colorby Layer ? 🤣

                                Try read the value of it. Such a key does not exist.

                                hey, that was a joke 😛 I got your point and you are right...

                                1 Reply Last reply Reply Quote 0
                                • C Offline
                                  cjthompson
                                  last edited by

                                  @newone said:

                                  @unknownuser said:

                                  @newone said:

                                  What's wrong with Colorby Layer ? 🤣

                                  Try read the value of it. Such a key does not exist.

                                  hey, that was a joke 😛 I got your point and you are right...

                                  I'm afraid you are much too easily amused 😄

                                  1 Reply Last reply Reply Quote 0
                                  • thomthomT Offline
                                    thomthom
                                    last edited by

                                    Sketchup.register_importer
                                    http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/sketchup.html#register_importer

                                    The docs says SU6.0+, but isn't it SU7.0+ ?

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

                                    1 Reply Last reply Reply Quote 0
                                    • thomthomT Offline
                                      thomthom
                                      last edited by

                                      Sketchup.read_default
                                      http://code.google.com/apis/sketchup/docs/ourdoc/sketchup.html#read_default

                                      @unknownuser said:

                                      True if successful, false if unsuccessful.

                                      Surely it would return the value being accessed?

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

                                      1 Reply Last reply Reply Quote 0
                                      • Dan RathbunD Offline
                                        Dan Rathbun
                                        last edited by

                                        @thomthom said:

                                        Sketchup.read_default
                                        http://code.google.com/apis/sketchup/docs/ourdoc/sketchup.html#read_default

                                        True if successful, false if unsuccessful.
                                        Surely it would return the value being accessed?

                                        Verified!
                                        Sketchup.read_default('Preferences','SnapAngle') returns 15.0
                                        [My current setting; which happens in this case to be class Float.]

                                        The API doc is vague about the default argument. The definition should read (as things work now):
                                        "(optional) A value to return, if the variable is not found or empty."
                                        [The way it is written, I read it as being a value to write into the registry.]

                                        The lack of error checking in this method, can easily create false Resistry Keys.
                                        Example: if you misspell the key (section on the Mac,)... ie:
                                        [note misspelled 'Preferences']:
                                        Sketchup.read_default('Prefer ances','SnapAngle')
                                        ... the method creates a new 'Preferances' key, with nothing under this new WORTHLESS key. (No Valuename, no value.) The method then just returns nil. [On Win32, we must manually use the Registry Editor to get rid of this junk!]

                                        If the key is correct, but the Valuename is wrong (or does not exist,) the method just returns nil, [again,] or the default ReturnValue.

                                        If the the Key is correct, AND the Valuname is correct, but the Value is empty, the method returns nil, [once again,] or the default ReturnValue.

                                        So we have 3 situations in which the method can return nil, and no way thru the SU API to tell what the situation is. [yes we can use one of the full ruby Win32 Registry modules, and I may begin doing this.]

                                        A fourth situation, is if the value is an empty string, (ie '' or "" are stored in the registry value the method just returns the empty string (and NOT nil.) The return class of the method is string in this case.
                                        This can happen if you use Sketchup.write_default( key, valuename, ""), but its not necessary as each value in the registry has a type, and strings don't need delimiters.
                                        We should use instead Sketchup.write_default( key, valuename, nil) to clear a string value in the registry.

                                        I would propose a change to this method...

                                        (1 as is.) IF everything exists, it works OK, and the value is returned.

                                        (2 as is.) If (the Key exists, AND the Valuename exists,) AND the value is empty, then the method should return NIL without a default Return Value (3rd parameter,) OR the 3rd parameter if given.

                                        (3) If the EITHER the Key OR the Valuename do NOT exist, then the method should raise an exception similar to a hash index error, viz:
                                        Error in myprog.rb:22:in `Sketchup.read_default': key not found (IndexError) ...

                                        Then (reference methods for Hash class):
                                        CREATEseveral new boolean methods similar to Hash.has_key?, Hash.has_value? and Hash.empty? so the programmer can decide in their RESCUE block what action to perform;

                                        I'd envision these boolean methods to be named similar to:
                                        Sketchup.default_empty?
                                        Sketchup.default_has_key? (perhaps with a Mac alias .default_has_section? for plist files)
                                        Sketchup.default_has_valuename? (perhaps a Mac alias .default_has_variable? for plist files)

                                        .
                                        Thoughts?

                                        I'm not here much anymore.

                                        1 Reply Last reply Reply Quote 0
                                        • Dan RathbunD Offline
                                          Dan Rathbun
                                          last edited by

                                          Face.mesh
                                          http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/face.html#mesh

                                          @unknownuser said:

                                          Valid flags are:

                                          [condensed: 0, 1, 2, 4 ]

                                          Add these numbers together to combine flags. A value of **5** will include all flags, for example.

                                          I seem to get 7 (as shown in the example,) when I add all the flags.
                                          🤓

                                          I'm not here much anymore.

                                          1 Reply Last reply Reply Quote 0
                                          • thomthomT Offline
                                            thomthom
                                            last edited by

                                            Some of the methods to access toolbars needs clarification.

                                            UI.set_toolbar_visible UI.toolbar_names UI.toolbar_visible?
                                            These only works on the native Sketchup toolbars. And UI.toolbar_names doesn't list all native toolbars.

                                            UI.toolbar is used to return Ruby toolbars. But (!) it will never fail if you try to refer to a non-existent toolbar - it will create a new one. Have not found a way to detect if a Ruby toolbar exists or not.

                                            http://forums.sketchucation.com/viewtopic.php?f=180&t=21156

                                            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
                                            • 7
                                            • 8
                                            • 9
                                            • 10
                                            • 11
                                            • 18
                                            • 19
                                            • 9 / 19
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement