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

    [Plugin] JointSU (in drafting)

    Scheduled Pinned Locked Moved Plugins
    12 Posts 8 Posters 13.1k Views 8 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.
    • M Offline
      MarcioAB
      last edited by

      This is a draft plugin to handle JOINTS in SketchUP components.

      [flash=425,344:3v9k7zws]http://www.youtube.com/v/VQrZSiRBVeY[/flash:3v9k7zws]

      Add some "joints" (see below how) in standard components to make then "joint-enabled" and:

      1. Select 1st "joint-enabled" component.
      2. Select 2nd "joint-enabled" component.
      3. Shift-click in one of them. This one will remain fix and the other will align Joint-Joint.

      To make any component "joint-enabled", just include one or more joint-components ("JointSU") in it.

      Use the menu to create the "JointSU" component or create one by yourself.
      Nothing special with this component. Just the name that must be "JointSU". The transformations use the default axis of the component. The proposed geometry has 2 faces to easy positioning.

      obs:

      1: If the "joint-enabled" component has more than one joint, click the component to select the next joint.
      2: After the move, click on any component to rotate the moved component 90 degress in X or Shift-click to rotate it 90 degrees in Z.
      3. Menu Plugins/JointSU:
      3.1 - Create the JointSU component ("Create JointSU component")
      3.2 - Hide/Unhide the joints ("Hide all JointSU" or "Visible all JointSU")

      JointSU.zip

      Comments and suggestions are welcome.

      Regards
      Marcio

      1 Reply Last reply Reply Quote 0
      • B Offline
        bianhai
        last edited by

        Very good! 👍

        1 Reply Last reply Reply Quote 0
        • Y Offline
          yannleo
          last edited by

          The ideal of using component as a "joint" to line up objects is promising.
          I tried.Amazing! not easy to control the orientation up to now.

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

            @yannleo said:

            not easy to control the orientation up to now.

            Yes. That's why the proposed "JointSU" now has the shape below:

            Image1.pngWith these 3 planes, it's easier to use the tool to position the joints. I also included a panel to define the size of the JointSU.

            @yannleo said:

            The ideal of using component as a "joint" to line up objects is promising.

            Yes. The idea is to create an "hierarchical component browser" to view/handle how components/joints are structured. Working on that ...

            Regards
            Marcio

            1 Reply Last reply Reply Quote 0
            • Y Offline
              yannleo
              last edited by

              it's a convincing plugin by any means.i'll try using triangle "joint" like you did. This plugin is a little similar to the alignment tool in 3ds max but more useful.it's good starting.Thanks for your wonderful staff!

              1 Reply Last reply Reply Quote 0
              • D Offline
                DanCharron
                last edited by

                Very neat Plugin. I was trying to create my own, but your implementation is better. The only thing I have to do now is learn Portugese to interpret some the Ruby script comments. Please keep us informed if you upgrade it.

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

                  Thank you.

                  1. The comments for now are in Portuguese, but I will translate them to bad-English (the most spoken language in the world!) as soon as I have a less draft-code version.

                  2. The idea to publish an early-draft was to get some inputs/suggestions on how a Joints-oriented modeling should be (but the draft-code is now so messed up that I can not even upload the improvements made since this early draft).

                  3. These JointSU must work 100% in companion with the Model Structure ( or OUTLINER ... strange name for something so important ). Working on that now.

                  4. Two things are blocking me to advance these days: (1) my full time job and (2) I can not find a way to OPEN a component. The Sketchup::Model.open method is there but it's private (and not public). Example:

                  p Sketchup.active_model.open
                  Error; #<NoMethodError; private method `open' called for #<Sketchup;;Model;0x4a28e70>>
                  

                  Any help on that will be very welcome.

                  Regards
                  Marcio

                  1 Reply Last reply Reply Quote 0
                  • R Offline
                    Ross Macintosh
                    last edited by

                    Thanks Marcio for developing this plugin. Looks to have great potential. I wonder if it might work to have some form of 'dynamic component' joints that could do things like rotate the jointed pieces after the assembly using the little dynamic component 'finger'.

                    Regards, Ross

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

                      In most of the cases developers declare their methods being private, there is a good reason for that. But you can try for your own whether this method does what you want by using send:

                      Sketchup.active_model.send ;open
                      

                      With Sketchup 6 the result is:

                      Sketchup.active_model.send ;open
                      Error; #<ArgumentError; (eval);1619;in `initialize'; wrong number of arguments (0 for 1)>
                      (eval);1619
                      

                      OK, the methods needs an argument. I tried with a path:

                      Sketchup.active_model.send ;open, "C;/bla.skp"
                      #<File;C;/bla.skp>
                      

                      azuby

                      *error initus :: Blocks | CurrentDate | d/Code | extensionmanager | FFlipper | HideEdges | MeasuredArea | ModelHistory | PluginsHelp | PronButton | SAWSO | SCP | SU²CATT

                      Bad English? PM me, correct me. :smile:**

                      1 Reply Last reply Reply Quote 0
                      • Y Offline
                        Yanman
                        last edited by

                        Wow Very good

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

                          Virtual LEGO building! 😄

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

                            Finally I have version 1.0

                            Now it's highly dependent of the product structure (or OUTLINER), but seems to work well ... I will post it in a NEW thread. Enjoy and lets see how to improve this ...

                            Regards
                            Marcio

                            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