SketchUcation Premium Membership

 

 

[Plugin] Joint Push Pull - v2.0b - 17 Jul 11

[Plugin] Joint Push Pull - v2.0b - 17 Jul 11

Postby fredo6 » Sat Feb 23, 2008 11:11 am


JointPushPull is a script that performs push pull on multiple faces in one operation. Unlike the native Sketchup push-pull tool, JPP can maintain the continuity of the offset surfaces (mode joint push pull). This is useful to thicken non-planar surfaces.
JPP also includes two additional modes: Vector and Normal working with multiple faces.
JPP_visual.jpg



JointPushPull – v2.0b - 17 Jul 11
JointPushPull - v2.0b - 17 Jul 11.zip



Tutorial Joint Push Pull - English - v1.1 - 20 Feb 08.pdf

  • Language: English, French, Spanish (Defisto), Italian (Defisto / COSEDIMARCO)
  • Menus: by default, it is installed in Tools > Join Push Pull. There is also a Joint Push Pull menu in the selection contextual menu when one or several faces are selected
  • Icon toolbar: Joint Push Pull (5 icons are available)
  • The plugin is free, for private and commercial usage.


1) Download and Open the archive
2) Select All (Ctrl A)
3) Extract into the Sketchup Plugin Directory
4) Answer YES to overwrite all existing former files, if any

The footprint in the SU Plugins Directory must be:
- jointpushpull.rb
- LibTraductor.rb (dated 10 Nov 10)
- JPP_Dir_17 folder
On Mac the SU plugin directory should be:
Macintosh HD/Library/Application Support/Google SketchUp 7/SketchUp/plugins

Note: once installed, you can safely delete the old JPP_Dir_xx folders

CAUTION: NEVER rename or move files from their folders. If you are unsure of your unzip operation, do it in a neutral folder and check that you reconstruct the right footprint. Then transfer the folders and files to the SU Plugin Directory.



  • Select one or several objects (faces, edges, groups or components). Only faces are taken into account.
  • Click on the icon of one tool, for instance Joint Push Pull
  • Pick a face and gently move the mouse to visualize the offset in wireframe. Keep SHIFT pressed to skip inferencing
  • You can type the offset value in the VCB (in model units)
  • Type TAB to access options (thickening, continuity parameter, etc…)
  • When OK with the parameters, Double-click or press Return to launch the calculation
  • The calculation cannot be interrupted. On large models, you may thus get a blank screen for the time the script is computing. Do not panic, just wait, it may take several minutes!

JPP also includes 2 additional buttons:
- Undo - reselect faces (as precisely the original faces could have been erased)
- Redo last Push Pull, allowing executing the last push pull on a new set of faces, with the same parameters.



version 2.0b - 17 Jul 11: same as version 2.0a but with Italian translation.
See this illustration.

version 2.0a - 16 Jul 11: refix a bug signaled by Thomthom for some complex shapes (typically with vertices having 5 edges or more). Version 1.9 had some problems left.

version 1.9a - 12 Jul 11: fix a bug signaled by Thomthom for some complex shapes (typically with vertices having 5 edges or more).

version 1.8a - 01 May 11: Better respect of specified distance now working when doing a Joint Push Pull with an imposed plane direction. See discussion in this thread.
Here is the previous version, just in case


version 1.7a - 25 Apr 11: Fix a major bug (causing a freeze of SU in some situations).

version 1.6 - 22 Apr 11: Updated the algorithm to better respect the value of the offset when the surface is composed of sharp angles. THIS VERSION HAD A FREEZE PROBLEM.

version 1.5 - 02 Sep 10: maintenance release for SU8
  • Suppress some warning (though harmless) messages in the Ruby console
  • JPP now installs itself as an extension of Sketchup (can be disabled / enabled via the Windows > Preferences > Extension dialog
  • Spanish translation - Thanks to Defisto

12 Jun 10: stable version, with encapsulation of calculation to skip some known problems on texturing.
Please, register (free) to access all the attachments on the forums.
Last edited by fredo6 on Sat Nov 10, 2012 9:52 pm, edited 29 times in total.
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby a4chitect » Sat Feb 23, 2008 3:57 pm

Perfect, perfect!!!!

one of the best integrated script
perfect 'sketchup' feeling
fantastic results!!

thank you very much!
a4chitect
 
Posts: 152
Joined: Sat Nov 17, 2007 5:10 pm

Re: Joint Push Pull - Visual Edition

Postby remus » Sat Feb 23, 2008 4:34 pm

Thanks very much, this plugin feels more like a stanard SU tool tha a ruby.
remus
 
Posts: 8055
Joined: Fri Nov 30, 2007 8:48 am
Location: UK
Name: remus

Re: Joint Push Pull - Visual Edition

Postby Daniel S » Sat Feb 23, 2008 5:44 pm

Totally Amazing!!
How can i set for default for Joint, Vector and Normal Push pull in the finishing options "thickening" instead "erase original faces"?? it´s easy with the TAB or F5 keys... but when i restart SketchUp i have to set my defaults again.

Thank you,
Daniel S

PS. It´s possible to make the plugin work like the SketchUp push/pull? I mean... now you must select at least one face before running the plugin... and after doing the PP you have to select the icon again to PP another face....
Daniel S
 
Posts: 349
Joined: Mon Nov 12, 2007 6:06 pm
Location: Mar del Plata, Buenos Aires, Argentina

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Sat Feb 23, 2008 5:57 pm

Daniel S wrote:Totally Amazing!!
How can i set for default for Joint, Vector and Normal Push pull in the finishing options "thickening" instead "erase original faces"?? it´s easy with the TAB or F5 keys... but when i restart SketchUp i have to set my defaults again.

Edit the rb file, line 334, and change @option_finishing = 'D' to @option_finishing = 'K'
Daniel S wrote:PS. It´s possible to make the plugin work like the SketchUp push/pull? I mean... now you must select at least one face before running the plugin... and after doing the PP you have to select the icon again to PP another face....

This would only work in single-face push pull (but there would be no difference compared to the Sketchup tool). Because you need to be multi-face, you have to select the faces first. Remember that 2 successive JPP may not be equivalent to a single one on the total set of faces!
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby Jeff Hammond » Sat Feb 23, 2008 6:47 pm

that's great.. i like the feel much better than the first one.. it's faster and more intuitive for me..

a couple of the tool bar icons are showing up blurry.. any idea why?


Picture 2.jpg
Please, register (free) to access all the attachments on the forums.
dotdotdot
User avatar
Jeff Hammond
Global Moderator
 
Posts: 4318
Joined: Thu Jan 24, 2008 11:16 pm
Location: newyorkcity
Operating system: Mac
SketchUp version: 8
License type: Pro
SketchUp use: architecture
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby Daniel S » Sat Feb 23, 2008 8:10 pm

Fredo6 wrote:Edit the rb file, line 334, and change @option_finishing = 'D' to @option_finishing = 'K'

Thank you! it´s working like i wanted!

Fredo6 wrote:This would only work in single-face push pull (but there would be no difference compared to the Sketchup tool). Because you need to be multi-face, you have to select the faces first. Remember that 2 successive JPP may not be equivalent to a single one on the total set of faces!


i understand... the problem is single-face or multi-face...
it´s like the SketchUp push/pull vs your normal push/pull.
In theory is better your normal push/pull because you can extrude single and multi faces... but the SU push/pull is faster... because it auto-selects faces on hover instead having to select faces first. Of course that are used in different situations but i think that you understand what i try to say.
SketchUp has a lot of problems with curves faces (including no offset) ... This is one of the features that i was waiting for SU7... use the SU push/pull for curved faces... that is exactly your JPP for single faces.
I attach a video example of what i´m trying to say...

Daniel S
Please, register (free) to access all the attachments on the forums.
Daniel S
 
Posts: 349
Joined: Mon Nov 12, 2007 6:06 pm
Location: Mar del Plata, Buenos Aires, Argentina

Re: Joint Push Pull - Visual Edition

Postby JClements » Sat Feb 23, 2008 8:46 pm

As mentioned by others, this really is an incredibly well thought out/well executed/all inclusive/well documented script. Thank you for your superb effort, Fredo

===============================================

Curved Offset.

Yes, I was hoping there would be a way to use a combination of the existing JPP options to trick it into producing a "multi-facet"-offset.

===============================================

There is a small typo. There is a right-parenthesis following "Thickening" in the Create Border Faces drop-down list.

===============================================

"The editor makes full usage of the Sketchup inference mechanism so that you can
visually adjust the distance by reference to a particular point in your model, as in most
Sketchup tools. However, when you drag, you may want to skip some inferences. For
this, just keep the SHIFT key pressed down, while dragging faces."


For me, keeping the SHIFT key depressed doesn't appear to do anything. The black triangle at the cursor seems to be inferencing to other geometry. Perhaps I am misinterpreting its usage?
Last edited by JClements on Sun Feb 24, 2008 1:57 am, edited 7 times in total.
User avatar
JClements
Premium Member
Premium Member
 
Posts: 773
Joined: Wed Nov 14, 2007 4:32 pm
Location: Portland/Beaverton, Oregon
Name: JClements
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: illustration, cartoons
Level of SketchUp: Intermediate

Re: Joint Push Pull - Visual Edition

Postby Whaat » Sat Feb 23, 2008 9:41 pm

I am really impressed by this script! Outstanding work!
Whaat
 
Posts: 966
Joined: Wed Nov 14, 2007 9:51 pm
Location: Saskatchewan, Canada
Name: Dale Martens
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: architecture
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby bellwells » Sun Feb 24, 2008 2:28 am

Fredo, this is a SIGNIFICANT improvement over the last version. What a tremendously useful tool. Thank you very much!!
Ron
bellwells
 
Posts: 560
Joined: Thu Nov 15, 2007 12:55 am
Location: Colorado
Name: Ron Wells

Re: Joint Push Pull - Visual Edition

Postby boofredlay » Sun Feb 24, 2008 7:19 am

Brilliant new interface, thanks. :ecstatic:
User avatar
boofredlay
Global Moderator
 
Posts: 9008
Joined: Mon Oct 22, 2007 1:50 pm
Location: Huntsville/Madison Alabama
Name: Eric Lay
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: architecture
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby boofredlay » Sun Feb 24, 2008 7:31 am

Is it possible for this script to explode the curve after it is run? Or at least segment it into parts. It would cut down on a step if you are trying to erase lines for a cleaner face. See image.
Please, register (free) to access all the attachments on the forums.
User avatar
boofredlay
Global Moderator
 
Posts: 9008
Joined: Mon Oct 22, 2007 1:50 pm
Location: Huntsville/Madison Alabama
Name: Eric Lay
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: architecture
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby Gaieus » Sun Feb 24, 2008 7:53 am

Coen Naninck wrote:...I also very much want to see an offset tool for curved surfaces.
Can it be done?

Well, to me this is practically the offset tool for curved surfaces. Or am I missing something?
Gai...
User avatar
Gaieus
Administrator
 
Posts: 27626
Joined: Sat Oct 20, 2007 8:24 am
Location: Pécs, Hungary
Name: Csaba Pozsárkó
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: historical reconstruction
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby solo » Sun Feb 24, 2008 1:35 pm

Thank you so very much for this amazing plugin.

This is another step towards SU being able one day to model organic shapes with ease.

The idea of an offset tool for curved surfaces would be fantastic.

We have so many talented coders here that I believe Google is sitting back watching how SU is upgrading itself without much input from them as the users have given this amazing app a life of it's own.

OT: Now if only we can get some uber geek help on the texture mapping thing.
My site

Quod gratis asseritur, gratis negatur.
User avatar
solo
Global Moderator
 
Posts: 10750
Joined: Mon Nov 12, 2007 1:46 pm
Location: Dallas, Texas
Name: Pete Stoppel
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: other
Level of SketchUp: Intermediate

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Sun Feb 24, 2008 6:30 pm

On offset tool for curved surfaces:

I am not totally clear on what several of you are targeting. Personally, I see 2 categories of such surface offset tool:

1) Only offsets the external border edges of the surface. This means for instance that all interior faces are left untouched. This does not exist in native Sketchup but can easily be done by a script. Actually the faces are just there to give the overall contour the planes for offsetting and the direction interior / exterior.
Offset surface borders only.jpg


2) Deform continuously all faces of the model to accommodate the offset of the contour. In such a case, I think it would always change (even slightly) the shape of the overall surface. The best is probably to Scale the surface in all directions, and then move it to the closest position to fit the original surface. This can also easily be automated by a script.
offset surface by scaling.jpg


Maybe I lack imagination and there are other forms of surface offset someone would think of!?
Please, register (free) to access all the attachments on the forums.
Last edited by fredo6 on Sun Feb 24, 2008 6:45 pm, edited 2 times in total.
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Sun Feb 24, 2008 6:35 pm

Boofredlay wrote:Is it possible for this script to explode the curve after it is run? Or at least segment it into parts. It would cut down on a step if you are trying to erase lines for a cleaner face. See image.


I put precisely some code to keep curves on the original surface (to be as less destructive as possible). Note however that the generated corresponding contour is not welded as a curve. Is it the situation you have?
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Sun Feb 24, 2008 6:42 pm

Jeff Hammond wrote:that's great.. i like the feel much better than the first one.. it's faster and more intuitive for me..

a couple of the tool bar icons are showing up blurry.. any idea why?


I guess you are on Mac.
No idea of what happens with the PNG files, especially because only 2 of them appears in the 'fog'. They all come from the same source (thanks to Daniel S. who designed them). One idea, make sure you got all 5 icons of the latest version (they are all 24 x 24). The two I designed and published in the initial version were 32x32.
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Sun Feb 24, 2008 7:00 pm

JClements wrote:"The editor makes full usage of the Sketchup inference mechanism so that you can
visually adjust the distance by reference to a particular point in your model, as in most
Sketchup tools. However, when you drag, you may want to skip some inferences. For
this, just keep the SHIFT key pressed down, while dragging faces."


For me, keeping the SHIFT key depressed doesn't appear to do anything. The black triangle at the cursor seems to be inferencing to other geometry. Perhaps I am misinterpreting its usage?


The black triangle will seem to 'block' on other geometry, but it position will be ignored when you drag the faces. So inference is skipped 'geometrically', but I did not find a way to skip it 'visually'. Hope this answers your question.
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby Daniel S » Sun Feb 24, 2008 8:42 pm

About the icons.. i made the two that are blurry on mac on a different day.. so perhaps i export the icons with different settings...
Jeff here i attach the two icons again... tell me if this fixes the problem (i don´t have a Mac for testing).

And about the offset the best method for me will be option nº 1: Only offsets the external border edges of the surface.

Daniel S
Please, register (free) to access all the attachments on the forums.
Daniel S
 
Posts: 349
Joined: Mon Nov 12, 2007 6:06 pm
Location: Mar del Plata, Buenos Aires, Argentina

Re: Joint Push Pull - Visual Edition

Postby urs0815 » Sun Feb 24, 2008 9:25 pm

hallo Daniel,

I´ve tested the 2 icons on my mac -> same problem as before :?

but the icon of the very first edition of jpp were OK, so we can use them ;)

urs
urs0815
 
Posts: 29
Joined: Sat Nov 17, 2007 9:16 am

Re: Joint Push Pull - Visual Edition

Postby Daniel S » Sun Feb 24, 2008 9:37 pm

Here i made them with other settings... try this ones please
Please, register (free) to access all the attachments on the forums.
Daniel S
 
Posts: 349
Joined: Mon Nov 12, 2007 6:06 pm
Location: Mar del Plata, Buenos Aires, Argentina

Re: Joint Push Pull - Visual Edition

Postby Jeff Hammond » Sun Feb 24, 2008 9:39 pm

[EDIT] daniel posted the latest update while i was typing this reply.. iconsformac2 are correct..



i switched to the first icons and they worked ok..

Picture 1.jpg



the new pngs display as sharp in all other apps except sketchup.. i compared the blurry ones against the sharp ones in PS and found the image sizes are different.. i changed the blurry J & V files to the following size..

Picture 3.jpg



..and now the new icons look ok..
Picture 4.jpg



it's a strange thing to me because the new icons are all 24x24 px.. it's just the resolution and wxh are set different but i would have thought they would display on a monitor according to the pixel size alone..
fwiw - the blurry icons are set to 24 x 24 px... .08 x .08 inches .... resolution 299.974..
Please, register (free) to access all the attachments on the forums.
dotdotdot
User avatar
Jeff Hammond
Global Moderator
 
Posts: 4318
Joined: Thu Jan 24, 2008 11:16 pm
Location: newyorkcity
Operating system: Mac
SketchUp version: 8
License type: Pro
SketchUp use: architecture
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby urgen » Sun Feb 24, 2008 11:33 pm

M-m-m-many thanks to Fredo6 ! very conveniently! :ecstatic: ...
...and let's write it in the end in "jointpushpull.rb" :
#------------------------------------------------------
UI.add_context_menu_handler do |menu|
menu.add_separator
menu.add_item("Joint Push Pull ") { JointPushPull.execute 'J' }
menu.add_item("Vector Push Pull ") { JointPushPull.execute 'V' }
menu.add_item("Normal Push Pull ") { JointPushPull.execute 'N' }
menu.add_item("Undo") { JointPushPull.undo }
menu.add_item("Redo") { JointPushPull.redo }
end
#--------------------------------------------------------------

....right click mouse we select the face and activate skript board Simultaneously :P ...Process of drawing will be faster! :bounce:
--pupil forever...------
User avatar
urgen
 
Posts: 624
Joined: Mon Nov 12, 2007 10:06 pm

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Mon Feb 25, 2008 9:49 am

Urgen,

Very good idea and quite natural in Sketchup.
I updated the files in the script repository (also with non blurry icons).
http://www.sketchucation.com/forums/scf/viewtopic.php?f=153&t=6708&p=42783#p42783

Thanks

Fredo
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby Pixero » Mon Feb 25, 2008 10:57 am

There is a bug in the latest version there should be a ] in this line:
menu.add_item(Traductor[DLG_MnuRedo]) { JointPushPull.redo }
User avatar
Pixero
Premium Member
Premium Member
 
Posts: 1285
Joined: Wed Nov 14, 2007 2:58 pm
Location: Halmstad, Sweden
Name: Jan Sandström
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: architecture
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Mon Feb 25, 2008 11:59 am

Oops...!!
Updated with correct code in Ruby repository

Fredo
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby boofredlay » Mon Feb 25, 2008 6:34 pm

Fredo6 wrote:
Boofredlay wrote:Is it possible for this script to explode the curve after it is run? Or at least segment it into parts. It would cut down on a step if you are trying to erase lines for a cleaner face. See image.


I put precisely some code to keep curves on the original surface (to be as less destructive as possible). Note however that the generated corresponding contour is not welded as a curve. Is it the situation you have?

The generated contour is not welded correct.
The original is however. I did another test after installing the latest and I get conflicting results. The top ellipse is broken into 2 welded curves that do not correspond the the new JPP created. The bottom ellipse stays completely intact.
See images.
Again, thanks for this script.
Please, register (free) to access all the attachments on the forums.
User avatar
boofredlay
Global Moderator
 
Posts: 9008
Joined: Mon Oct 22, 2007 1:50 pm
Location: Huntsville/Madison Alabama
Name: Eric Lay
Operating system: Windows
SketchUp version: 8
License type: Pro
SketchUp use: architecture
Level of SketchUp: Advanced

Re: Joint Push Pull - Visual Edition

Postby fredo6 » Mon Feb 25, 2008 9:56 pm

Coen

If you scale uniformly a surface, it will never match the original (think of a sphere for instance). However, this is somehow an approximate way to offset its contour, while preserving the overall shape of the surface.

With the first method (only offset the borders), you just use the shape of the outer borders and ignore the ones which are inside. So if you offset by a large distance, you will certainly 'dilute' the shape of the surface.

Both methods have their own benefits and drawbacks, and both can be implemented via a script.

That's what I meant.

Fredo
fredo6
Top SketchUcator
 
Posts: 1666
Joined: Mon Nov 12, 2007 9:07 pm

Re: Joint Push Pull - Visual Edition

Postby xrok1 » Tue Feb 26, 2008 1:41 am

where is this offset tool?????
“There are three classes of people: those who see. Those who see when they are shown. Those who do not see.”

http://www.Twilightrender.com try it!
xrok1
 
Posts: 1966
Joined: Sat Feb 16, 2008 1:53 am
Location: Canada
Name: Rocky

Re: Joint Push Pull - Visual Edition

Postby Fletch » Tue Feb 26, 2008 7:03 am

beautiful, Fredo... simply fantastic. Thank you so much for your generosity in sharing!
Fletch
Twilight Render
 
Posts: 760
Joined: Wed Nov 14, 2007 1:02 am
Location: Milwaukee, WI USA / Rovinj, Croatia

SketchUcation One-Liner Adverts

by Ad Machine » 5 minutes ago

Vertex Tools for SketchUp. Take control over each vertex with this vertex editor for SketchUp.

Premium Members get 20% discount!

Ad Machine
Robot
 
Posts: 2012

Next

Return to Plugins

Who is online

Users browsing this forum: agiardino, amandaypurnomo, gullfo, mhackee, sefa_yk, sleuth, within and 23 guests