[Plugin] Random Painter (Updated March 9th, 09)
-
Hi everyone,
First of all, thanks to Adam for bringing me into the discussion. I had no idea anyone was using wxSU with their plugins yet! I'm sorry it's been the source of some nasty crashes.
I've been studying the wxSU conflicts with other plugins and have come to some conclusions:
-
At least one configuration with guaranteed crashing is: Random Painter + PlayUp + Windowizer 4 ...with the final trigger being the menu command Plugins/Windowizer4
-
Part of the problem appears to be that Random Painter and PlayUp are both running their own separate sessions of wxSU, which is dangerous.
-
The other part of the problem is that wxSU's threading scheme has instabilities on its own.
I'm pretty sure I can fix #1 and #2 by adding some code to ensure that only one session of wxSU is running at a time. That should solve most of the crashes described in this topic.
I'm not sure I can fix #3 without help. With only one session of wxSU running, you can type "sleep 10" at the console without any crash. BUT, the unique threading scheme actually gives you back control before the sleep is done. If you now type "sleep 10" again, you get a crash. In reality, will two plugins be asking to sleep at the exact same time? Probably not. It would be nice to figure out but I don't think it's necessarily a showstopper for wxSU in the meantime.
A couple questions for the forum:
Are there other configurations (besides #1) that will cause a crash with wxSU?
Is anyone aware of any other plugins that are using wxSU?
Thanks,
P -
-
HI Peter, great work on WxSU. I'm afraid most of this discussion might be over my head. I only barely was able to implement WxSU, and I'm not sure that I did it correctly.
Is there a better way to implement so that it won't cause a crash? or is that something you need to do on the development end? I can post my code in this thread if that will help.
Chris
EDIT: I am unaware of other plugins that use WxSU at this point.
-
Hi Chris,
There's nothing you can do in your code to prevent the crash. It's really my fault for not blocking multiple sessions of wxSU. I'll make the change and try to put out a new release of wxSU over the weekend.
The only change I would make to your code is to replace:
require "wxSU.rb"
with
require "wxSU/lib/Startup"
Hey, thanks for being an early adopter!
P
-
A new version (v0.3.0) of wxSU is now posted on the project website.
http://sourceforge.net/project/showfiles.php?group_id=240585&package_id=292646Multiple instances of wxSU are now blocked which should eliminate the conflict that I've seen between Random Painter, wxSU, Windowizer 4, and other plugins. However, the conflicts won't go away until each plugin that uses wxSU upgrades to 0.3.0. In particular, the PlayUp plugin needs to be upgraded.
The new version also updates to wxRuby 2.0 which is more stable and has some new features.
If anyone finds problems or conflicts that I haven't mentioned, please email me.
Thanks,
P -
Thanks for the update Peter! I don't have time to update this right now, but perhaps in a week or two I'll get it all updated and working with the new version (though I'm not sure I really need to change very much, it should just be a matter of the users upgrading their version of WxSU they have installed).
Chris
-
mmmm cant get it to work on my mac os x 10.5.6.
first installed the wxSU ppc (that didnt work ofcourse) than tried the platform independent. but got this error see attachment... pretty weird for a macthe next image was the error i got from the mac ppc version
-
Well, I guess "platform independent" was kind of a mislabeling on my part... It would be more accurately described as a "source-code only package for Windows"; no installer. And thus the wacky error message. Sorry about that.
The Mac installer should have worked for you. It's supposed to be a PPC/x86 universal install. Are you using SU 6 or SU 7? It tries to install in the SU 7 directories, which could be the problem if you only have SU 6. Email me and I'll help you debug it. Sounds like there is at least one or two things for me to fix here.
Thanks,
P -
Oops, just noticed you list SU 6-7 in your profile. If wxSU did install successfully under SU 7, you should be able to just copy it over to your SU 6 directory. If that's not the problem, let me know.
-
nice ruby. good video too, I didn't realise you could combine textures in SU
-
-
Hi Chris why don't make that inside your plug?
clselection.each{|e|### if e.class==Sketchup;;Face matx=mats[rand(mats.length)] e.material=matx e.back_material=matx if paint_back==1 elsif e.class==Sketchup;;Group or e.class==Sketchup;;ComponentInstance ######### matx=mats[rand(mats.length)] e.material=matx end ########################################################## }###
(it's not from me of course , it's from TiG
-
@unknownuser said:
Mine just randomly paints the faces. Both have their uses.
Ok I understand you pick facets in any order!
It's a pityAbout colors
The must will be to use a pallet who yet exist so no need to pick on a wheel color or enter numbers!
like this for examplethen I copy past in one move I have that
#334433 #3366aa #6699aa #aabbbb #778877
or that with any difficulties in any Notepad or other
#334433
#3366aa
#6699aa
#aabbbb
#778877
So If you have a board to put that inside that will be perfect!If I can enter a simple list of color by copy past it be perfect!
-
Another one
CoBrA style -
Chris, thanks for the cool plugin!
Little feature request: would it be possible to make it paint groups and components as well?
(not inside them, just the component instance itself...)At this moment, that would save my life (damn deadlines)..!
-
I didn't installed it yet, but I want to ask a question before:
What's the difference between that two versions? (with and without WxSU) ?Thanks.
-
WxSU is/was an add-on to offer new functionality to SUp but it proved to be a big flaky [and/or difficult to 'get right'] and so Chris wrote the alternative version that didn't need it...
-
@tig said:
WxSU is/was an add-on to offer new functionality to SUp but it proved to be a big flaky [and/or difficult to 'get right'] and so Chris wrote the alternative version that didn't need it...
Thanks, just downloaded it. I hoped it will work on groups/components too. Maybe Chris reads this and update the plugin?
Other nice functionality would be to be able to "pick" materials/textures from model and/or from Material Browser and use them to paint the selected entities... -
Thanks Chris
This is a very useful tool. Perhaps would could be improved by using su's dialogue color picker which I know you have probably thought of already.
You ruby God's are fantastic!
-
Yes ultra cool
I am fan from the beginning!
-
I'm actually sitting on a color picker I made that is built into SketchUp's view. Its pretty cool. I have not ever gotten around to using it for anything, maybe I should post the code so someone else can use it.
Advertisement