• Login
sketchucation logo sketchucation
  • Login
πŸ€‘ 30% Off | Artisan 2 on sale until April 30th Buy Now

New API doc - typos and questions

Scheduled Pinned Locked Moved Developers' Forum
370 Posts 35 Posters 256.4k Views
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.
  • D Offline
    daiku
    last edited by 21 May 2009, 12:53

    I just want to take a second to thank Thomas for his diligence in finding and documenting these inconsistencies. It's really going to make life easier for a lot of folks. CB.

    Clark Bremer
    http://www.northernlightstimberframing.com

    1 Reply Last reply Reply Quote 0
    • T Offline
      TIG Moderator
      last edited by 21 May 2009, 14:58

      Just noticed that 'behavior' has some typos in the examples - '.xxx =' rather than '.xxx=' ...

      behavior.always_face_camera = NOT behavior.always_face_camera=
      behavior.cuts_opening = NOT behavior.cuts_opening=
      behavior.is2d = NOT behavior.is2d=
      behavior.no_scale_mask = NOT behavior.no_scale_mask=
      behavior.shadows_face_sun = NOT behavior.shadows_face_sun=
      behavior.snapto = NOT behavior.snapto=

      ...

      TIG

      1 Reply Last reply Reply Quote 0
      • T Offline
        thomthom
        last edited by 21 May 2009, 15:07

        What? Whitespace matters?
        I always put space between = .I believe that I used .is2d = for my doublecut plugin, and that appeared to work as expected...

        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
          TIG Moderator
          last edited by 21 May 2009, 15:18

          You are right in that it works... BUT the method is behavior.is2d= I thinks it's advisable to keep it like that...

          TIG

          1 Reply Last reply Reply Quote 0
          • T Offline
            thomthom
            last edited by 21 May 2009, 15:25

            So this is a ruby thing? That the = is part of the method name? What about other operations where you use * - + / etc?
            (I'm used to languages such as Javascript, PHP, VB, C# - still getting to grips with Ruby.)

            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
              TIG Moderator
              last edited by 21 May 2009, 15:42

              All of these, a = 2, a= 2, a =2 and a=2 work fine, as do 1 + 2 and 1+2, but I think with methods it's at least advisable to stick to the way it's defined, like xxx.is2d= true and xxx.include?(4) etc...

              It works either way, but...

              TIG

              1 Reply Last reply Reply Quote 0
              • J Offline
                Jim
                last edited by 21 May 2009, 16:48

                @thomthom said:

                So this is a ruby thing? That the = is part of the method name? What about other operations where you use * - + / etc?
                (I'm used to languages such as Javascript, PHP, VB, C# - still getting to grips with Ruby.)

                Yes, those are all methods. also [] and []= are methods. You can define them for you own classes, as well as modify them for existing classes.

                
                class Array
                  def [](index)
                    return self[-index] # ha ha.
                  end
                end
                
                

                Hi

                1 Reply Last reply Reply Quote 0
                • M Offline
                  MarkBergaas
                  last edited by 23 May 2009, 18:27

                  Behavior.snapto

                  I see two problems with the documentation of this method (I would like to call it a property, but that is probably my C# habit talking):

                  The "Returns:" section says it returns true or false, but it actually returns one of the 4 values listed in the description above "Returns:" (the default seems to be SnapTo_Arbitrary). The first sentence of the description ("The snapto method is used to verify the status of a component's "snap to" behavior.") also implies that the return value is a status, not the actual "snap to" selection.

                  It would be very helpful if the documentation of this method would make it clear that the value of Behavior.snapto works in conjunction with the value of Behavior.is2d to set the "glue to" behavior. If is2d equals false, the component will not glue to anything, no matter what value snapto returns. If is2d equals true, the component will glue to faces matching the snapto value.

                  I don’t think it is at all clear that these two (snapto and is2d) are related. It would be helpful to include a reference to snapto in the description of is2d, also.

                  This second issue applies equally, if not more, to the snapto= and is2d= methods.

                  1 Reply Last reply Reply Quote 0
                  • J Offline
                    Jim
                    last edited by 23 May 2009, 20:19

                    Pages.add should contain some of this information about the meaning of the flags argument.

                    [ and also, Pages.add returns a Page object, not nil. ]

                    
                    # The Page Constants
                    Object.constants.grep /^pag/i
                    ["PAGE_USE_SECTION_PLANES", "PAGE_USE_ALL", "PAGE_NO_CAMERA", "PAGE_USE_CAMERA", "PAGE_USE_RENDERING_OPTIONS", "PAGE_USE_SHADOWINFO", "PAGE_USE_SKETCHCS", "PAGE_USE_HIDDEN", "PAGE_USE_LAYER_VISIBILITY"]
                    
                    
                    
                    model = Sketchup.active_model
                    pages = model.pages
                    index = 0
                    page = pages.add("New Page", PAGE_USE_ALL, index)
                    
                    

                    If you want to pick and choose which options, bitwise OR ( | ) the options together:

                    
                    model = Sketchup.active_model
                    pages = model.pages
                    index = 0
                    page = pages.add("New Page", (PAGE_USE_HIDDEN|PAGE_USE_CAMERA), index)
                    
                    

                    Hi

                    1 Reply Last reply Reply Quote 0
                    • J Offline
                      Jim
                      last edited by 24 May 2009, 15:35

                      View.write_image

                      From my tests, write_image will accept several common image formats - .jpg, .bmp, .png at least. There is no mention of this in the docu. Just include the extension in the filename - as in "path/to/my_image.png"

                      If you do not provide the optional width or height, the image uses the View Size for the written image.

                      write_image returns true on success or false on failure, not nil (from my experience.)

                      Hi

                      1 Reply Last reply Reply Quote 0
                      • T Offline
                        thomthom
                        last edited by 24 May 2009, 20:57

                        Entities.add_arc
                        http://code.google.com/apis/sketchup/docs/ourdoc/entities.html#add_arc

                        @unknownuser said:

                        Returns:
                        arccurve
                        an ArcCurve object if successful

                        It returns an array of edges instead.

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

                        1 Reply Last reply Reply Quote 0
                        • A Offline
                          avariant
                          last edited by 25 May 2009, 22:35

                          PolygonMesh.uv_at

                          Arguments;  
                          index    The index for the texture coordinate.
                          

                          Doesn't include the second argument, which is true for front face coordinates, false for back face.

                          PolygonMesh.uvs
                          Doesn't include the required argument, true for front face coordinates, false for back face.

                          1 Reply Last reply Reply Quote 0
                          • T Offline
                            thomthom
                            last edited by 26 May 2009, 06:26

                            Camera.set
                            http://code.google.com/apis/sketchup/docs/ourdoc/camera.html#set

                            @unknownuser said:

                            The initialize method is deprecated. It essentially does the same thing as Camera.set.

                            Camera.set does what Camera.set does? ... "Spider Pig! Spider Pig! Does whatever piderpigs does."

                            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
                              thomthom
                              last edited by 26 May 2009, 17:34

                              View.pickray
                              http://code.google.com/apis/sketchup/docs/ourdoc/view.html#pickray

                              @unknownuser said:

                              The pickray method is used to retrieve a ray passing through a given screen position in the viewing direction.

                              Returns:
                              ray
                              a ray

                              The "ray" is a Line; Array [Point3D, Vector3D] and the Point3D is the camera.eye.

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

                              1 Reply Last reply Reply Quote 0
                              • C Offline
                                Chris Fullmer
                                last edited by 26 May 2009, 18:24

                                I hope Scott stops by soon. He's got a lot of stuff here to pick up πŸ˜„

                                Chris

                                Lately you've been tan, suspicious for the winter.
                                All my Plugins I've written

                                1 Reply Last reply Reply Quote 0
                                • T Offline
                                  thomthom
                                  last edited by 26 May 2009, 18:26

                                  Looking back at this thread I can trail the subjects I was looking into while making plugins. Like breadcrumbs. πŸ˜„

                                  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
                                    TIG Moderator
                                    last edited by 28 May 2009, 14:43

                                    UI.menu lists the valid menus titles, one is 'Create' isn't it 'Draw' ?

                                    TIG

                                    1 Reply Last reply Reply Quote 0
                                    • R Offline
                                      RunnerPack
                                      last edited by 28 May 2009, 22:29

                                      @unknownuser said:

                                      Point3d.offset (http://code.google.com/apis/sketchup/docs/ourdoc/point3d.html#offset ) Description of the length parameter:

                                      (optional) the distance to offset. If not provided, the offset is my a distance equal to the vector length.

                                      Suggestion:

                                      The (optional) offset distance. If not provided, the point is offset a distance equal to the vector's length.

                                      You might have noticed... I'm a bit of a ferpectionist.

                                      1 Reply Last reply Reply Quote 0
                                      • T Offline
                                        thomthom
                                        last edited by 29 May 2009, 09:01

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

                                        @unknownuser said:

                                        The mesh method creates a polygon mesh that represents the face. See the PolygonMesh class for more information.

                                        Valid flags are:

                                        * 0: Include PolygonMeshPoints,
                                        * 1: Include PolygonMeshUVQFront,
                                        * 2: Include PolygonMeshUVQBack,
                                        * 4: Include PolygonMeshNormals.
                                        

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

                                        The example uses 7. Typo or undocumented feature?

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

                                        1 Reply Last reply Reply Quote 0
                                        • A Offline
                                          avariant
                                          last edited by 29 May 2009, 14:47

                                          @thomthom said:

                                          The example uses 7. Typo or undocumented feature?

                                          You can bit-wise OR the options together. 7 means 4 + 2 + 1, so normals, front UV, and back UV.

                                          1 Reply Last reply Reply Quote 0
                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 5
                                          • 6
                                          • 7
                                          • 8
                                          • 18
                                          • 19
                                          • 6 / 19
                                          6 / 19
                                          • First post
                                            114/370
                                            Last post
                                          Buy SketchPlus
                                          Buy SUbD
                                          Buy WrapR
                                          Buy eBook
                                          Buy Modelur
                                          Buy Vertex Tools
                                          Buy SketchCuisine
                                          Buy FormFonts

                                          Advertisement