ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info
  • SU 2017 anything new in the Ruby API?

    5
    0 Votes
    5 Posts
    639 Views
    placidfuryP
    @driven said: @unknownuser said: ...it groups them together, moves the group, then explodes the group... exploding now deletes all references to the group entities, i.e. they all are 'deleted entities' after the explode... in one of mine I 'now' store the face.bounds.center.z and then after exploding re-find faces using that as a conditional... I believe the former ability to 'hold' the reference was a SU 'hack' and some of these are being 'put right'... john I discovered this in bug testing, can confirm. It kind of sucks, as it was nice to store a selection set in an object array, manipulate, then get your selection set back by selection.add(array) which you can't do now since it views the objects as 'deleted.' Alternately - and this may work well for your case, as even edges/faces/etc get these - each object now has a property called persistent_id, and by referencing back to that you wouldn't have to compare geometry (if I read your post right). My work around for now is to store the persistent_id's in an array, then go the the drawing objects and find the ones that have those id's when I need to reselect them. This is way, WAY slower than just being able to reference back to an array of entities, but I guess it is what it is... unless someone else knows of an easier way to get the selection set back.
  • Clean Dynamic Components

    6
    0 Votes
    6 Posts
    619 Views
    TIGT
    Learn to use regular expression matching... Dan has provided many useful links to basic Ruby usage... d.name=~/Steve/ matches 'Steve', 'Some Steve', 'Steve#1' etc BUT not 'steve' etc d.name=~/[Ss]teve/ matches 'Steve', 'steve' etc To limit the match to a start position use d.name=~/^Steve/ matches 'Steve', 'Steve#1' etc BUT not 'Some Steve' etc To limit the match to an and position use d.name=~/Steve$/ matches 'Steve', 'Some Steve' etc BUT not 'Steve#1' etc To limit it to an exact match use d.name=~/^Steve$/ matches 'Steve' only, nothing else note that is actually equivalent to d.name=="Steve"
  • Size of input point?

    2
    0 Votes
    2 Posts
    337 Views
    Dan RathbunD
    You might try using a Sketchup::PickHelper class interface instead, and the new (SU2016+) window_pick() method. Otherwise there is no way to change the pick aperture size, and Sketchup::InputPoint would use a "OnEdge" inference anyway.
  • Run auto completion for Sketch up API in RubyMine

    6
    0 Votes
    6 Posts
    1k Views
    thomthomT
    RubyMine only need to know/care about the lib folder in that repo. You can tell it to ignore the other folders. As for the auto-complete, I'm having some issues right now myself. Maybe something changed with RubyMine... I'm not sure. Looking into it.
  • ICON MF_ENABLED, MF_CHECKED

    37
    0 Votes
    37 Posts
    4k Views
    TNTDAVIDT
    @tig said: Isn't that method used on the currently selected DC instance NOT a definition !? So perhaps it should be something like $dc_observers.get_latest_class.redraw_with_undo(model_def.instances[0]) It is in this kind of situation that your experience is very beneficial, TIG. Congratulation!
  • WIP -- 'Protrude' ruby from Jim Foltz

    49
    0 Votes
    49 Posts
    24k Views
    majidM
    What a great plugin for interior design... Thanks a bundle Jim!... I was missing it for a while!
  • What what what? This makes no sense!

    6
    0 Votes
    6 Posts
    943 Views
    thomthomT
    hm... I don't recall this thread at all any more. But I tried this in SU2016, and it seem to be doing something odd. In my test a group would be deselected after running this code and making a zoom to update the viewport.
  • The zero point of circles changes with their orientation

    6
    0 Votes
    6 Posts
    947 Views
    A
    Hi Dan, Thanks for a pretty amazing exploration of the possibilities. It's both educational and entertaining (for those of us who like this kind of thing). My apologies for dropping the ball on getting back to you. This is one of those projects that I just keep whittling away at because each step seems a little more complex than I had expected or was ready to deal with. You provided quite an array of methods for finding the starting angle of a circle, and I'm sure some of those will be useful as I move forward. As for my current stuck spot, I think what I'm really trying to figure out is how to specify the starting angle of a circle, a polygon, or a curve, relative to the previously placed circle or polygon, as I go around the knot placing circles. When I use the usual tools to create a circle, the starting angle does not seem to be a parameter that is under my control. The image at the top of this thread shows where it defaults to, just using the standard circle-creating functions. I do not need to understand the logic behind those defaults, because that's not going to help me with my actual problem. If I create a polygon, like a circle, I also do not know how to specify a starting angle. I have to wonder, when you draw a circle or a polygon manually in SU, the point you drag out from the center becomes the starting angle. So what's going on under the hood? Is a default circle being generated and then rotated so that it's starting angle is where the cursor is? Lacking that methodology, the only way I can see to create either a circle or a polygon where I get to specify the staring angle is to make a 360 degree curve. That feels unnecessarily limiting, but that's where I've gotten to. My current thinking on my original problem is that I need to figure out how to place the new curve, based on the information I have from the previous circle/curve. I have the normal, which is derived from the current segment of the knot curve. I have the previous circle/curve. And I have the previous circle/curve's starting angle. And, as you suggested, I have to deal with what the starting angle is relative to. I have to figure out what starting angle I want to specify, based on the previous normal, the previous starting angle, and the current normal. I think I'm going to have to nudge the starting angle of the next successive circle by just a little, so that as the sequence progresses around the knot, it does a slow rotation and comes back to the beginning. Does it want to go around only once? Or three times for the three lobes of this knot? Or what? You gave me a great nudge that percolated for a while and now I think I know what I need to figure out for my next step. I hope that's not another year, but who knows? Anyway, thanks for all the tips. August
  • Reload or recharge

    6
    0 Votes
    6 Posts
    820 Views
    D
    Here is my solution selectionObjectTemp = Sketchup.active_model.selection.to_a if selectionObjectTemp.length == 0 selectionTemp = nil else selectionTemp = selectionObjectTemp end if @definitions[definitionAImporter] definition = @definitions[definitionAImporter] else composantPath = File.join(@libPath,"#{definitionAImporter}.skp") if File.exist?(composantPath) definition = @definitions.load composantPath else UI.messagebox "le chemin n'existe pas; #{composantPath}" end end if selectionTemp != nil selectionTemp.each{|entitie| if entitie.is_a? Sketchup;;ComponentInstance entitie.definition = definition end } end
  • Sublime connection to sketchup console

    2
    0 Votes
    2 Posts
    361 Views
    thomthomT
    Echoing my response here from the other thread: Not sure about the intellisense. Unsure how Sublime handle that. As for the debugger, I think it should work if you can find a package that let you set up remote debugging.
  • Automatically load a component.

    70
    0 Votes
    70 Posts
    6k Views
    TIGT
    You have started another thread and I've replied there. I know you do not want to trigger it depending on a selection - I just used that as an example... In the example you show the other buttons are not disabled. When one is active it's shown 'depressed', when another is click that takes the focus and appears depressed. It the other buttons were actually 'disabled', then they would not be clickable and you'd never get out of the first clicked button's state !
  • Debug RUBY Code in SketchUp

    3
    0 Votes
    3 Posts
    942 Views
    thomthomT
    If you want an example on how to set up the debugger in RubyMine you can check out this thread: http://forums.sketchup.com/t/please-help-me-to-setup-de-debugger-on-rubymine-for-mac/289/2?u=thomthom
  • Sketchup to Revit

    10
    0 Votes
    10 Posts
    4k Views
    N
    We've checked it out. This is old hat really. We still have to trace off the geometry to form editable Revit families. Here's the solution to the problem of SketchUp to Revit. https://www.youtube.com/watch?v=eQJFxCTey5E
  • Suggestion for code - Minimize (rollup) Outliner

    11
    0 Votes
    11 Posts
    2k Views
    J
    I see this thread is almost ten years old, but has this issue ever actually gotten fixed?
  • UV Mapping from Ruby

    4
    0 Votes
    4 Posts
    787 Views
    thomthomT
    You need an API for UVUnwrapping then... hm... Maybe something WrapR might consider? (pinging Rich)
  • Adding a callback when vray is dynamically loaded

    6
    0 Votes
    6 Posts
    827 Views
    dkendigD
    ::sleepily opens one eye:: hmmmmm?... this sounds like someone is dabbling with scary things...
  • DC Dialog dimensions MAC

    3
    0 Votes
    3 Posts
    784 Views
    mariochaM
    @exmole said: I see this was posted 10 months ago. Did you ever figure it out? I have the same issue. Unfortunetly, not yet. Will try to get someone at Trimble to look at it.
  • How to cut from object

    47
    0 Votes
    47 Posts
    4k Views
    A
    Sorry for the delayed response. It looks fine, thanks again! [image: TtoBovE.png]
  • [code] reset webdialog and toolbars .bat file

    15
    0 Votes
    15 Posts
    3k Views
    J
    Unless you're still using SketchUp 7 or 8, you don't need this; and even if your are, you still probably don't need it. What problem do you wish to solve by running this code?
  • Import 2 components with a single icon.

    20
    0 Votes
    20 Posts
    1k Views
    TNTDAVIDT
    Unfortunately even with your adjustment, the code does not work yet. When I launch SketchUp, nothing happens. And the "Ruby console" shipments this error message : @unknownuser said: Error: # <TypeError: no implicit conversion of nil into String> Or is the error? See you soon. David

Advertisement