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

    [Plugin] Free Rotate 4.4

    Scheduled Pinned Locked Moved Plugins
    92 Posts 22 Posters 50.6k Views 22 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.
    • jeff hammondJ Offline
      jeff hammond
      last edited by

      @tig said:

      After a flurry ... a recap...
      TAB works with key code 9, 15?, 30??, 48??? - on PC and Mac ??

      On the separate issue - I thought I'd trapped for all of the 'exactly axial' axis glitches - obviously NOT πŸ˜’
      That is fixable...

      no, tab doesn't work with any of those numbers (on mac)

      out of curiosity, i used 121 (for 'y'.. as i don't have anything assigned to that key in SU)
      and it did work.. i was able to get into axial_rotate.

      dotdotdot

      1 Reply Last reply Reply Quote 0
      • TIGT Offline
        TIG Moderator
        last edited by

        From some research...
        TAB is keycode 9 on PC and MAC [or 0x09 hex] - i.e. ASCII.
        With some locale keyboards TAB is keycode 15 [Thai?]
        TAB is also 0x30 hex which is 48 in some locale keyboards [FR?] - as in [k]VK_Tab...

        I'll trap for 9, 15 and 48 for now and reissue v4.1 will the axis glitch fixed... πŸ˜’

        TIG

        1 Reply Last reply Reply Quote 0
        • TIGT Offline
          TIG Moderator
          last edited by

          Here's v4.1 http://forums.sketchucation.com/viewtopic.php?p=266561#p266561
          A typo has been fixed with the Axis on the X_AXIS which glitched unexpectedly. πŸ˜’
          The 'Tab' press for MAC key code adjusted to 9, 15 and 48 to try and trap all platforms/locales. πŸ˜•
          Menu 'Windows > Instructor' help added...
          [Note: this is [i]not working (yet) - so for now open ../FreeRotate/index.html in your web-browser untill this is fixed...][/i] πŸ€“

          TIG

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

            sorry TIG.. tab key still not working in v4.1 on mac.
            😞

            dotdotdot

            1 Reply Last reply Reply Quote 0
            • TIGT Offline
              TIG Moderator
              last edited by

              @unknownuser said:

              sorry TIG.. tab key still not working in v4.1 on mac.
              😞

              BUM! 😑
              ANY Mac user's getting it to work ??
              I can't see why not... as it now accepts keycode 9, 15 or 48 as a TAB key press...
              Any ideas, 'team' ? πŸ˜’

              TIG

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

                @tig said:

                @unknownuser said:

                sorry TIG.. tab key still not working in v4.1 on mac.
                😞

                BUM! 😑
                I can't see why not as it now accepts keycode 9, 15 or 48 as the TAB key press...
                Any ideas, 'team' ? πŸ˜’

                fwiw, i tried 2D tools tab key (which i haven't needed before) and i think it's broken also.

                but yeah, i'm thinking it's something other than which # to use.. i've checked a few different scripts which have tab key functionality in them, which work, and they use 9

                dotdotdot

                1 Reply Last reply Reply Quote 0
                • TIGT Offline
                  TIG Moderator
                  last edited by

                  Jeff
                  I know 2D Tools uses the same code - I'll have to fix that when I know for sure what the problem is... πŸ˜’

                  I've attached a short 'keycode' script.keycode.rb Can you put it into your Plugins folder and open a SKP.
                  In the Ruby Console type keycode and activate the main window and follow the simple instructions.
                  Press the 'Tab' key and report what keycode it says [on a PC it says '9'].
                  You can try pressing other non-shortcut 'modifier' keys to get there keycodes too.
                  As soon as you press a shortcut key it exits...

                  Thanks for your help.

                  PS: Change the tool's suffix to .rb.txt after testing so it no longer loads... πŸ€“

                  TIG

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

                    here's a little variety pack πŸ˜„

                    shift-- You Pressed Keycode = 131072
                    control-- 262144
                    option/alt-- 524288
                    command-- 1048576
                    return(enter)-- 13
                    Y -- 121
                    (shift)Y -- 89
                    I -- 105
                    down arrow -- 63233
                    left arrow -- 63234
                    / -- 47

                    tab -- does nothing
                    ?

                    dotdotdot

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

                      hey TIG

                      i did a little investigating and think i found what's causing the problem..

                      with keycode.rb, i changed line#9 to
                      def onKeyUp(key, repeat, flags, view) ..(instead of onKeyDown)
                      it's now returning 9 when i push the tab key

                      i was digging through some fredoscale v1 files and found a version where tab was broken on mac then found what it looks like after he fixed it..

                      broken:

                      #Handle key down events
                      def onKeyDown(key, rpt, flags, view)
                      	key = Traductor.check_key key, flags, false
                      	
                      	case key			
                      	when CONSTRAIN_MODIFIER_KEY		#Shift key Uniform vs. non-uniform
                      		@shift_down = true
                      		change_free_uniform()
                      		return
                      	when COPY_MODIFIER_KEY			#Ctrl key - Center vs. Opposite
                      		@ctrl_down = true
                      		change_from_center()
                      		return
                      	when 13
                      		return
                      	when 9							#TAB - Ask dimensions
                      		ask_dimensions() unless @post_validate
                      		return
                      	end
                      	@vcb_return = false
                      
                      	#Function Key options
                      	return if check_function_key(key, rpt, flags, view)
                      	
                      	#trapping the arrow keys for imposed direction or plane
                      	unless @dragging
                      		vecdir = nil
                      		normal = nil
                      		[[VK_UP, Z_AXIS], [VK_RIGHT, X_AXIS], [VK_LEFT, Y_AXIS], [VK_DOWN, @NUL_AXIS]].each do |kv|
                      			if key == kv[0]
                      				vecdir = kv[1]
                      				break
                      			end
                      		end
                      		if vecdir && !already_in_box?(vecdir)
                      			@pk_vecdir = vecdir
                      			execute_by_mode view
                      		end	
                      	end	
                      end
                      

                      fixed:

                      #Handle key up events
                      def onKeyUp(key, rpt, flags, view)
                      	key = Traductor.check_key key, flags, true
                      	
                      	case key			
                      	when CONSTRAIN_MODIFIER_KEY
                      		@shift_down = false
                      	when COPY_MODIFIER_KEY
                      		@ctrl_down = false
                      		onMouseMove 0, @x, @y, view if @x
                      	when 13
                      		execute_by_mode view unless @vcb_return
                      		@vcb_return = false
                      	when 9							#TAB - Ask dimensions
                      		ask_dimensions() unless @post_validate
                      	else
                      		@from_center = ! @from_center if @ctrl_down
                      	end	
                      end
                      

                      (sorry, i don't know if i copy/pasted too much or too little of that script for it to be helpful 😳 πŸ˜„ ..but hopefully the answer is in there somewhere)

                      dotdotdot

                      1 Reply Last reply Reply Quote 0
                      • TIGT Offline
                        TIG Moderator
                        last edited by

                        Please could you try changing your version of FreeRotate.rb.
                        from the TAB code being under
                        def **onKeyDown**(key, repeat, flags, view)
                        to it being under
                        def **onKeyUp**(key, repeat, flags, view)

                        if key==9 or key==15 or key==48 ### TAB =9 for PC, MAC 15/48 for some locales ?
                              if @tab
                                self.make_disk()if @state>2
                                if @state==0
                                  @msg=@msgAXIALPIVOT
                                elsif @state==1
                                  @msg=@msgAXIALAXIS
                                else
                                  @state=2
                                  @msg=@msgAXIALHANDLE
                                end#if
                                @tab=false ### axial
                              else
                                self.make_globe()if @state>2
                                if @state==0
                                  @msg=@msgFREEPIVOT
                                elsif @state==1
                                  @msg=@msgFREEAXIS
                                else
                                  @state=4
                                  @msg=@msgFREE
                                end#if
                                @tab=true ### free
                              end#if
                              view.invalidate if @ip.display? or @ip1.display?
                            end#if
                        

                        It's only in the one line, save and open a SKP...
                        Retry FreeRotate and see if the TAB key now works on your MAC and you toggle between 'Free' and 'Axial' modes...
                        Keep the Ruby Console open to see any errors etc...
                        For some reason TAB 'down' is plain flaky on the Mac - but perhaps TAB 'up' isn't !?
                        If it then works on the PC too I'll change it around... otherwise I'll do both - one test for PC one for MAC ...
                        I think we are getting near to a solution here...
                        Thanks for your help.

                        I'll issue an updated version soonest...

                        Then I need to fix ALL tools for MAC with the same issue... πŸ€“

                        PS: by the way here's a new version of keycode.rb that reports key-pressed and key-released events...keycode.rb

                        TIG

                        1 Reply Last reply Reply Quote 0
                        • TIGT Offline
                          TIG Moderator
                          last edited by

                          Here's v4.2 http://forums.sketchucation.com/viewtopic.php?p=266561#p266561
                          The glitch with 'Tab' [9] on MAC etc trapped by using 'key-up' not 'key-down' check ❓
                          Don't know why... but it works... πŸ˜’

                          TIG

                          1 Reply Last reply Reply Quote 0
                          • mitcorbM Offline
                            mitcorb
                            last edited by

                            FYI:
                            At least on my machine, the new zipped versions do not overwrite the original stand alone rb, so I did not see the toolbar icon, and I had two instances of FreeRotate in the Plugins dropdown menu. I simply deleted the original rb file in the SU7 plugins subfolder and restarted the program. The toolbar icon loaded and, I assume the old menu line disappeared.
                            Maybe this will help someone.

                            I take the slow, deliberate approach in my aimless wandering.

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

                              @tig said:

                              Here's v4.2 http://forums.sketchucation.com/viewtopic.php?p=266561#p266561
                              The glitch with 'Tab' [9] on MAC etc trapped by using 'key-up' not 'key-down' check ❓
                              Don't know why... but it works... πŸ˜’

                              working now on mac..
                              i'll check 2d tools in a little bit.
                              thanks a ton.

                              [ed]- keycode.rb now returns 9 when releasing the tab key.. there's only one other key on my keyboard that exhibits the same behavior (no number on keydown) and that's the delete key 127

                              dotdotdot

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

                                Tab on OSX doesn't work on keyDown?

                                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:

                                  Tab on OSX doesn't work on keyDown?

                                  correct.
                                  it appears to do absolutely nothing (in sketchup)

                                  depending on my system prefs, keydown will either activate the VCB regardless of what tool i'm using or cycle through all of my toolbar icons. (ie- i can activate a tool via it's icon without mouse clicking it)

                                  it's as if the system is keeping tab keydown for itself and won't allow it to be re-assigned

                                  dotdotdot

                                  1 Reply Last reply Reply Quote 0
                                  • D Offline
                                    d12dozr
                                    last edited by

                                    TIG, thanks for the plugin πŸ‘

                                    Rich, thanks for the video πŸ˜„

                                    3D Printing with SketchUp Book
                                    http://goo.gl/f7ooYh

                                    1 Reply Last reply Reply Quote 0
                                    • ken28875K Offline
                                      ken28875
                                      last edited by

                                      Wow! Awesome. That's what I needed. πŸ‘ πŸ‘

                                      Thanks, TIG.

                                      _KN

                                      Follow Your Dreams.

                                      1 Reply Last reply Reply Quote 0
                                      • TIGT Offline
                                        TIG Moderator
                                        last edited by

                                        Here's 4.3 http://forums.sketchucation.com/viewtopic.php?p=266561#p266561
                                        A typo (= v ==) in code corrected around line#708: was not affecting results.
                                        The Gizmos' Guides are displayed even when Guides are set to be 'off' in the current Style [the 'off' setting is momentarily suspended and then restored].

                                        TIG

                                        1 Reply Last reply Reply Quote 0
                                        • E Offline
                                          eddy
                                          last edited by

                                          Salut Γ  tous, Wow! Awesome, very useful. πŸ‘ πŸ‘ πŸ‘

                                          Thanks, TIG.

                                          @ ++ Eddy

                                          1 Reply Last reply Reply Quote 0
                                          • TIGT Offline
                                            TIG Moderator
                                            last edited by

                                            Here's v4.4 http://forums.sketchucation.com/viewtopic.php?p=266561#p266561

                                            You might have seen elsewhere on the forums that a fix for the Instructor window has been stumbled upon... which means it can now be used for custom tools [with the right code] as well as the built-in tools...

                                            My FreeRotate always had the Instructor window's files etc, but they never displayed... until now. It was believed that the Instructor part of th API was broken, but it turns out that although it is 'sort of', it is fixable after all with some ingenuity in building the file-paths etc...

                                            FreeRotate's Instructor window should work cross-platform - feedback please, especially from MAC users...

                                            TIG

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 5 / 5
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement