sketchucation logo sketchucation
    • Login
    1. Home
    2. MartinRinehart
    3. Topics
    🛣️ Road Profile Builder | Generate roads, curbs and pavements easily Download
    M
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 131
    • Posts 766
    • Groups 1

    Topics

    • M

      Walking Around v. Tour

      Watching Ignoring Scheduled Pinned Locked Moved Extensions & Applications Discussions extensions
      5
      0 Votes
      5 Posts
      555 Views
      M
      @xrok1 said: nice, i like it but one would have to see an interface and test it with different renderers before a value could be determined. So far I've lived a renderer-free life. For your needs, SketchUp's rendering is inadequate? May I ask why?
    • M

      Vapors: clouds, steam, smoke

      Watching Ignoring Scheduled Pinned Locked Moved SketchUp Discussions sketchup
      9
      0 Votes
      9 Posts
      3k Views
      C
      You can obtain a fairly quick and basic effect by using gradient transparency pngs in front of the camera as here http://forums.sketchucation.com/viewtopic.php?f=81&t=23368&p=198149#p198149
    • M

      SketchUp Movie Available

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      1
      0 Votes
      1 Posts
      126 Views
      No one has replied
    • M

      Airshow - A SketchUp Movie

      Watching Ignoring Scheduled Pinned Locked Moved SketchUp Discussions sketchup
      13
      0 Votes
      13 Posts
      2k Views
      chrisglasierC
      @martinrinehart said: I tried to have some fun with this one, but I hope that doesn't hide the serious and wide open possibilities. Yes , this is what I think Toffler meant ... the frivolous is taken up first and quickly. Unfortunately it seems to me nowadays pursuit of the seriously useful is forever being pushed back. @unknownuser said: ... Buildings being built ... Yes I very much like the idea of animating in Sketchup rather than making videos, simply because it can react to actual events or mind changes.
    • M

      Mac Help Needed

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      10
      0 Votes
      10 Posts
      280 Views
      T
      @martinrinehart said: I've looked harder and seen that there is NO Mac issue. It's a Windows-only problem. That's heartening to hear! The amount of times I've heard windows developers moan that there is a fault, and it is Apple's fault!
    • M

      WebDialog set_file

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      24
      0 Votes
      24 Posts
      6k Views
      Dan RathbunD
      UI::WebDialog.set_file BUG found Found the problem on PC. It's a boo-boo using the File.join method. An extra SEPARATOR is getting inserted at the beginning of the URL string, so that whatever the pathname, whether you use the optional relative path (2nd argument) or not, the resulting URL passed to the browser begins with: file:/// For this test I have Rick Wilson's lil' html help file in the Support folder: Rename it to .html and put it in the Sketchup Support folder my_dialog=UI;;WebDialog.new('Smustard Organizer Compatibility',true,'test',800,600,100,100,true) SUpath=Sketchup.find_support_file('') #empty string needed! my_dialog.set_file('Support/Smustard_Organizer.html',SUpath) my_dialog.show On the PC this results in MSIE error dialog stating that 'Internet Explorer cannot find the file: "file:///C:/Program Files/Google/Google SketchUp 7/Support/Smustard_Organizer.html"_' Trying various combinations of the set_file method: 1 argument, 2 arguments, etc., I have also been able to get 2 types of error webpages, 'Internal Server Error' and the normal useless 'Cannot Open the Webpage error' with the likely reasons ie: No Internet connection, etc. LESSON UseUI::WebDialog.set_url instead. my_dialog=UI;;WebDialog.new('Smustard Organizer Compatibility',true,'test',800,600,100,100,true) SUpath=Sketchup.find_support_file('') #empty string needed! # Remove leading file separator on Mac (or Win without Drive;) SUpath.slice!(0,1) if SUpath[0,1]==File;;SEPARATOR # File.join will put it back in my_dialog.set_url( File.join('file;//localhost',SUpath,'Support/Smustard_Organizer.html')) my_dialog.show It is quite likely that .set_file actually just calls .set_url passing the latter improperly concatenated pathname string portions misusing the File.join method. (Obviously the set_file method could be fixed using the slice! technique above.) UI.openURL The same technique can (and should) be used with UI.openURL so that code is cross-plaform. On Mac, testing has shown that OSX wants 'file://localhost' at the begining of the URL or it can't find the file.* On PC, Windows will adjust the URL, stripping off the 'file://localhost' and passing the rest of the path to whatever application is registered for the file extension. (Not always the browser.) WebDialog.new Two things to note here. Comma Separated Parameter List form: IF the pref_key argument is nil or '' (empty string), the remaining arguments are ignored. (This is why I set the key to 'test' in the examples above.) So if you are attempting to make a WebDialog that does not save settings, and it is not showing at the position and size you want, this may be why. Hash as Parameter form: Contrary to what has been said that the dialog_title parameter cannot be set through the hash, it CAN be. However, there is a bug in this new Hash based functionality. In that the Google coder did not take into account that there are several ways of defining a Hash, ie, with Symbol keys or String keys. The coder should have just converted each key using to_s and then made the value assignments based on the keystring, but didn't. So the Hash based form is 'quirky'. You must use Symbolsas keys, NOT Strings: hsh=Hash[:dialog_title=>'Title passed by Hash', :scrollable=>false, :preferences_key=>'MyDialog', :width=>800, :height=>600, :left=>100, :top=>100, :resizable=>true] AND once again if you omit the :preferences_key value pair, it seems the remaining arguments are ignored.. ie default position is 0,0 and size is 250,250 instead of those specified in the hash. Conclusion: Because of the kwappy way the WebDialog API was coded, we must pass ALL parameters or Hash keys (which actually defeats the advantage of the Hash, over a Comma Sep'd Parameter List.) _
    • M

      Tool Needed

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      9
      0 Votes
      9 Posts
      1k Views
      M
      @dan rathbun said: Well I do something a bit weird. Care to share some code?
    • M

      Alternate API, Pioneers Wanted

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      28
      0 Votes
      28 Posts
      2k Views
      Dan RathbunD
      @jessejames said: I find the need to grab a group/comp by it's "bbox.center", "bbox.center_bottom", and "bbox.center_top" so important that i wrote a nice function to encapsulate all the calls required to retrieve these points. So maybe you would like to add this, maybe not. Let me know. It would be so nice to call obj.bounds.center('center'), obj.bounds.center('top'), or obj.bounds.center('bottom'), but that will have to wait. There is a plugin for this (that needs some language cleanup,) written by Sahi. It's called AxizComp.rb (Axis Components), see this thread (ther's some code snippets for other languages later in the thread.) http://forums.sketchucation.com/viewtopic.php?f=323&t=21635&hilit=axis#p181881 EDIT: With the release of SketchUp 2020, grips on object bounding boxes are now native ! https://help.sketchup.com/en/current-release-notes
    • M

      Instance.move!() and instance.transform!()

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      2
      0 Votes
      2 Posts
      125 Views
      Chris FullmerC
      Yes, .move! is great for animations for those reasons. It should not be compared to .transform! though, as they are dissimilar methods. It should be compared only to .transformation = . As that is what the .move! method is acutally doing. Chris
    • M

      Matrix Multiplication in C[++]

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      13
      0 Votes
      13 Posts
      555 Views
      Chris FullmerC
      I like those lines of code Chris, I want to test those later tonight. Chris
    • M

      Naming 'Untitled'

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      3
      0 Votes
      3 Posts
      169 Views
      M
      @tig said: better you can use Sketchup.open_file("myname.skp") to open that newly made file, with the 'Untitled' one being closed without saving Thanks, TIG. Any way to fire that extra "N" (don't save Untitled) from Ruby?
    • M

      Scaling + move!() == ant feast

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      9
      0 Votes
      9 Posts
      449 Views
      mitcorbM
      Damn! (notice modifier at end of damn) So much to learn--so little time.
    • M

      Geom::Transformation.new( Vector3d ) resolved!

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      8
      0 Votes
      8 Posts
      343 Views
      TIGT
      A you say, the writer of the bounding-box methods used the "classic" approach to describing 3D objects - where Z comes out of the screen = depth and x/y are width/height 'flat on the screen... This goes against every other SUp convention ! It's usual to assume you are looking at the 3D object 'in 3D' where up (Z+) is 'up in the real world = up the screen', and not looking 'from above' as if the 'ground' is the screen's surface
    • M

      Help with Animation

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      23
      0 Votes
      23 Posts
      3k Views
      Dan RathbunD
      @dan rathbun said: I'll see if I can cobble up a better example, perhaps I'll post it in a new [ Code ] topic (so it can be indexed with the Code Snippet indexer.) Done! [Code] AnimateSelection Example v1.0.0 .
    • M

      Geom::Transformation.new( Vector3d )

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      31
      0 Votes
      31 Posts
      1k Views
      TIGT
      @martinrinehart said: TIG, as always, was right. If you transform!() the translation is relative to the current location. I was right, too. If you move!() the translation is to the specified point (or to origin + vec, if you specify a vector, which comes out to the same thing). The doc, which says the two are the same, is dead wrong. (Or the doc is right and the code is wrong. We'll never know.) A relief to know that neither of us was going mad I'd never use move! anyway - unless in an animation...
    • M

      Transformation Matrices, Wt and the Homogeneous Mystery

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      4
      0 Votes
      4 Posts
      253 Views
      thomthomT
      Components/groups end up skewed if you got them nested a couple of times inside non.uniformly scaled parents.
    • M

      [code] Timer class

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      3
      0 Votes
      3 Posts
      1k Views
      M
      @cjthompson said: you might want to put: t = Timer.new( 1/fps.to_f, tt ) Matz made some brilliant decisions, and some other decisions. The decision not to coerce to float was, maybe, one of the other decisions. How many times are you really helped by 9/2 returning 4?
    • M

      Wood Cherry Original

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      4
      0 Votes
      4 Posts
      598 Views
      M
      @jim said: The actual code that causes the BugSplat is relevant. May we see it? Not likely to get back there anytime soon. Materials have been so uncooperative that I've banned them from the Ruby portion of my tutorial. @tig said: a work around to effectively 'import a skm', is to have previously made a face with the required material and save that as a small skp file. Then in the main model use the import method to add this skp as a component, the desired material will come in with it. TIG, you have my undying affection for all the great information you provide! This, however, sounds a lot like a "you can't" answer to "I'd like to write a little Ruby..."
    • M

      Don't name a method "next"!

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      9
      0 Votes
      9 Posts
      582 Views
      thomthomT
      Windows7, Ruby 1.8.0 - Console Session (IRB) C;\Users\Thomas>irb irb(main);001;0> next() LocalJumpError; unexpected next from C;/Ruby/lib/ruby/1.8/irb/workspace.rb;81;in `evaluate' from C;/Ruby/lib/ruby/1.8/irb/context.rb;219;in `evaluate' from C;/Ruby/lib/ruby/1.8/irb.rb;150;in `eval_input' from C;/Ruby/lib/ruby/1.8/irb.rb;263;in `signal_status' from C;/Ruby/lib/ruby/1.8/irb.rb;147;in `eval_input' from C;/Ruby/lib/ruby/1.8/irb/ruby-lex.rb;244;in `each_top_level_statement' from C;/Ruby/lib/ruby/1.8/irb/ruby-lex.rb;230;in `loop' from C;/Ruby/lib/ruby/1.8/irb/ruby-lex.rb;230;in `each_top_level_statement' from C;/Ruby/lib/ruby/1.8/irb/ruby-lex.rb;229;in `catch' from C;/Ruby/lib/ruby/1.8/irb/ruby-lex.rb;229;in `each_top_level_statement' from C;/Ruby/lib/ruby/1.8/irb.rb;146;in `eval_input' from C;/Ruby/lib/ruby/1.8/irb.rb;70;in `start' from C;/Ruby/lib/ruby/1.8/irb.rb;69;in `catch' from C;/Ruby/lib/ruby/1.8/irb.rb;69;in `start' from C;/Ruby/bin/irb;13 Maybe IRB bug!! irb(main);002;0> exit C;\Users\Thomas>
    • M

      Bug Splat Reporting

      Watching Ignoring Scheduled Pinned Locked Moved Developers' Forum
      4
      0 Votes
      4 Posts
      237 Views
      AndrewSA
      @martinrinehart said: Does anyone know if there is a relationship between Bug Splat reports and getting bugs fixed? Everything that has been said in previous responses is true. BugSplat tells us how often bugs occur that have the same signature. Therefore, if we set out with the aim to fix some of our most common bugs, we start at the top of the BugSplat list and work our way down. Every time we do a maintenance release or major release, we spend a fair bit of time fixing as many of the most frequently occurring issues as possible. Also, if a specific bug comes to our attention and it seems like a very big problem when it does occur, even if it doesn't occur very often, we will concentrate some effort on trying to establish how to reproduce it and whether we have any BugSplat data to help us dig deeper. Yes, there's a big correlation between BugSplat and bug fixing activities. Andrew
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 3 / 7