[Plugin] fixSolid v1.7 - updated 20/10/2012  Topic is solved

[Plugin] fixSolid v1.7 - updated 20/10/2012

Postby GWD » Fri Dec 17, 2010 11:34 am

This Plugin try to fix problems with groups that suppose to be solids but don't show up like a solid in SU.

fixSolid fix the following problems:
* heal missing faces
* remove single edges
* remove separate faces
* remove edges between coplanar faces
* remove innerfaces
* remove all edges with only 1 face connected (RISKY FIX)

fixSolid.JPG


Usage:
1. Select solid
2. Right-Click Context-Menu. If the solid is broken the option 'FIX SOLID' is present. If the option isn't present there are no problems with he solid.
3. Select 'FIX SOLID'
4. You can set two options:
- Risky fix: if you choose a risky fix it's possible that a part of the solid wil be deleted. This action can be undone with the normal SU undo function. The risky fix try to fix all problems, the normal fix only fixes problems with no risk.
- Fix coplanar faces: If you choose no, the edges between coplanar will not be removed.


NOTE:
A newer version [posted under the OP's new login] is available here...

viewtopic.php?p=436001#p436001
TIG

0
Last edited by GWD on Mon Dec 20, 2010 9:27 am, edited 5 times in total.

GWD 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3 - updated 19/12/2010

Postby GWD » Sun Dec 19, 2010 12:41 pm

No feedback?
0

GWD 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby thomthom » Sun Dec 19, 2010 1:18 pm

Nice plugin. :thumb:

Got a couple of notes:

1. It's advisable to wrap your plugin into a module and use module variables instead of global variables - this ensures there will be no conflict with other plugins.

2. Detecting edges between co-planar faces: You are using this: if faces[0].normal == faces[1].normal then
I used that for CleanUp, but I ran into issues where it's either erase edges between non-coplanar faces or leave some edges that should have been erased in some cases. As it turns out, the correct way - according to the Googler I spoke to - is to take all the vertices of the two faces you compare and check if they all lie on the same plane.

3. e.typename == "Edge" - .typename is very slow because you do string comparisons. Instead, compare it's class: e.is_a?( SketchUp::Edge )
0
Thomas Thomassen — SketchUp Monkey & Coding addict
List of my plugins and link to the CookieWare fund
User avatar
thomthom 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby driven » Sun Dec 19, 2010 2:00 pm

hi Guy,

I'll give it a try...

it's good to see another solid/manifold ruby

over the next week I should get some time to give you feedback, I'm on a mac so sometimes I have varying results to pc's

john
0
learn from the mistakes of others, you may not live long enough to make them all yourself...

driven 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby EscapeArtist » Sun Dec 19, 2010 9:41 pm

Looks like a good plugin. Will give it a try as it progresses with TT's suggestions.
0
User avatar
EscapeArtist 
Top SketchUcator
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby vidy » Sun Dec 19, 2010 10:28 pm

thanks Guy, for the plugin, but is it only for SU 8?? can not see it in the plugin menu? im using SU 7.1

regards,
0
still so much to learn..

vidy 
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby Pherim » Sun Dec 19, 2010 10:39 pm

That's because solids had not been included in SU 7 and are only available since SU 8.
0

Pherim 
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby thomthom » Sun Dec 19, 2010 11:33 pm

Pherim wrote:That's because solids had not been included in SU 7 and are only available since SU 8.

Should be able to work anyway. There is not difference in the geometry, it's just that SU8 knows how to recognize solids.
0
Thomas Thomassen — SketchUp Monkey & Coding addict
List of my plugins and link to the CookieWare fund
User avatar
thomthom 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby GWD » Mon Dec 20, 2010 1:33 am

thomthom wrote:
Pherim wrote:That's because solids had not been included in SU 7 and are only available since SU 8.

Should be able to work anyway. There is not difference in the geometry, it's just that SU8 knows how to recognize solids.


The plugin works only on SU 8, because the function i use the check if it's a solid is a new function in v8.
0

GWD 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby GWD » Mon Dec 20, 2010 3:32 am

thomthom wrote:Nice plugin. :thumb:

Got a couple of notes:

1. It's advisable to wrap your plugin into a module and use module variables instead of global variables - this ensures there will be no conflict with other plugins.

2. Detecting edges between co-planar faces: You are using this: if faces[0].normal == faces[1].normal then
I used that for CleanUp, but I ran into issues where it's either erase edges between non-coplanar faces or leave some edges that should have been erased in some cases. As it turns out, the correct way - according to the Googler I spoke to - is to take all the vertices of the two faces you compare and check if they all lie on the same plane.

3. e.typename == "Edge" - .typename is very slow because you do string comparisons. Instead, compare it's class: e.is_a?( SketchUp::Edge )


ThomThom,

1. How can i wrap my plugin in a module?
2. OK -> v1.4
3. I tried to switch .typename == "Edge" but then I get errors, i also can't find info about the .is_a? function?

regards,

Guy
0

GWD 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby derei » Mon Dec 20, 2010 4:39 am

GWydouw wrote:3.can't find info about the .is_a? function?

http://ruby-doc.org/core/classes/Object.html#M000373 -first result after search on google :mrgreen:
0
DESIGNER AND ARTIST DEREI.UK
User avatar
derei 
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby thomthom » Mon Dec 20, 2010 7:59 am

GWydouw wrote:3. e.typename == "Edge" - .typename is very slow because you do string comparisons. Instead, compare it's class: e.is_a?( SketchUp::Edge )

[/quote]
What kind of error and what did you switch to?


As for modules:
http://ruby-doc.org/docs/ProgrammingRub ... dules.html
viewtopic.php?f=180&t=12423#p89313

Many other useful links in this sticky at the Developers section:
viewtopic.php?f=180&t=10142
0
Thomas Thomassen — SketchUp Monkey & Coding addict
List of my plugins and link to the CookieWare fund
User avatar
thomthom 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby GWD » Mon Dec 20, 2010 8:39 am

thomthom wrote:3. e.typename == "Edge" - .typename is very slow because you do string comparisons. Instead, compare it's class: e.is_a?( SketchUp::Edge )

What kind of error and what did you switch to?


As for modules:
http://ruby-doc.org/docs/ProgrammingRub ... dules.html
http://forums.sketchucation.com/viewtop ... 423#p89313

Many other useful links in this sticky at the Developers section:
http://forums.sketchucation.com/viewtop ... 80&t=10142

ThomThom,


The module works, but when I recplace the .typename with the .is_a? I get the following error:

Error: #<NameError: uninitialized constant FixSolids::SketchUp>
(eval):373
(eval):318:in `call'
(eval):318

regards,

Guy


NOTE:
A newer version [posted under the OP's new login] is available here...

viewtopic.php?p=436001#p436001
TIG

0

GWD 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.4 - updated 20/12/2010

Postby thomthom » Mon Dec 20, 2010 9:10 am

Sorry - I made a typo. It's Sketchup - not SketchUp - the thing is case sensitive.
0
Thomas Thomassen — SketchUp Monkey & Coding addict
List of my plugins and link to the CookieWare fund
User avatar
thomthom 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.4 - updated 20/12/2010

Postby thomthom » Mon Dec 20, 2010 9:11 am

Btw, here's some stats to how slow .typename is compared to .is_a? viewtopic.php?f=180&t=19576&view=unread#p162235
In case you where curious.
0
Thomas Thomassen — SketchUp Monkey & Coding addict
List of my plugins and link to the CookieWare fund
User avatar
thomthom 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.4 - updated 20/12/2010

Postby GWD » Mon Dec 20, 2010 9:29 am

thomthom wrote:Sorry - I made a typo. It's Sketchup - not SketchUp - the thing is case sensitive.


Thanks!
0

GWD 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby vidy » Tue Dec 21, 2010 3:38 am

GWydouw wrote:The plugin works only on SU 8, because the function i use the check if it's a solid is a new function in v8.


thanks for your confirmation :)
0
still so much to learn..

vidy 
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby kobus » Tue Dec 21, 2010 7:50 am

respect ! where thomthoms inspector was heading I presume.
0
you should be interested in the future. you will spend the rest of your life there

kobus 
 

Re: [plugin] fixSolid v1.3b - updated 19/12/2010

Postby thomthom » Tue Dec 21, 2010 8:23 am

GWydouw wrote:
thomthom wrote:
Pherim wrote:That's because solids had not been included in SU 7 and are only available since SU 8.

Should be able to work anyway. There is not difference in the geometry, it's just that SU8 knows how to recognize solids.


The plugin works only on SU 8, because the function i use the check if it's a solid is a new function in v8.

You could use the method I use with Solid Inspector - check that all edges have two faces connected. Then it'd work on older versions. Of course for SU8 and newer you want to use the built in version that's very quick.
0
Thomas Thomassen — SketchUp Monkey & Coding addict
List of my plugins and link to the CookieWare fund
User avatar
thomthom 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby Dave R » Tue Dec 21, 2010 12:13 pm

Nice plugin. It could be very useful. I tried it on a model that someone sent to me the other day. It fixed a few things in one component but still left errors. There were a lot of errors in that component to begin with and it certainly would reduce the time required to manually fix it. Unfortunately the plugin doesn't always seem to recognize that a component is not solid. At least it doesn't recognize that the component in the attached SKP is not solid although you can easily see several problems that keep it from being considered solid.
0
%

(THERE'S NO PLACE LIKE)

G28 X0.0 Y0.0 Z0.0

M30

%
User avatar
Dave R 
Global Moderator
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby GWD » Tue Dec 21, 2010 5:09 pm

Dave R wrote:Nice plugin. It could be very useful. I tried it on a model that someone sent to me the other day. It fixed a few things in one component but still left errors. There were a lot of errors in that component to begin with and it certainly would reduce the time required to manually fix it. Unfortunately the plugin doesn't always seem to recognize that a component is not solid. At least it doesn't recognize that the component in the attached SKP is not solid although you can easily see several problems that keep it from being considered solid.


At this moment fixSolid only work on groups not on components. I'll make it work on components to.
0

GWD 
PluginStore Author
PluginStore Author
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby Dave R » Tue Dec 21, 2010 5:11 pm

Thank you.
0
%

(THERE'S NO PLACE LIKE)

G28 X0.0 Y0.0 Z0.0

M30

%
User avatar
Dave R 
Global Moderator
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby nektares » Tue Dec 21, 2010 7:39 pm

this might become handy when importing external geometry from other apps, thanks a lot!
0

nektares 
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby Anssi » Wed Dec 22, 2010 12:32 pm

Guy,

You saved my day today! Thanks a lot!

Anssi
0
securi adversus homines, securi adversus deos rem difficillimam adsecuti sunt, ut illis ne voto quidem opus esset
User avatar
Anssi 
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby zapwizard » Fri Dec 31, 2010 6:08 pm

I haven't downloaded it yet, but I am very interested in using this plug-in to help heal solids for use in BSP based video game making.
0

zapwizard 
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby mariocha » Wed Jan 05, 2011 1:09 pm

Tried it. V1.5 works pretty well.
This is indeed gone be very, very useful.
Many thanks :D
0
Mario C.
Certified SketchUp Trainer, QC CA.
Every rule has exceptions, but some.
User avatar
mariocha 
Premium Member
Premium Member
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby niks » Tue Mar 22, 2011 8:18 am

thank you... very nice plugin :berserk:
0

niks 
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby rubiks » Thu Sep 01, 2011 9:21 am

:ecstatic: SO HAPPY, SO FRAKIN HAPPY. tried everything to fix <2 days> and i just couldn't do it. I find fixSolid. "right click - FIX - DONE" THANK YOU!!!!!!!!!!!!! :berserk:
0

rubiks 
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby majid » Thu Sep 01, 2011 3:11 pm

:ecstatic: :thumb: :thumb: :thumb: :thumb: worthy and timesaving, esp for me when impoert/export between wings3d and Sketchup in some cases!!!!
i.e when I was modeling this chair part,... it was a big bother... I must use wings for its sud... and SU for boleans... it was really confusing , to me to model this, and find small gaps and fix them when import/export datas
0
My V-Ray book for architects: https://goo.gl/cz1oRc
User avatar
majid 
Top SketchUcator
 

Re: [plugin] fixSolid v1.5 - updated 20/12/2010

Postby fumaru » Fri Sep 23, 2011 12:13 pm

OMG this is awsome.
Great Plugin thanks man.

Thanks to this, I dont need to rebuild my forms when it is just one small line that cause it to go out of place.

I use this in conjunction with Solid Inspector viewtopic.php?t=30504 , this is a great combo.
0

fumaru 
 

SketchUcation One-Liner Adverts

by Ad Machine » 5 minutes ago



Ad Machine 
Robot
 

Next


 

Return to Plugins

Who is online

Users browsing this forum: Snihald and 13 guests

Visit our sponsors: