[Plugin] Rotate 90 around [X, Y, Z] axis

Re: [Plugin] Rotate 90 around Z axis

Postby daiku » Tue Sep 07, 2010 3:13 pm

Not sure what you mean. Do you want to rotate EVERY time you place it? Just re-create the component with the correct orientation to the local axes. CB.
0
User avatar
daiku 
PluginStore Author
PluginStore Author
 

Re: [Plugin] Rotate 90 around Z axis

Postby tor » Fri Sep 10, 2010 5:28 am

Well, what I was hoping for is to select a component from the component browser to place into the model, then as it is moving with the mouse at the insertion point, rotate it, so that it's in the correct orientation. Kind of a building block assembly system. And, sometimes a component would need to be rotated, sometimes not.

Obviously, I can put the component "down", rotate, then move it, but was just hoping to simplify that process in the creation of numerous modular assemblies.

But it seems that the component being placed is not actually selected, per se, so no shortcut key works on it.

Tor
0

tor 
 

Re: [Plugin] Rotate 90 around Z axis

Postby InterArchi » Fri Sep 10, 2010 5:56 pm

:berserk: :berserk: :berserk: Thank u
0

InterArchi 
 

Re: [Plugin] Rotate 90 around Z axis

Postby EarthMover » Fri Sep 10, 2010 7:08 pm

Is there a plugin out there that will do this to multiple components at the same time? Or one that will rotate each around it's own z axis simultaneously?
0
3D Artist at Clearstory 3D Imaging
Guide Tool at Winning With Sketchup
Content Creator at Skapeup
User avatar
EarthMover 
Premium Member
Premium Member
 

Re: [Plugin] Rotate 90 around Z axis

Postby daiku » Fri Sep 10, 2010 8:49 pm

EarthMover wrote:Is there a plugin out there that will do this to multiple components at the same time? Or one that will rotate each around it's own z axis simultaneously?


Easy change. Updated file at the top of the thread. CB.
0
User avatar
daiku 
PluginStore Author
PluginStore Author
 

Re: [Plugin] Rotate 90 around [X, Y, Z] axis

Postby EarthMover » Fri Sep 10, 2010 9:01 pm

That was fast. Thanks a ton!!
0
3D Artist at Clearstory 3D Imaging
Guide Tool at Winning With Sketchup
Content Creator at Skapeup
User avatar
EarthMover 
Premium Member
Premium Member
 

Re: [Plugin] Rotate 90 around Z axis

Postby glro » Sun Feb 05, 2012 1:29 pm

Jim wrote:
HFM wrote:okay, very nice script... but could you please also make it work on X and Y axis? And make it so that you can select a shortcut for the tools?

Tried to edit it myself but my knowledge of ruby is lacking :roflmao:
[did get the 15 degrees to work though :D ]


I always wanted to make a rotator that is sensitive to the view. For example, it would rotate the selection around the axis that is closest to the axis from the camera to the target. If you wanted ro rotate around the Z, you could select the entities, go to Top view and press the shortcut. If you wanted to rotate around the Y axis, select the entities, go to the Front view and use the same shortcut.

What do you think?


My idea is that, having to change the view would take away the advantage of having the rotator sensitive to the view

I have another suggestion: Rot90.rb rotate the component around (ent.bounds.center); would it be possible to rotate around the origin instead, as you did in your mover2.rb plugin?
0

glro 
 

Re: [Plugin] Rotate 90 around Z axis

Postby glro » Sun Feb 05, 2012 2:59 pm

HFM wrote:okay, very nice script... but could you please also make it work on X and Y axis? And make it so that you can select a shortcut for the tools?

Tried to edit it myself but my knowledge of ruby is lacking :roflmao:
[did get the 15 degrees to work though :D ]


I don't know much about ruby either, but here is a simplified version of the plugin:
> rotate around the component origin instead of center
> only around z axis and 90 degrees
> no context menu, a line in the plugin menu instead (so you can add a keyboard shortcut (pop up menu, window>preferences>shortcut
Code: Select all
require 'sketchup.rb'
##
## Rotate selected component instance 90 degrees around Z axis
##
##  Copyright (c) 2010 Clark Bremer (aka daiku)
##  Northern Lights Timber Framing
##  clarkb@northernlightstimberframing.com
##
## 05/02/12: rotation autour de l'origine du composant, axe z seulement, acces menu deroulant ou raccourci clavier
## 9/10/2010:   Multiple Groups/Comps
## 5/17/08:  All 3 axes.  Input from Matt666
## 4/24/08: Use center as rotation point instead of CI origin.  Also works on groups now.
##

# Add a menu item to launch our plugin.
UI.menu("PlugIns").add_item("rotation90z") { rotate90z }
# -----------------------------------------------------------------------------


 def selected_comps_and_groups
     mm = Sketchup.active_model
     ss = mm.selection
    return nil if ss.empty?
    ss.each do |cc|
       return nil if not ((cc.instance_of? Sketchup::ComponentInstance) or (cc.instance_of? Sketchup::Group))
    end   
    ss
 end

#def rotate90(sel, axis)
def rotate90z
   sel = selected_comps_and_groups
#   axis == "z"
   rv = Geom::Vector3d.new(0,0,1)
#   rv = Geom::Vector3d.new(0,0,1) if axis == "z"
#   rv = Geom::Vector3d.new(0,1,0) if axis == "y"
#   rv = Geom::Vector3d.new(1,0,0) if axis == "x"
   ra = 90.degrees
   #rt = Geom::Transformation.rotation(rp, rv, ra) #autour du centre de la boite enveloppe
   sel.each do |ent|
      # rp = Geom::Point3d.new(ent.bounds.center)       #rotation point
      rp = Geom::Point3d.new(ent.transformation.origin)
      ent.transform!(Geom::Transformation.rotation(rp, rv, ra))
   end   
end



#if( not file_loaded?("rot90.rb") )
#   UI.add_context_menu_handler do |menu|
#      if menu == nil then
#         UI.messagebox("Error setting context menu handler")
#      else
#         if (sel = selected_comps_and_groups)
#            sbm = menu.add_submenu("Rotate 90")
#            sbm.add_item("Around Red") {rotate90 sel, "x"}
#            sbm.add_item("Around Green") {rotate90 sel, "y"}
#            sbm.add_item("Around Blue") {rotate90 sel, "z"}
#         end
#      end
#       
#   end
#end


#file_loaded("rot90.rb")
0

glro 
 

Re: [Plugin] Rotate 90 around Z axis

Postby Mainline411 » Fri Jul 27, 2012 12:34 pm

glro wrote:
HFM wrote:okay, very nice script... but could you please also make it work on X and Y axis? And make it so that you can select a shortcut for the tools?

Tried to edit it myself but my knowledge of ruby is lacking :roflmao:
[did get the 15 degrees to work though :D ]


I don't know much about ruby either, but here is a simplified version of the plugin:
> rotate around the component origin instead of center
> only around z axis and 90 degrees
> no context menu, a line in the plugin menu instead (so you can add a keyboard shortcut (pop up menu, window>preferences>shortcut
Code: Select all
require 'sketchup.rb'
##
## Rotate selected component instance 90 degrees around Z axis
##
##  Copyright (c) 2010 Clark Bremer (aka daiku)
##  Northern Lights Timber Framing
##  clarkb@northernlightstimberframing.com
##
## 05/02/12: rotation autour de l'origine du composant, axe z seulement, acces menu deroulant ou raccourci clavier
## 9/10/2010:   Multiple Groups/Comps
## 5/17/08:  All 3 axes.  Input from Matt666
## 4/24/08: Use center as rotation point instead of CI origin.  Also works on groups now.
##

# Add a menu item to launch our plugin.
UI.menu("PlugIns").add_item("rotation90z") { rotate90z }
# -----------------------------------------------------------------------------


 def selected_comps_and_groups
     mm = Sketchup.active_model
     ss = mm.selection
    return nil if ss.empty?
    ss.each do |cc|
       return nil if not ((cc.instance_of? Sketchup::ComponentInstance) or (cc.instance_of? Sketchup::Group))
    end   
    ss
 end

#def rotate90(sel, axis)
def rotate90z
   sel = selected_comps_and_groups
#   axis == "z"
   rv = Geom::Vector3d.new(0,0,1)
#   rv = Geom::Vector3d.new(0,0,1) if axis == "z"
#   rv = Geom::Vector3d.new(0,1,0) if axis == "y"
#   rv = Geom::Vector3d.new(1,0,0) if axis == "x"
   ra = 90.degrees
   #rt = Geom::Transformation.rotation(rp, rv, ra) #autour du centre de la boite enveloppe
   sel.each do |ent|
      # rp = Geom::Point3d.new(ent.bounds.center)       #rotation point
      rp = Geom::Point3d.new(ent.transformation.origin)
      ent.transform!(Geom::Transformation.rotation(rp, rv, ra))
   end   
end



#if( not file_loaded?("rot90.rb") )
#   UI.add_context_menu_handler do |menu|
#      if menu == nil then
#         UI.messagebox("Error setting context menu handler")
#      else
#         if (sel = selected_comps_and_groups)
#            sbm = menu.add_submenu("Rotate 90")
#            sbm.add_item("Around Red") {rotate90 sel, "x"}
#            sbm.add_item("Around Green") {rotate90 sel, "y"}
#            sbm.add_item("Around Blue") {rotate90 sel, "z"}
#         end
#      end
#       
#   end
#end


#file_loaded("rot90.rb")

How do I use this plugin I put the file in plugins and there is nothing in plugins dropdown and nothing when I right click.
0

Mainline411 
 

Re: [Plugin] Rotate 90 around [X, Y, Z] axis

Postby d12dozr » Fri Dec 07, 2012 2:35 am

Great plugin when mapped to a shortcut. Thanks Clark!

FYI everybody, Clark just headed up a local meetup about ruby programming. :bounce:
0
3D Printing with SketchUp Book
http://goo.gl/f7ooYh

d12dozr 
Top SketchUcator
 

Re: [Plugin] Rotate 90 around [X, Y, Z] axis

Postby waltersalter » Wed Apr 12, 2017 1:08 pm

Sorry, does anyone know hot to use this very useful plugin in SketchUp2016? I tried just putting it with other rb files in rooth folder, but it didn't work. Help please!
0

waltersalter 
 

Re: [Plugin] Rotate 90 around [X, Y, Z] axis

Postby Kmyklpenter » Tue Mar 17, 2020 10:08 pm

Hello! Thanks for the plugin! For some reason Im having problem assigning a keybouard shortcut for certain actions. The plugin does not appear in shortcuts list.

How can I do that?

Thank you.
0

Kmyklpenter 
 

Re: [Plugin] Rotate 90 around [X, Y, Z] axis

Postby Dave R » Wed Mar 18, 2020 1:52 pm

Kmyklpenter wrote:The plugin does not appear in shortcuts list.


Do you have a group or component selected in the model? Like other Context menu items, you need to have something selected that would make this plugin appear in the menu.
Screenshot - 3_18_2020 , 7_52_15 AM.png
0
Etaoin Shrdlu


%

(THERE'S NO PLACE LIKE)

G28 X0.0 Y0.0 Z0.0

M30

%
User avatar
Dave R 
Global Moderator
 

Re: [Plugin] Rotate 90 around [X, Y, Z] axis

Postby oman3000 » Fri Oct 02, 2020 11:14 am

hello im a fan of this extension. simple yet useful. im just hope it to rotate even ungroup entities for the next version update. :D
0

oman3000 
 

Re: [Plugin] Rotate 90 around Z axis

Postby Vizan » Mon Nov 23, 2020 11:29 am

How to make only the axis of a component or a group rotate?
0

Vizan 
 

SketchUcation One-Liner Adverts

by Ad Machine » 5 minutes ago



Ad Machine 
Robot
 

Previous


 

Return to Plugins

Who is online

Users browsing this forum: johnny1966, thanhquang288 and 15 guests

Visit our sponsors: