🫛 Lightbeans Update | Metallic and Roughness auto-applied in SketchUp 2025+ Download
  • SP door generation

    3
    0 Votes
    3 Posts
    620 Views
    C
    Cool! It will come in handy. Chris
  • WebDialog Closes Mysteriously

    11
    0 Votes
    11 Posts
    1k Views
    J
    Thanks for the comments, everyone; and especially to TBD. It seems obvious now, but the variable that is referencing the dialog is local to the method. When the method is finished, so is everything else in the same scope. And so sooner or later the variable will get cleaned up by Ruby's garbage collection, and the dialog "mysteriously" goes away. So for the code I posted, a global variable will solve the problem. You could also use an instance variable. Please, correct any mis-understandings I have about what's happening.
  • A kickass UI using WebDialogs and DHTML Suite.

    20
    0 Votes
    20 Posts
    3k Views
    C
    Thanks Fredo6. Feel free to copy any part of it. @unknownuser said: Chris, That's a very neat job and a damned good idea to enhance interactivity for some plugins requiring options and being context sensitive for actions (The Sketchup tool bar is actually very limited to interact efficiently and the button state management of Sketchup is simply buggy). I guess this works for Mac too. As soon as I can, I'll give it a try to regroup some commands of my plugins (Bezier, JPP, OOS, etc...) as it will be easier to show the options. Fredo PS: your dialog box is very esthetic. I like very much the design. And if you allow me, I will take some inspiration of it when I try one.
  • Displacement BRUSH

    17
    0 Votes
    17 Posts
    2k Views
    majidM
    it would be very nice if such BRUSH is a bit smart to subdivide the surface automatically when it moves over it and is displacing it... by now i must subdivide it by myself...
  • Section cut - update

    4
    0 Votes
    4 Posts
    687 Views
    TIGT
    It is possible BUT I'm too busy to think at the moment...
  • Context Menu move selection to Group/Component?

    4
    0 Votes
    4 Posts
    509 Views
    A
    Well that's good to know (I won't try to cobble together a test then). On a side note, even with the cut/paste option, I'd still have to have the Outliner open and dig through the tree. The Layer Manager script does a good job at letting you r-click and quickly move contents
  • Cameratilt.rb won't load

    4
    0 Votes
    4 Posts
    470 Views
    R
    Oops, sorry, I'm not used to looking at the user info for OS data - it clearly states "Vista" as your OS That's a really strange situation. Contact me via Smustard and we'll go from there.
  • Ruby Console Ruby Console

    19
    0 Votes
    19 Posts
    3k Views
    R
    Well, sorry for replicating an already known bug... on the upside, now I fixed the same bug in my own code. Thanks Todd!
  • How Display in menu?

    2
    0 Votes
    2 Posts
    354 Views
    jujuJ
    Organizer script from Smustard can help you sort the scripts. IIRC there are one or two other scripts that does more-or-less the same thing, but I don't remember what they are called. I'm sure a look-see in the Ruby Script Index could help out as scripts are usually called something logical and easily recognisable if you know what function (-s) you require.
  • Jitter plugin?

    7
    0 Votes
    7 Posts
    2k Views
    J
    or you can get it from the source (me.)
  • An issue with Windowizer30b5?

    2
    0 Votes
    2 Posts
    762 Views
    R
    I've noticed it, and I think it's an issue with ruby in SU - creating a lot of new geometry in an already dense model takes a LONG TIME. However, I'll check the code for Windowizer to see if there's something in it that might be a culprit.
  • Ruby for surveyor

    14
    0 Votes
    14 Posts
    2k Views
    F
    but I STILL like the eplanation for hexadecimal... I always saw that on my calculators and wondered 'what in the world is that?'
  • Script, Rounded Corners

    11
    0 Votes
    11 Posts
    3k Views
    kenK
    @lapx said: Look up k-tools ruby. Under geometry/ round edge. It will do what you are asking. Sorry to be slow today, under my K_tools 5, I don't have the option of rounded corners, Angle division, outer circle of triangle, inner circle of triangle, Make T, Make L. However, thanks for the help. Ken
  • Extensions blog

    2
    0 Votes
    2 Posts
    1k Views
    K
    Good idea Coen . will this be something like the scriptspot blog? See here: http://www.scriptspot.com/
  • Call to our ruby masters: enhanced smoove tool

    2
    0 Votes
    2 Posts
    628 Views
    A
    Most of the code is trivial, only soft selection would have to be coded from start since the smoove is closed-source. But I cant devote any time to this at the moment. We should spread the coders' group by not delivering on-demand. Once u start, the simplicity of ruby Api is addictive.
  • Puppet Tool

    4
    0 Votes
    4 Posts
    1k Views
    K
    The puppet tool would be nic but you can get close by combining suanimate which is available @ ohyeahcad, the people who make podium. Combine this with ffd and you can do a lot of what you desire. Making it easy with a visual tool should be possible using these two scripts that are already developed.
  • Looking for File Parcer

    5
    0 Votes
    5 Posts
    2k Views
    AdamBA
    Sure you could use grep, sed etc but wait, what if we had a scripting language in Sketchup that had good file reading capability, powerful regular expression matching, and a binding to the Sketchup geometry API etc. I guess we can only hope. Seriously, something like this works fine: IO.foreach("my_inputfile.ext") { |aline| /^(\S*) ([^$]*)/.match(aline) verb = $1 rest = $2 case verb ....whatever you need to do here eg entities.add_face, entities.add_group etc } This is my mickey mouse .obj importer I use for Sketchup: pos = [] tex = [] group = nil IO.foreach("/tmp/test.obj") { |aline| /^(\S*) ([^$]*)/.match(aline) verb = $1 rest = $2 case verb when "s" # ignore smoothing group when "v" # close current group if group pos = [] tex = [] group = nil end / (\S*) (\S*) (\S*)/.match(rest) pos.push Geom;;Point3d.new($1.to_f,$2.to_f,$3.to_f) when "f" if /(\S*)\/(\S*) (\S*)\/(\S*) (\S*)\/(\S*)/.match(rest) vertices = [pos[$1.to_i], pos[$3.to_i], pos[$5.to_i]] elsif /(\S*) (\S*) (\S*)/.match(rest) vertices = [pos[$1.to_i], pos[$2.to_i], pos[$3.to_i]] end group.entities.add_face vertices when "g" # open a new group /(\S*)/.match(rest) group = Sketchup.active_model.entities.add_group group.name = $1 puts "group(#{$1})" end } Adam
  • Hidden2Layer v1.2 > Thank you TIG

    2
    0 Votes
    2 Posts
    634 Views
    JClementsJ
    It has also been helpful when using the 3DS export filter (been experimenting with using it for passing my files to a Lightwave user as it will do somethings better than the Lightwave Plugin version 006).
  • File > Export Menu ... Is there way to add a script there

    3
    0 Votes
    3 Posts
    599 Views
    JClementsJ
    Too bad. Thanks for the quick reply, Jim. Do I assume that this has been put on "the wishlist" at one time or another?
  • A script to Analyse the loading of scripts?

    4
    0 Votes
    4 Posts
    813 Views
    A
    @Todd You forgot the scripts programmed as extensions. Their stub is loaded every time Sketchup starts, but the rest is loaded depending on the checkbox status in Preferences dialog. And this status can't be reached with Ruby. But it would be possible to overwrite the methods "load" and "require' to get to know which files get loaded. You only need to make sure the overwriting is in the script loaded first from Sketchup. azuby

Advertisement