[prototype] Doublecut (0.1.0a) - Need help debugging
-
I had a look earlier this week, but I was getting an error indicating you were calling .entities on an Instance. Will look again today.
-
@jim said:
I had a look earlier this week, but I was getting an error indicating you were calling .entities on an Instance. Will look again today.
hm.. that's an error I haven't gotten... care to paste it here next time you get it?
-
This happened after I downloaded your hole example, turned-off double cutting, then tried to turn it back on.
Error; #<NoMethodError; undefined method `entities' for #<Sketchup;;ComponentInstance;0x6113c84>> C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;356;in `intersect_edges' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;349;in `each' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;349;in `intersect_edges' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;174;in `place_cutout' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;149;in `make_cutouts' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;139;in `each' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;139;in `make_cutouts' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;138;in `each' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;138;in `make_cutouts' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;1068 C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;356;in `call' C;/Program Files/Google/Google SketchUp 7/Plugins/other/tt_double_cut.rb;356
-
Was that with the original 0.1.0 or with the 0.2.0 which I posted later in the thread?
-
0.2.0a
-
Strange error. Though I never tried that much to toggle it on/off.
I get a different error though (maybe I changed it after 0.2.0)
Error; #<NoMethodError; undefined method `name=' for nil;NilClass> C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;201;in `place_cutout' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;149;in `make_cutouts' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;139;in `each' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;139;in `make_cutouts' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;138;in `each' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;138;in `make_cutouts' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;1068 C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/tt_double_cut.rb;1068;in `call'
When I got this Europan competition finished and I've sorted out the last webdialog for Street Generator I'll give this plugin another go witha different approach.
-
Hey Thomas, Just downloaded the Drill plugin and couldn't help but notice how easily it cuts through the opposite face. Maybe there is something in it that may help solve this one...
http://forums.sketchucation.com/viewtopic.php?f=180&t=19556&p=165720#p165720Keep up the great work, mate. Blokes like you are taking SU to new heights!!!!
-
Thanks.
I'm afraid that the problem it's making the holes. It's keeping track of them. -
Thom,
maybe this is a very old project you gave up on, but i have an idea for you - or anyone else willing to develop a double cut plugin. it's a technique i use manually and it relies on pure and tested core sketchup tools, so no need to really keep track of the holes. (unless i missed anything,) your plugin creates an actual hole and removes part of the back face.
what i suggest, is to have the plugin automatically create a copy of the front component but mirrored -1 along its blue axis and stuck onto the back wall. This would cut the whole in any thickness of wall, and as long as the "depth" of the component is half or more the thickness of the wall, the model will be "closed".
obviously it means the component trim will look similar on both sides of the wall, but you may be able to circumvent this if you create a component copy with everything above the reference plane of the component removed.
the idea in the end is to create double components, not to try to cookie cut the wall and then try to keep up with it, which is what you say is causing the bugsplats.
if i scale/edit/etc the original component, its back mirrored version will follow and the cut will follow. if i need to move the actual component all i have to do is select both and move them together.
if i got it wrong, please forgive my naivetΓ©.
-
That is exactly what this plugin tried to do. In fact, it worked very well to create the appropriate cut-out component on the opposite face.
The problem was keeping everything in sync when the user moved any of them around.Maybe I should just release the part that creates the opposite component. Relax on the attempt of catching all updates and leave a Manual Refresh command. Even that would make things easier.
-
My 'HolePunch' script [do a search in plugins] does what you seek ?
It punches cutting components through walls. The inner reveal and window [say] are then inexorably linked and move together unless you 'unlink' or 'undo-punch'. Currently it's one shortcoming is that if you copy a punched component on an elevation etc it does not cut/punch the face - the work-around is to un-punch it and the copy/matrix, then re-punch all of the copies again... -
? It does not modify the geometry? It uses cutout components? How did you link it?
I had the whole automatic back-side-hole creating working when copying and such working, but the observers would occasionally make SU bugsplat. grumble
-
@thomthom said:
? It does not modify the geometry? It uses cutout components? How did you link it?
I had the whole automatic back-side-hole creating working when copying and such working, but the observers would occasionally make SU bugsplat. grumbleIt adds geometry to form the reveals and linking attribute ids to the cutting instance, A selection-observer watches for any instances with common ids and adds those to the selection so you always selected everything together even if you pick only one part. Therefore they move, erase etc together. The complication arises when you copy as the ids get duplicated - I have got as far as undoing the punch for copied instances and re-gluing them to the face they are on BUT the re-punching without a Bugsplat is not [yet] there. I think I need to suspended the selection-observer for the duration ?
EDIT: I thought of that as I was typing and it worked!!! I'll post an update asap...
-
Thomthom
One week later... Here's v1.4 http://forums.sketchucation.com/viewtopic.php?p=271170#p271170
Which now supports copying/arraying punching-components etc...
It has a plethora of convoluted observers and linked attributes BUT it now works...
Advertisement