sketchucation logo sketchucation
    • Login
    โ„น๏ธ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    [Plugin] xLine2Line

    Scheduled Pinned Locked Moved Plugins
    19 Posts 12 Posters 19.0k Views 12 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.
    • pilouP Offline
      pilou
      last edited by

      xLIne2Line
      Don't work for these guides lines ๐Ÿ˜ฎ
      dont_work.png

      Frenchy Pilou
      Is beautiful that please without concept!
      My Little site :)

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

        @unknownuser said:

        xLIne2Line
        Don't work for these guides lines ๐Ÿ˜ฎ
        [attachment=0:2ggms2o7]<!-- ia0 -->dont_work.png<!-- ia0 -->[/attachment:2ggms2o7]

        That's because they are not clines - they are cpoints! - note the point on the start position...
        Replace them with clines to see the difference...

        TIG

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

          This plugin, as well as the original xLine processes the entire selection in its context handler.

          
          def xLine2Line_validate_selection
          	Sketchup.active_model.selection.each {|e| return true if e.class == Sketchup;;ConstructionLine}
          	return nil
          end
          
          

          This can lead to severe lag on large selection sets. As I mentioned in my thread about the topic, http://forums.sketchucation.com/viewtopic.php?f=180&t=31788 , I am currently looking for best practice methods to provide context menus for the selection. At the moment I'm adding a limit to how large selections I process - if the selection is larger than 1000 I assume there is something in the selection of interest.

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

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

            @thomthom said:

            This plugin, as well as teh original xLine processes the entire selection in its context handler.

            
            > def xLine2Line_validate_selection
            > 	Sketchup.active_model.selection.each {|e| return true if e.class == Sketchup;;ConstructionLine}
            > 	return nil
            > end
            > 
            

            This can lead to severe lag on large selection sets. As I mentioned in my thread about the topic, http://forums.sketchucation.com/viewtopic.php?f=180&t=31788 , I am currently looking for best practice methods to provide context menus for the selection. At the moment I'm adding a limit to how large selections I process - if the selection is larger than 1000 I assume there is something in the selection of interest.

            It breaks once it finds something matching so on average it'll only iterate half of the selection ?
            If you want to 'extract' something from a selection then what other may is there but sift through it ?
            Would selection.to_a be quicker ?

            TIG

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

              @tig said:

              It breaks once it finds something matching so on average it'll only iterate half of the selection ?

              Or it could be last in the stack...

              @tig said:

              Would selection.to_a be quicker ?

              No.

              The whole issue is that when you have a large selection 100K+ processing every entity is going to give a performance hit. One plugin add some lag, and when you combine all plugins installed you have many second lag before the context menu appear.

              What I do at the moment, is that if there is more than 1000 entities I just assume there is something of interest in the selection and show the menu item. Then make sure the method that processes the selection filters out the entities of interest. It's better that the processing method does the work rather than the context handler.

              I timed the lag I had with the plugins installed to 5-10 second for a particular selection of 100K. For larger meshes the times just got silly. Once I modified the various plugins or disabled them I got it down to a few milliseconds.

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

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

                So if you just add the context-item without a selection search pre-check it's much quicker but the menu list gets stupidly long !

                TIG

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

                  Yea - that's the downside with that. So I'm still looking for a better solution. I'm currently wondering if such menu items is not fit for a context menu.
                  The drawback of slowing down the menu is too big. Ideally, context menus should be optional. (Though I have a few plugins myself where they are not optional - simply because they where made to just do a specific job and adding UI to make it an option is an hazzle.)

                  But I'd like an conversation to this topic, because processing the whole selection simply becomes to expensive when you add it all up.

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

                    Is there a Plugin that converts infinitely long Clines into Lines on a selected face only (so that it automatically deletes the clines past the face's bounding edges and leaves lines within the selected face only). I would like to select a face or the bounding edges, execute the plug-in and have a face with lines on it and all the clines gone.

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

                      No, this one here makes all clines into edges unless they are infinite rays or clines...
                      You could take the code and rework it to do the calculation to project the 4 planes through the sides of the screen and the camera and intersect those with the cline to get the extents and draw a new line between those and erase the cline... ๐Ÿค“

                      TIG

                      1 Reply Last reply Reply Quote 0
                      • A Offline
                        A24ron
                        last edited by

                        freakin awesome thanks.

                        1 Reply Last reply Reply Quote 0
                        • S Offline
                          show32167
                          last edited by

                          thx tig

                          1 Reply Last reply Reply Quote 0
                          • A Offline
                            Amazing Artist
                            last edited by

                            THX TIG

                            [color=#FF40FF:20ov4k9m]T[/color:20ov4k9m][color=#FF40F9:20ov4k9m]h[/color:20ov4k9m][color=#FF40F2:20ov4k9m]a[/color:20ov4k9m][color=#FF40EC:20ov4k9m]t[/color:20ov4k9m][color=#FF40E5:20ov4k9m]'[/color:20ov4k9m][color=#FF40DF:20ov4k9m]s[/color:20ov4k9m] [color=#FF40D2:20ov4k9m]m[/color:20ov4k9m][color=#FF40CC:20ov4k9m]y[/color:20ov4k9m] [color=#FF40BF:20ov4k9m]s[/color:20ov4k9m][color=#F940B9:20ov4k9m]t[/color:20ov4k9m][color=#F240B2:20ov4k9m]o[/color:20ov4k9m][color=#EC40AC:20ov4k9m]r[/color:20ov4k9m][color=#E540A6:20ov4k9m]y[/color:20ov4k9m][color=#DF40A0:20ov4k9m],[/color:20ov4k9m] [color=#D24093:20ov4k9m]a[/color:20ov4k9m][color=#CC408D:20ov4k9m]n[/color:20ov4k9m][color=#C54086:20ov4k9m]d[/color:20ov4k9m] [color=#C53A7A:20ov4k9m]I[/color:20ov4k9m][color=#CC3373:20ov4k9m]'[/color:20ov4k9m][color=#D22D6D:20ov4k9m]m[/color:20ov4k9m] [color=#DF2060:20ov4k9m]s[/color:20ov4k9m][color=#E51A5A:20ov4k9m]t[/color:20ov4k9m][color=#EC1353:20ov4k9m]i[/color:20ov4k9m][color=#F20D4D:20ov4k9m]c[/color:20ov4k9m][color=#F90646:20ov4k9m]k[/color:20ov4k9m][color=#FF0040:20ov4k9m]i[/color:20ov4k9m][color=#F9004D:20ov4k9m]n[/color:20ov4k9m][color=#F20059:20ov4k9m]g[/color:20ov4k9m] [color=#E50073:20ov4k9m]t[/color:20ov4k9m][color=#DF0080:20ov4k9m]o[/color:20ov4k9m] [color=#D20099:20ov4k9m]i[/color:20ov4k9m][color=#CC00A6:20ov4k9m]t[/color:20ov4k9m][color=#C500B2:20ov4k9m]![/color:20ov4k9m]

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

                            Advertisement