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

      Can you post a quick example?

      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

        Ah! That's what I tried. Using a normal Array as substitute of Point3D. How odd that this method suddenly don't let you interchange arrays and Point3Ds... πŸ˜•

        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
          cjthompson
          last edited by

          now I see why it doesn't work with arrays:

          
          mesh = Geom;;PolygonMesh.new
          mesh.add_point([0,0,0])
          mesh.add_point([1,0,0])
          mesh.add_point([1,1,0])
          mesh.add_point([0,1,0])
          mesh.add_polygon([1,2,3,4])
          Sketchup.active_model.entities.add_faces_from_mesh(mesh)
          
          

          you can use an array to index the points directly (for some reason, starting at 1)!

          Can you test whether this is faster than point_at?

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

            I will see over the weekend. I found some slowness by having to use .add_point and then later use .point_index to build the polygons. building my own hash of Point3Ds and the index I got from add_point was faster.

            Hopefully adding points in the add_polygon methods directly will be faster.

            Oh yea - the index start at 1 is annoying as well.

            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
              cjthompson
              last edited by

              I think I found what your problem is.

              This works:

              
              mesh = Geom;;PolygonMesh.new
              mesh.add_polygon(Geom;;Point3d.new(0,0,0),Geom;;Point3d.new(1,0,0),Geom;;Point3d.new(1,1,0),Geom;;Point3d.new(0,1,0))
              Sketchup.active_model.entities.add_faces_from_mesh(mesh)
              
              

              This doesn't:

              
              mesh = Geom;;PolygonMesh.new
              mesh.add_polygon([0,0,0],[1,0,0],[1,1,0],[0,1,0])
              Sketchup.active_model.entities.add_faces_from_mesh(mesh)
              
              

              EDIT:
              You can put the arrays inside of another array to get it to work:

              
              mesh = Geom;;PolygonMesh.new
              mesh.add_polygon([[0,0,0],[1,0,0],[1,1,0],[0,1,0]]) #this works
              Sketchup.active_model.entities.add_faces_from_mesh(mesh)
              
              
              1 Reply Last reply Reply Quote 0
              • thomthomT Offline
                thomthom
                last edited by

                Using .add_points first and using index references for .add_polygon seems faster than using Point3d's.

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

                1 Reply Last reply Reply Quote 0
                • RichMorinR Offline
                  RichMorin
                  last edited by

                  General

                  Class and method names could be turned into links
                  to the appropriate API page, for ease of navigation.

                  Sentences should begin with a capital letter and end with
                  a period (etc). Phrases should not.

                  If a modifying phrase is used at the end of a sentence,
                  a comma should be added for clarity:

                  
                    the name of the attribute dictionary  if successful
                                              dictionary,
                  
                  

                  Specific

                  http://code.google.com/apis/sketchup/docs/ourdoc/animation.html

                  
                  animation -> animation
                  ruby      -> Ruby
                  
                  ... to pause, only certain ...
                         pause;
                  
                  

                  http://code.google.com/apis/sketchup/docs/ourdoc/appobserver.html

                  
                  ... a 2nd    model ...
                        second
                  
                  Useful for if you need ...
                  ---
                  This is useful if you need ...
                  
                  

                  http://code.google.com/apis/sketchup/docs/ourdoc/array.html

                  
                  The SketchUp Array class adds ...
                  ---
                  SketchUp adds ...
                  
                  Specifically, it contains methods ...
                  ---
                  Specifically, it adds methods ...
                  
                  ... arrays of 3     coordinate ...
                                three
                  
                  ... vector. it returns ...
                              It
                  
                  

                  http://code.google.com/apis/sketchup/docs/ourdoc/attributedictionaries.html

                  
                  ... all of the attributes dictionaries.
                                 attribute
                  
                  

                  http://code.google.com/apis/sketchup/docs/ourdoc/attributedictionary.html

                  Although the page does not discuss this, setting a
                  custom attribute with a key that contains upper-case
                  letters does not work.

                  The page does not indicate how to set an attribute
                  (eg, '=LenX+20') to be used as an expression.

                  In the entry for AttributeDictionary.each, the "value"
                  argument is being formatted as part of the description
                  for the "key" argument.

                  Ditto for AttributeDictionary.each_pair.

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

                    On the API docs pages, in the left nav column, whenever you have made a link bold, the cursor changes to a caret instead of the hand cursor. I suspect it's the <b> and </b> tags doing this.
                    example from the API HTML source:

                    <li><a href="/apis/..../model.html"><b>Model</b></a></li>
                    

                    Perhaps if the bold tags were outside the anchor tags?

                    <li><b><a href="/apis/..../model.html">Model</a></b></li>
                    

                    If the css specifically set a tags such: a {cursor:hand} the nested bold tags should inherit their parent's cursor setting (according to the css reference.)

                    I'm not here much anymore.

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

                      The bold tag should not interfere with the cursor regardless if it's inside or outside the link element. It's default cursor property is inherit. It's either some override or other quirk. Could be a browser quirk.
                      In FF3.5 I don't see this behaviour. What browser do you use?

                      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:

                        In FF3.5 I don't see this behaviour. What browser do you use?

                        Currently still using MSIE 7

                        P.S.: at MSDN it indicates if the cursor is not explicitly set, the browser decides; so it may indeed be a MSIE quirk. (I have MSIE 8 and FF on the computer in another room, I'll check and see how the site looks on that machine later today.)

                        I'm not here much anymore.

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

                          @dan rathbun said:

                          Currently still using MSIE 7

                          Tried with IE8 - cursor is normal.

                          @dan rathbun said:

                          so it may indeed be a MSIE quirk.

                          It certainly wouldn't surprise me!

                          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

                            @dan rathbun said:

                            Point3d.<
                            http://code.google.com/apis/sketchup/docs/ourdoc/point3d.html#%3C

                            @unknownuser said:

                            Returns:
                            true if the point2 is closer to the origin.

                            Following the example, I get he opposite result.
                            The Returns: should probably read,
                            " *true* if the point2 is **farther** from the origin; *false* if the point2 is closer to the origin (than the receiver.)

                            And the anchor link http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/point3d.html#%3C doesn't work for me under FF3.5. Might be due to the < character.

                            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:

                              And the anchor link http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/point3d.html#%3C doesn't work for me under FF3.5. Might be due to the < character.

                              I suggest the Google webmeister change the anchor to "#lessthan" instead of "#%3C".

                              I would suspect that links to - and + methods may have problems with some browsers as well.

                              I'm not here much anymore.

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

                                The id for the anchor is invalid.

                                The correct format is:
                                http://www.w3.org/TR/html4/types.html#type-name

                                @unknownuser said:

                                ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods (".").

                                There are a number of other HTML errors as well. They use a XHTML doctype, but empty elements is not closed with />. Looks like HTML is used - despite the doctype.

                                The HTTP header claims characterset ISO-8859-1 while the META tag claims UTF-8

                                Characters isn't escaped properly, such as the < character in the method list. (line 342)

                                Run it through the validator and see 67 errors. http://validator.w3.org/check?uri=http%3A%2F%2Fcode.google.com%2Fintl%2Fnb%2Fapis%2Fsketchup%2Fdocs%2Fourdoc%2Fpoint3d.html&charset=%28detect+automatically%29&doctype=Inline&ss=1&group=0&user-agent=W3C_Validator%2F1.654#line-342

                                No wonder things isn't always working when there's so much invalid markup.

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

                                1 Reply Last reply Reply Quote 0
                                • scottliningerS Offline
                                  scottlininger
                                  last edited by

                                  Thanks for all the feedback, Dan! Keep 'em coming.

                                  • Scott Lininger
                                    SketchUp Software Engineer
                                    Have you visited the Ruby API Docs?
                                  1 Reply Last reply Reply Quote 0
                                  • thomthomT Offline
                                    thomthom
                                    last edited by

                                    @unknownuser said:

                                    Thanks for all the feedback, Dan! Keep 'em coming.

                                    How is your to-do list compared to Santa's list? πŸ˜†

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

                                    1 Reply Last reply Reply Quote 0
                                    • scottliningerS Offline
                                      scottlininger
                                      last edited by

                                      Santa's got nothing on me. πŸ˜‰

                                      • Scott Lininger
                                        SketchUp Software Engineer
                                        Have you visited the Ruby API Docs?
                                      1 Reply Last reply Reply Quote 0
                                      • thomthomT Offline
                                        thomthom
                                        last edited by

                                        Edge.reversed_in?
                                        http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/edge.html#reversed_in?

                                        Why is the example using a begin rescue structure? Does it on occasion cause errors?

                                        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

                                          The class Sketchup::HLR is undocumented in the API.

                                          It's an Entity subclass.
                                          It inherits all the Entity baseclass methods, and adds 2 of it's own:

                                          • .calculate* .num_faces

                                          If you create a HLR object at the console, and call .parent (when it has no parent) a BUG SPLAT! results. See post: http://forums.sketchucation.com/viewtopic.php?f=11&t=24740#p212101

                                          What is this class HLR used for? (.. as there is no .add_HLR method for the Entities collection object.)

                                          I'm not here much anymore.

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

                                            Tool.getExtents
                                            http://code.google.com/apis/sketchup/docs/ourdoc/tool.html#getExtents

                                            The example given isn't a good one. From my observations, clipping occurs only when you draw outside the model boundary. So returning model.bounds is pointless.

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

                                            Advertisement