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

    MSPhysics 1.0.3 (16 October 2017)

    Scheduled Pinned Locked Moved Plugins
    926 Posts 171 Posters 883.1k Views 172 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.
    • S Offline
      SynSuka3D
      last edited by

      @Anton_S
      @body.set_omega([Internal body axis , 0, axes in global space]) ???

      ex:
      *onStart{
      @body = simulation.find_body_by_name('body')
      }

      onUpdate{
      r_body = @body.get_matrix

      ax = Geom::Vector3d.new([key('up'), 0, 0]).transform(r_body)

      @body.set_omega([ax.x, 0, key('right')])
      }*

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

        Platform: Sketchup 2017 on Mac 64 bit

        Anton,
        Got the update, (Thank you) I have not gone thru all the settings as of yet. But so far it appears to working as expected. Ill let you know as soon as I can get thru all the settings THANKS! -S

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

          SynSuka3d, like I said, you should reference the scripting documentation to see what each function does: http://www.rubydoc.info/github/AntonSynytsia/MSPhysics/MSPhysics/Body#set_omega-instance_method

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

            my project

            https://media.giphy.com/media/l3q2Ugf90Umd7h2Ss/giphy.gif

            1 Reply Last reply Reply Quote 0
            • F Offline
              faust07
              last edited by

              A little question regarding Export Replay to SkIndigo: The batch rendering doesn't save the frames complete rendered after the set Halt time but at the point of the last image update during the render process. This point can be minutes before the desired render time per frame. Is it an exporter question or should I ask in the Indigo forum?

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

                @Faust, I don't know. I need to look deeper into that.

                1 Reply Last reply Reply Quote 0
                • luckyvacL Offline
                  luckyvac
                  last edited by

                  HI,

                  Here is the robot hand with 22 servo.

                  Best regards

                  luckyvac


                  main gauche MOV 04.skp

                  1 Reply Last reply Reply Quote 0
                  • F Offline
                    faust07
                    last edited by

                    OK, thank you.
                    Have tested MSPhysics "Export Replay to Images" with the new SketchUp Make 2017 M2 (windows 7) and got a similar result as with M1 (windows 10) as mentioned in an older question.
                    The example is a GIF of exported frames with an original resolution 1920x1080.


                    all frames with grey parts

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

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

                        @faust07 said:

                        Unfortunately, changing the Update Rate from 1 to 3 is not useful when camera, joints, emitter, etc. are based on scripts that use the OnUpdate function. Programmed objects become 3 times faster. The appearance of emitted objects no longer fits to the image rate. The weight of the emitted objects or the lifetime seems to change.
                        For the joints based on pivot points, an option independent of the Update Rate in the user interface seems to be useful for fixing at the pivot point. If this is possible...

                        The "update rate" option controls the amount of times the simulation is to be updated per frame.
                        An update rate of 3, for example, tells the newton world to update 3 times a frame.
                        Now, to answer your question, the behavior of onUpdate event was changed in 0.9.9; instead of being called one time every frame, it was changed to be called every time the world is updated. Thus, it is updates "update rate" times every frame. To fix your problem, use onTick event instead of onUpdate. It is triggered only once every frame. See this link for all the events: http://www.rubydoc.info/github/AntonSynytsia/MSPhysics/master/MSPhysics/BodyContext

                        @faust07 said:

                        OK, thank you.
                        Have tested MSPhysics "Export Replay to Images" with the new SketchUp Make 2017 M2 (windows 7) and got a similar result as with M1 (windows 10) as mentioned in an older question.
                        The example is a GIF of exported frames with an original resolution 1920x1080.

                        The "Export Replay to Images" uses SketchUp's view.write_image function to export view into a 2d graphic. I don't think I have control over how the image is exported. Perhaps it's a SketchUp related bug. Or, since it also doesn't render fully with Indigo, it could be your hardware, not having enough memory/processing power (not much of an expert in this), to export a full image. Try exporting replay of a simple model, with only a few geometric objects, with resolution set to 1920x1080, and see if it exports properly.

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

                          @faust07 said:

                          Should make my question more precise:
                          The reason for the loose behaviour of the joints is the update rate in MSPhysics UI - Simulation - Update Rate = 1 (seems the best for my large model).
                          If I change this from 1 to 3, the servos remain more stable in the pivot but the spring no longer brings the steady up and down movement.
                          Have now tried to modify all settings at the Spring Joint, but do not get the desired result.
                          What can I do?
                          Thank you in advance, Anton!

                          I will fix that improper behavior of a spring joint.

                          Edit: Actually the spring joint works as expected. It was the oscillator function not considering the update rate. I will change the oscillator function to multiply by elapsed time (in seconds), rather than frame, which are two different things.

                          Edit2: Here is the new oscillator function: You can edit the MSPhysics/common_context.rb and replace the last method with this new one:

                          # Get oscillated value of a sine curve.
                          # @param [Numeric] frequency Number of sine periods per second.
                          # @return [Numeric] A value ranging between -1.0 and 1.0.
                          def oscillator(frequency)
                            inc = frequency * 2 * Math;;PI
                            Math.sin(inc * MSPhysics;;Simulation.instance.world.time)
                          end
                          

                          Note that you will have to retweak the oscillation frequencies for your birdy.

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

                            @luckyvac said:

                            HI,

                            Here is the robot hand with 22 servo.

                            Best regards

                            luckyvac

                            Luckyvac, this arm is very unstable with MSPhysics. This could be tweaked to be a bit more stable, but it won't be suitable to play a guitar. A programmers approach to creating a guitar would be to fake the arm and finger movements with animation rather than using the actual simulation. But that, then requires a lot of time. What I suggest you do, is look for a different software online, that emulates arm movements and guitar sounds. I'm positive that such software exits.

                            1 Reply Last reply Reply Quote 0
                            • F Offline
                              faust07
                              last edited by

                              Thanks, Anton for the explanations.
                              The Indigo renderer update/halt time difference seems not to be a MSP or hardware problem. I've tested it with different model sizes on different machines. I'll try to ask this in the Indigo forum. In the SkIndigo Render Settings one can set the halt time a few seconds longer than the before tested update time and all is fine.

                              The incomplete results of the view.write_image function in SketchUp 2017 I will report in the SketchUp Community Forum.

                              I hope my problems with Servos I can demonstrate in the following examples more dramatically. A mode to hold connected objects in the pivot position would be fine.

                              The tests with the Update Rate I did only to improve that. No need to change the oscillator script. For non real time simulations (large models with much MSP-objects) the oscillators based on frames are better than based on world time. (on the end the film with 30 frames per second brings the "real time" feeling).


                              ServoTest_07.gif


                              Servo-Test_06s_0107.png


                              Servo-Test_06s.skp

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

                                Final base

                                Link Preview Image
                                3D Warehouse

                                3D Warehouse is a website of searchable, pre-made 3D models that works seamlessly with SketchUp.

                                favicon

                                (3dwarehouse.sketchup.com)

                                1 Reply Last reply Reply Quote 0
                                • F Offline
                                  faust07
                                  last edited by

                                  Another problem with a servo and a non-collision object. After the fall of the candle a strange behavior of the flame arises. Collision, gravitation, etc. do not seem to be completely canceled. The joint oscillates in high frequency, which can even lead to a crash. What can I do?


                                  ServoTest_08.gif


                                  Noncollision-Test_02.skp

                                  1 Reply Last reply Reply Quote 0
                                  • luckyvacL Offline
                                    luckyvac
                                    last edited by

                                    Hi Anton,
                                    Thank you for your reply. Since I am French I do not speak English well.

                                    I did not understand everything ... the hand is unstable ?

                                    https://www.youtube.com/watch?v=uJerEEx-btw
                                    funny ? 😉

                                    I do not find 😄 She works well my hand 😉. I like sketchup + msphysic because I understand what I do. Other software is too complicated for me. You will have time for: "The table with angles and times must be converted to a Ruby Hash".

                                    At the moment I try this function of time:


                                    ft = 9,75 -7,91cos(6,28world.time) -0,88cos(18,84world.time)
                                    -0,32cos(31,4world.time) -0,16cos(43,96world.time) -5,27sin(3,14world.time)


                                    Here is the Fourier series that works 😄 youpi !
                                    -9.75+7.91Math.cos(6.28world.time)+0.88Math.cos(18.84world.time)+0.32Math.cos(31.4world.time)+0.16Math.cos(43.96world.time)+5.27Math.sin(3.14world.time)


                                    it does not work. What to do? thank you

                                    Thank you very much, Best regards.
                                    luckyvac

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

                                      @faust07 said:

                                      Another problem with a servo and a non-collision object. After the fall of the candle a strange behavior of the flame arises. Collision, gravitation, etc. do not seem to be completely canceled. The joint oscillates in high frequency, which can even lead to a crash. What can I do?

                                      Poorly connected the groups together. I added "Ball and Socket" joint in a new group, and a new "Up vector" to green axis. This disables the rotation.

                                      Try it now: Test_03.skp

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

                                        Hello, luckyvac,

                                        I added a small script to your guitar to play the sound and control arm/wrist movements based on the table of values you provided in your earlier post. It turns out, it works very well! Great job with getting those angle values! It must have taken you a lot of time. You can download your attached model below.

                                        When I said the hand was too unstable, I meant the MSPhysics version of a hand, not the real one. I apologize if you misunderstood and took it as an offence. In MSPhysics, a hand with 22 servos will not work well. It will be very unstable. Your guitar, however, requires only two servos; one for the arm and the other for the wrist - and it is very stable. So anyway, download the model below and see how it goes. Later, we could create an emulator that would play the real midi notes for the Blowin in the Wind song.

                                        Regards,
                                        Anton


                                        1-2-3456et men articulation MSPhysics.skp

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

                                          Hi,
                                          I have a problem with gears using MSphysics. Is there any way how to fix it?

                                          1 Reply Last reply Reply Quote 0
                                          • F Offline
                                            faust07
                                            last edited by

                                            Thanks, Istvan. Now it works like desired. Much joints for a little candlelight...

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 26
                                            • 27
                                            • 28
                                            • 29
                                            • 30
                                            • 46
                                            • 47
                                            • 28 / 47
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement