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

    [Plugin][$] Curviloft 2.0a - 31 Mar 24 (Loft & Skinning)

    Scheduled Pinned Locked Moved Plugins
    1.3k Posts 297 Posters 2.4m Views 296 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.
    • G Offline
      Gillman
      last edited by

      Thanks for putting together such a great tool. For the life of me, I couldn't generate a smooth curve to intergrate a jet engine intake into an aircraft fuselage. In a few seconds, your tool generated exactly the shape I wanted. I can't wait to experiment some more with it.

      1 Reply Last reply Reply Quote 0
      • jeff hammondJ Offline
        jeff hammond
        last edited by

        hi Fredo,

        so i had a chance to do some more experimenting and i've definitely found a way to accurately draw some of the things i've been trying for a couple of years now. 😄 (well, i haven't yet found the exact parameters etc. that will best work for my application but i have found a way to insure tangency throughout the blends.. what degree of continuity i'm not sure but i'll be taking some of this SU data into rhino for further info on that.. i do believe however that you could roll through these blends with some 55mm wheels and be just fine 😉 )

        the process involves a lot of manual drawing but i don't mind. my main concern has always been being able to draw it in the first place. i'll probably find some shortcuts as i further refine this method but there might be something of interest for you in your development of tangential control of splines or even your nurbs idea i've seen you mention a few times..

        i've made a 4x speed video showing the process i used for drawing the splines to generate the surface and then for editing the surface created by said splines. just in case it's not clear what i'm doing in the video, here's a quick rundown..

        basically, i create extensions from the surfaces i'd like to join then use those extensions to set the B-spline control points.. apparently, the Bspline is in fact tangent at the tip of the extension.

        i then create the surface with curviloft using these B-splines.. in the example, i then further extend my guides then edit the splines which changes curvature but maintains tangency.. this is very nurbs like behavior (well, at least to me it is 😄 ).. i couldn't figure out a way to edit multiple spline's control points at once but if that ability exists, please let me know..

        here's the skp from the video which still uses the same shape as the one i originally posted here -- though i have edited to curves to share the same amount of segments (loving the polyline segmentor for this !!)

        JH_curviloft3.skp

        [flash=660,405:35qw1lfi]http://www.youtube.com/v/8B0RXSW66no?fs=1&hl=en_US&rel=0&color1=0x2b405b&color2=0x6b8ab6&border=1[/flash:35qw1lfi]

        i also tried a similar technique on a 3 tube blend with surprising success.. the sides came out sweet and the tops (which i basically freehanded with F-splines) are almost there.. one more go at it and i'd have it.

        tubeblend_unfinished.jpg
        tubeblend.skp

        anyway, maybe there's something that might trigger a method in you but if not, don't sweat it.. i'm super hyped on these tools as is.. Thanks so much for writing these!

        dotdotdot

        1 Reply Last reply Reply Quote 0
        • fredo6F Offline
          fredo6
          last edited by

          Jeff,

          Looking at your video, I could suggest an alternate method which is already available in the current version of Curviloft.

          I am not sure this would produce your desired surface, but it allows adjusting the shape of the S-curves, while remaining tangential at the boundaries.

          This is illustrated in the video below.

          [flash=640,480:3gv84l7f]http://www.youtube.com/v/jVjwn8xzULI&hl[/flash:3gv84l7f]

          Here is the file where I applied the Bezier method
          JH_curviloft3 - Fredo.skp
          Fredo

          1 Reply Last reply Reply Quote 0
          • jeff hammondJ Offline
            jeff hammond
            last edited by

            [disclaimer- longwinded post coming up.. hope you all don't mind 😄]

            hey Fredo,

            i previously hoped the tension adjustments would do the trick but unfortunately, no.

            from the model you posted:

            *click pic for larger

            you can see one of the kinks created in that picture.. i should also add that i don't think lofting is really what i'm after.. especially when considering the example skp i've been posting is simplified in that the adjacent surfaces are flat when in actuality, they're often curved as well. i think it's more of a skinning feature i'm into.

            i should add though, from your video, all is looking good from the view you're showing until you click on the left section and make it one segment.. that's when the kink happens but for my purposes, i would have to have the ability to make that wall flat as you've done.. further in this post, i get more in to it but it seems like when that wall flattens, the adjacent one should adjust accordingly

            in the picture, notice the 'flatwall' and 'waterfall' labels.. the problem (well, not the problem with your plugin or anyone else's) i have with all the available surfacing plugins is that they do not consider what's happening with the adjacent surfaces.. they only pay attention to the outer rails/profiles of the 'patch'.. what i'm trying to do is fill in the waterfall section with a surface that maintains tangency to the flatwall throughout the blend (ie- every spline used throughout the blend is tangent to it's corresponding blend point).. i think one problem i have when discussing this is that i view the sketchup model as guidelines to a hidden structure.. here's the basic looking framing i do and it's this i see when looking at these models.. as in, i actually see each individual spline as these curved 2bys
            frame2.jpg
            frame1.jpg

            in those pictures, every row of ribs maintains tangency/curvature continuity throughout.. thing is, all the blends are radius based and i've been doing radii for 20 years 😄.. sort of getting bored with them not to mention they're somewhat limiting design wise..

            i'd like to get into more complex surfacing and that's the reason i've been learning rhino but when it comes down to it, i love sketchup and prefer it for a number of reasons over rhino.. what i can't really understand though is that seemingly most of rhino's horsepower is based around making these types of blends possible and accurate, but, nobody in the sketchup community that i've seen (and i mean nobody 😄 ) has ever voiced a desire to make these things happen within sketchup.. i often see people wishing for nurbsketchup but i haven't really figured out why because this is the type of stuff nurbs is good for..
            [but more likely than not, people do want this stuff in sketchup but i'm just bad at describing things so no one is ever like 'oh yeah, that would be sweet!" 😄]

            i made a couple of videos which i think are simplified to the point of me being able to describe this stuff visually instead of trying to type it into words..

            in the videos, the adjacent surfaces are flat planes and all of the curves are arcs.. the white surface represents the blend and the blue are the adjacent surfaces. (i'm using arcs and flat planes for this example because i think they're much easier to wrap your head around the geometry as opposed to the bezier curves into round walls that i'm hoping to represent)

            the first video is supposed to represent the actions of current sketchup surfacing capabilities. the 'patch' will be thrown in there regardless of what the blue surfaces' orientation is.. if the radius of the arc changes, it will bulge out or fold in regardless of if it maintains tangency or not..

            [flash=500,405:3opcdp0n]http://www.youtube.com/v/KqJ7EMkwCSk?fs=1&hl=en_US&rel=0&color1=0x2b405b&color2=0x6b8ab6&border=1[/flash:3opcdp0n]

            the second video shows the patch respecting the adjacent surfaces and always maintaining tangency regardless of the arc's radius.. tangency wise, this is more of the behavior i'm after..

            [flash=500,405:3opcdp0n]http://www.youtube.com/v/q4KCZWx9W5g?fs=1&hl=en_US&rel=0&color1=0x2b405b&color2=0x6b8ab6&border=1[/flash:3opcdp0n]

            since the examples are arcs and tangency is being maintained throughout, the flat planes must adjust in width in order to allow continuity.. basically, what i'm trying to accomplish, is to not allow the blue surface to change and place them in less accommodating positions.. positions where arcs no longer work and require a complex curve to create the blend while maintaining smoothness throughout the entire structure..

            with the example i gave in my previous post, that's pretty much what i've accomplished by drawing templates for the splines' control points using the adjacent surfaces.. those templates ensure the whole surface acts as one instead of dividing it up into multiple parts and each section freely moves with no restraint to the other sections..

            but hey, like i said in my previous post, I'm hyped!.. your bezier spline plugin makes it possible to do what i'm talking about here.. albeit, sort of a tedious process but that's a process that forces me to get into the meat of what i'm drawing and hopefully i'll learn a lot about the math behind those curves by drawing these types of blends curve by curve.. if i'm hoping for anything here, it's that i'll learn a lot about these types of blends at the root level and then, after a year or two of doing that, a plugin will be developed that automates much of it for me..

            dotdotdot

            1 Reply Last reply Reply Quote 0
            • fredo6F Offline
              fredo6
              last edited by

              Jeff,

              Thanks for this comprehensive explanation.

              Actually, I did cover the case in the initial version of Curviloft where I had 2 Bezier methods. The Method 2 was for using the contour planes to detremine tangency at boundaries of junction. I dropped it when introducing the Orthogonal methods.

              I will reinstate the method 2 in a next release. I should also try to make the orthogonal methods work properly in case of S-Curves.

              In the mean time here is the result of this Bezier method 2
              JHCurviloft3 - Fredo - Bezier Method 2.gif
              JH_curviloft3 - Fredo - Bezier method 2.skp

              Fredo

              PS: I can't make a new release of Curviloft immediately, as I am working on the Loft Along module. If you wish to test in the meanwhile, you can drop the two attached files in the CURVILOFT_Dir_10 folder
              CurviloftPalette.rb
              CurviloftSpline.rb

              1 Reply Last reply Reply Quote 0
              • charly2008C Offline
                charly2008
                last edited by

                Hi Fredo,

                I have found one small error. If I use a single edge, the ends are twisted. At the same profile as a face all is right.

                Charly


                Unbenannt.JPG

                He who makes no mistakes, makes nothing

                1 Reply Last reply Reply Quote 0
                • fredo6F Offline
                  fredo6
                  last edited by

                  @charly2008 said:

                  Hi Fredo,

                  I have found one small error. If I use a single edge, the ends are twisted. At the same profile as a face all is right.

                  Charly

                  Charly,

                  There are plenty of errors in Loft. I am currently trying to consolidate fixes for a next release. This one will be fixed, I hope.

                  Can you post the model.

                  Fredo

                  1 Reply Last reply Reply Quote 0
                  • charly2008C Offline
                    charly2008
                    last edited by

                    Hi Fredo,

                    I know that it is impossible to find any errors, but still it is a great tool. I admire you, which you can write so wonderful Ruby Scripts.

                    Charly

                    Image below: Curviloft and Shape Bender.


                    Curvi.skp


                    Curvi.jpg

                    He who makes no mistakes, makes nothing

                    1 Reply Last reply Reply Quote 0
                    • mariochaM Offline
                      mariocha
                      last edited by

                      @charly2008 said:

                      Hi Fredo,
                      I know that it is impossible to find any errors, ...

                      I guess you mean "impossible not to find any errors" 😄

                      %(#008000)[Mario C.
                      Every rule has exceptions, but some.]

                      1 Reply Last reply Reply Quote 0
                      • charly2008C Offline
                        charly2008
                        last edited by

                        Hi Mariocha,

                        I think both expressions are right. Now it's a mathematical Question. Theoretically, all bugs can be found. This would require all possible geometric cases are tried with the tool. The problem is to find all the possibilities and the time needed for it. Therefore, it is impossible not to find a bug. This problem is found with any software.

                        Charly

                        He who makes no mistakes, makes nothing

                        1 Reply Last reply Reply Quote 0
                        • jeff hammondJ Offline
                          jeff hammond
                          last edited by

                          wow Fredo, the method2 drawing looks excellent!
                          i'll give it a try myself a little later in the day.

                          dotdotdot

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

                            Mighty impressive stuff Fredo.
                            I hope you get some donations for this!

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

                            1 Reply Last reply Reply Quote 0
                            • jeff hammondJ Offline
                              jeff hammond
                              last edited by

                              @thomthom said:

                              Mighty impressive stuff Fredo.
                              I hope you get some donations for this!

                              agree!
                              Tools-> Fredo6 Collection-> Curviloft-> Donation...

                              hit it up boys and girls 💚

                              dotdotdot

                              1 Reply Last reply Reply Quote 0
                              • fredo6F Offline
                                fredo6
                                last edited by

                                @charly2008 said:

                                Hi Fredo,

                                I know that it is impossible to find any errors, but still it is a great tool. I admire you, which you can write so wonderful Ruby Scripts.

                                Charly

                                Image below: Curviloft and Shape Bender.

                                Thanks the model. Actually, I had fixed the error already in my own version.

                                Let me also tell you that your golden frises are quite nice looking. I am not sure I would be able to do the same myself with Curviloft!

                                Finally, I think it is in practiceimpossible to find all errors, but more surely, it impossible to fix them all.

                                Fredo

                                1 Reply Last reply Reply Quote 0
                                • jeff hammondJ Offline
                                  jeff hammond
                                  last edited by

                                  Fredo, i have to admit.. i'm beyond excited!!

                                  bezier method 2 is exactly what i was talking about.. very impressive! [which has me wondering.. how many other little ruby experiments do you have laying around on your hard drives 😄]
                                  please include that method in subsequent curviloft releases.

                                  dotdotdot

                                  1 Reply Last reply Reply Quote 0
                                  • mariochaM Offline
                                    mariocha
                                    last edited by

                                    @unknownuser said:

                                    J... If you wish to test in the meanwhile, you can drop the two attached files in the CURVILOFT_Dir_10 folder
                                    [attachment=1:35q6ko6g]<!-- ia1 -->CurviloftPalette.rb<!-- ia1 -->[/attachment:35q6ko6g]
                                    [attachment=0:35q6ko6g]<!-- ia0 -->CurviloftSpline.rb<!-- ia0 -->[/attachment:35q6ko6g]

                                    Some feedback; the "new" CurviLoftSpline.rb seems to go in an endless loop here. No result.
                                    Tried the previous one, works ok.

                                    %(#008000)[Mario C.
                                    Every rule has exceptions, but some.]

                                    1 Reply Last reply Reply Quote 0
                                    • jeff hammondJ Offline
                                      jeff hammond
                                      last edited by

                                      @mariocha said:

                                      Some feedback; the "new" CurviLoftSpline.rb seems to go in an endless loop here. No result.
                                      Tried the previous one, works ok.

                                      the newly added method is the one with the arrow pointing to it in this screenshot.. i dunno, i'm not experiencing any looping with it.. maybe upload a .skp showing the problem?

                                      screen 3.jpg

                                      dotdotdot

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

                                        Jeff, how do you dock Ruby toolbar buttons to the main toolbar in OSX SU? When I looked at it on my Mac I thought I only had the native buttons available...
                                        ❓

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

                                        1 Reply Last reply Reply Quote 0
                                        • jeff hammondJ Offline
                                          jeff hammond
                                          last edited by

                                          @thomthom said:

                                          Jeff, how do you dock Ruby toolbar buttons to the main toolbar in OSX SU? When I looked at it on my Mac I thought I only had the native buttons available...
                                          ❓

                                          right click on an empty space of the toolbar then choose 'customize toolbar'.. all of your icons will be available and can be placed up there individually.. (this goes for all osx apps btw)

                                          one thing to note when doing this in sketchup:
                                          when you quit sketchup, your custom toolbar will be saved however, when you relaunch, only the native google icons will be up there.. ⌘N (File-> New) will give you a new window and your custom layout with 3rd party plugin icons will appear..
                                          i think it's something to do with when the icons are initialized.. the google ones happen during launch prior to the window being shown whereas the plugins folder is accessed later during launch ?

                                          [edit - i should note as well that google's sandbox tools exhibit the same behavior at the 3rd party plugins so it's not as if they have a certain snip of code allowing them to be accessed earlier.. it's the standard google toolset, views, render style etc.. that will remain upon a fresh launch..

                                          also, if you want to remove icons from the toolbar during customization, just drag them off the toolbar and drop them anywhere else on screen.. they'll poof]

                                          edit2 - oh, here's a post from last year where i made a video showing the customization process:
                                          http://forums.sketchucation.com/viewtopic.php?p=162762#p162762

                                          dotdotdot

                                          1 Reply Last reply Reply Quote 0
                                          • mariochaM Offline
                                            mariocha
                                            last edited by

                                            And Jeff, deserve a THANKS.

                                            %(#008000)[Mario C.
                                            Every rule has exceptions, but some.]

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 12
                                            • 13
                                            • 14
                                            • 15
                                            • 16
                                            • 65
                                            • 66
                                            • 14 / 66
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement