[Plugin] Stick groups to mesh ver. 1.2.
-
Description:
Plug-in, which deforms selected group of faces to follow the selected surfaceHow to use:
- put “mshstick.rb” to “Google SketchUp 6\Plugins” folder
- start SketchUp 6
- select some groups of faces, which you want to stick to another group of faces (surface mesh)
- choose the command "Plugins>>Stick selected groups to mesh group" command from the main menu
- pick the group with mesh, to which you are going to stick selected groups
ver. 1.0. demo video:
[flash=425,344:3svbvbyu]http://www.youtube.com/v/XqX_J746vHw&hl=ru_RU&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"[/flash:3svbvbyu]Known limitations:
- the current vesion (1.0) processes correctly only terrain-like* 'rulling' surface mesh group (* only one z for each x,y)
- ver. 1.0. has only vertical 'sticking' direction (script projects vertices of selected groups normaly to the XY plane)
- ver. 1.0. processes only geometry of selected groups (discards materials information)
ver. 1.1.
functions added:- ability to choose stick direction added (only parallel to main axises yet)
- "Stick type" option added (allows to switch between "normal" and "super" stick type)
- ability to cancel process added (by hitting <Esc> key)
- ability to process almost any kind of ruling surface (solid-like surfaces are also supported now)
bug fixes:
- undo performance improved
ver. 1.1. demo videos (set of 4 ones):
[flash=480,385:3svbvbyu]http://www.youtube.com/p/86F39A8D6E2C777F&hl=ru_RU&fs=1" type="application/x-shockwave-flash" width="480" height="385" allowscriptaccess="always" allowfullscreen="true"[/flash:3svbvbyu]ver. 1.2.
functions added:- ability to specify free vector as stick ray direction (has not to deviate from preset direction much if stick type option is set to 'Normal')
- 'Skip edges projection stage' option added (it is useful if sticking group(s) has(have) enough dense mesh or it is necessary to leave the initial vertex count of sticking groups for some reason)
- 'Reflection ray' option added (refer to the video for more information)
- 'Offset value' adjustment value added (allows offset of sticked groups from the ruling surface)
- 'Magnify' adjustment value added (a kind of scale coefficient for 'reflection ray' vector length)
ver. 1.1. demo video:
[flash=425,344:3svbvbyu]http://www.youtube.com/v/edOu3H0g6QU&color1=0xb1b1b1&color2=0xcfcfcf&hl=en_US&feature=player_embedded&fs=1" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="425" height="344"[/flash:3svbvbyu]known issues:
- groups transformations such as scale and rotate process still insufficiently (so it is necessary to explode 'em and regroup before sticking)
-
Incredible! You've just made a lot of people very happy! Thanks for all your great work.
-
There you go again! Unbelievable.
It is obvious you have a very good command of the Ruby language and the inner workings of Sketchup. Congratulations. I definitely will want to try this gem. -
The possibilities!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Thanks for the amazing scripts you are writing.
I would like to see the possibility of "timing out" your scripts with the escape button like Fredo has in the Round corner plugin. Especially with the scripts that take a long time to process. It would be a big help.
It's amazing how you manage to allow the script to run while the user is still able to rotate and move around the scene. I think that's unique to your last two scripts.
-
I can foresee super-easy snow additions...Thanks, Kirill!
-
oh gods...
wiring, cables, armour plating..... -
....красивая работа Kирилл! ...nice work! thanks!
-
Its like super-drape
-
@earthmover said:
I would like to see the possibility of "timing out" your scripts with the escape button like Fredo has in the Round corner plugin. Especially with the scripts that take a long time to process.
Yes I agree it is necessary to add . I think it's number 1 feature in my list of updates for all 'long-lasting' scripts.
@earthmover said:
It's amazing how you manage to allow the script to run while the user is still able to rotate and move around the scene.
Actually it is not my achievment. It is already implemented ability of sketchup API (so called 'timer' works such a way). You know, as for me, I'm amazed at the sketchup itself
(as well as it's nicely documented API). -
Hi Kirill,
You've done a new incredible tool. Now making Dali's like watches will be very easy .
Best Wishes for 2010
MALAISE
-
This is a most welcome addition to your already impressive collection of plugins.
Thank you and merry Xmas and a happy new year to you
-
@malaise said:
Now making Dali's like watches will be very easy .
Well, actually the initial idea of the script was to stick some master plan elements (paving, roads, grass etc) to the terrain surface (
boring, isn't it?), but why not stick watches too?
I think it is necessary to make some enhancements to the script (materials support, optional sticking direction etc) to make it more flexible than just master plan elements 'sticker'.
-
Kirill:
Your openness to suggestions is a wonderful trait, which seems to be shared by all of the Ruby masters in this forum.May you and all here have a joyous season!
mitcorb -
To sum up:
Dude, you rock! What a great plugin.
EDIT: I seem to find a way to break your plugins! Same as my comments about the "add control points" plugin, I applied the plugin, undid the action, and then tried to reapply it. Now I have the rapidly scrolling error messages in the Ruby window the don't stop, and a pop-up error dialog that says "It is necessary to select some groups of faces before calling the command".
Only fix is to restart SU.
Error; #<TypeError; reference to deleted Group> L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `entities' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `deform_group' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;213;in `call' (eval);892 Error; #<TypeError; reference to deleted Group> L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `entities' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `deform_group' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;213;in `call' (eval);892 Error; #<TypeError; reference to deleted Group> L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `entities' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `deform_group' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;213;in `call' (eval);892 Error; #<TypeError; reference to deleted Group> L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `entities' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `deform_group' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;213;in `call' (eval);892 Error; #<TypeError; reference to deleted Group> L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `entities' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `deform_group' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;213;in `call' (eval);892 Error; #<TypeError; reference to deleted Group> L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `entities' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;214;in `deform_group' L;/Modeling/Sketchup Google/Plugins/ctrlpnts.rb;213;in `call' (eval);892
PS: I love watching these scripts work, it's like watching Jeff Bridge's character get digitized in Tron.
-
Hi Kirill,
What a great plugin. An incredible tool. But it doesn't work in Sketchup 7.
Karlheinz
-
Awesome Kirill, glad you wrote this. This script has been the "next script" on my list to do for a long time, and I have just never quite got around to figuring it out. Saved me a lot of headaches
Seriously, very cool script!
Chris
-
@chris fullmer said:
Saved me a lot of headaches
I must say, that the most brain-damaging part was addition of edges projections of 'ruling' surface to the group
. Finaly I recalled, that sketchup API has the very powerful built-in method (it actually has a plenty of) for entities collection 'entities.intersect_with'. The rest part was more or less obvious.
So actually almost all 'housekeeping' details SU handles itself . -
thank you,I need for my model
-
@escapeartist said:
EDIT: I seem to find a way to break your plugins! Same as my comments about the "add control points" plugin, I applied the plugin, undid the action, and then tried to reapply it.
Undo performance correct handling is my headache
. I promiss to fix it.@escapeartist said:
PS: I love watching these scripts work, it's like watching Jeff Bridge's character get digitized in Tron.
A kind of retro-futurism
UPD: I mean real-time sticking would look much more impressive, of course. Just imagine: you see neither '>' sign moving left-to-right, nor Jeff Bridge's digitizing characters after picking a surface, just immediately sticked geometry group. It is possible for sure (and maybe already exist in some other modeling soft), but demands a bit low level coding, I guess.
I believe, SU developing team will take in account an interest of SU community and will add similar tool in future versions of SU (at least in pro version).a bit off-topick: http://www.youtube.com/watch?v=jz8QWDBYn5w
-
@charly2008 said:
Hi Kirill,
What a great plugin. An incredible tool. But it doesn't work in Sketchup 7.
Karlheinz
Dear charly2008
It's work fine in my sketchup 7.1.
Advertisement