[Plugin] ImageTrimmer
-
What am I doing wrong? I have a .png. I made it a component, selected it and then clicked on Image trimmer and get a warning 'Image trimmer: You selected an Image first.', so I exploded and tried again with same warning, I tried simplyfier and it works, but trimming does not, what am I doing wrong?
-
@solo said:
What am I doing wrong? I have a .png. I made it a component, selected it and then clicked on Image trimmer and get a warning 'Image trimmer: You selected an Image first.', so I exploded and tried again with same warning, I tried simplyfier and it works, but trimming does not, what am I doing wrong?
You don't use 'ImageTrimmer' on a 'Component' - you use it on a plain imported [unexploded] 'Image' - check in Entity Info to see what it is...
After it's 'trimmed' that Image is copied as a Material applied to Faces inside a new Component...
so then you can no longer 'trim' it, but of course you can 'simplify' the outlines later within the Component... -
Oxer, you might try importing the image as an image and then immediately running the plugin on it. See if that does what you want.
-
Hello TIG!
I don't know how use the plugin, i do this:
- I import a png file like image.
- I make a new component, its name the same like image.
- I make a new material with the png file with the same name, and i apply this material to the face inside the component.
- I select the image into SU and run the plugin.
Nothing happens, only the plugin creates a folder named "TrimmedImages" in the same directory that Model file, it contains the png file.
What i do bad?
I use Mac with OSX 10.6 and SU 8.
EDIT: Appears this message in Console Ruby
-
@dave r said:
Oxer, you might try importing the image as an image and then immediately running the plugin on it. See if that does what you want.
I have done so too, but appears a message error in Ruby Console.
-
@oxer said:
Hello TIG!
I don't know how use the plugin, i do this:
- I import a png file like image.
- I make a new component, its name the same like image.
- I make a new material with the png file with the same name, and i apply this material to the face inside the component.
- I select the image into SU and run the plugin.
Nothing happens, only the plugin creates a folder named "TrimmedImages" in the same directory that Model file, it contains the png file.
What i do bad?
I use Mac with OSX 10.6 and SU 8.
EDIT: Appears this message in Console Ruby
[attachment=0:2kel5wb4]<!-- ia0 -->Consola.jpg<!-- ia0 -->[/attachment:2kel5wb4]NO!
- Import the Image. [no need to make other things yourself]
- Place/Scale it like you want.
- Select the Image.
- Run 'ImageTrimmer' [the clue is in its name!]
- It makes a new Component Instance that has trimmed Faces matching the Image's transparent areas with the Image now applied as a new Material.
- You then choose to stand-up the new component, delete temporary files or 'simplify' the outlines.
- Later, you can Select the new Component Instance and use the 'simplify' tool on its outlines...
Please run it with the Ruby Console open - there might be a MAC error.
Check that .jar files are 'executable' Java files on your OS and not inadvertently set to open with your 'Zip/UnZip' application...
From the Ruby messages it seems that the 'EdgeDetector.jar' file isn't in the correct directory ?? There should be one file called 'SKMtools.rb' in the 'Plugins' folder and then a sub-folder in the 'Plugins' folder called 'SKMtools' that contains various .rb and .jar files etc. Your error message is saying it can't find the specified .jar file. Is it there? If so does the file path contain accented characters etc [unlikely] - that can cause Ruby's File operations to fail!
-
Oxer
PS: are you sure you have your files/folders in the correct 'Plugins' ? Type/Copy+Paste this into the Ruby Console to check the correct path to your Plugins folder...
Sketchup.find_support_file("Plugins")
-
@tig said:
Oxer
PS: are you sure you have your files/folders in the correct 'Plugins' ? Type/Copy+Paste this into the Ruby Console to check the correct path to your Plugins folder...
Sketchup.find_support_file("Plugins")
Yes, i have all file into Plugins folder
-
Oxer
I apologize - I have double checked my code and there was a stupid typo [for MAC users] that messed it up - two lines were 'transposed'...
Here is the updated file-zip http://forums.sketchucation.com/viewtopic.php?p=293677#p293677
Please retry and report back... -
I have downloaded the revision and the error persists.
-
I am getting these messages. The first one just after I click the Image Trimmer but then it says please wait then the second message appears "the edges images and data were not made". I using vista and java is up to date and I'm not sure if win zip or anything else is trying to open the .jar file or not. Not that big of a deal just thought I would post.
-
@unknownuser said:
I am getting these messages. The first one just after I click the Image Trimmer but then it says please wait then the second message appears "the edges images and data were not made". I using vista and java is up to date and I'm not sure if win zip or anything else is trying to open the .jar file or not. Not that big of a deal just thought I would post.
To see if anything is messing with .jar files double-click on
../Plugins/EdgeDetector.jar
and see what happens - if it opens with say 'WinRar' then edit that App's options to NOT open jar files... 'Jar' files should 'open' [execute] with Java...
From the message it seems that Java IS trying to execute the jar file.
Do you have appropriate access-rights to read-write-execute files in the../Plugins/SKMtools
folder/sub-folder ?
Can you edit the permissions to that folder to allow you full access.
Can you try this to see if the 'jar' is executable.
Find a simple .png file with some transparent areas and copy it to say 'C:\Temp\my.png
'.
Open the../Plugins/SKMtools
folder and make two files called 'from.ini
' and 'to.ini
' [if they exists use them].
Edit them with 'Notepad' or equivalent plain-text editor, so the 'from.ini' contains one line of textC:\Temp\my.png
[no carriage return] and the 'to.ini' contains one line of textC:\Temp\my
[no carriage return].
Now double-click on the file in SKMtools calledEdgeDetector.jar
- you should now find two extra files in 'C:\Temp' folder namedC:\Temp\my[Edged].png
andC:\Temp\my[Edged].dat
.
If you open the Edged .png file you should see it is the outlines of the solid areas black-on-white, the .dat file opened in Notepad should be a lot of 01s gobbledygook...
Please try these ideas and report back... -
@oxer said:
I have downloaded the revision and the error persists.
[attachment=0:3hofwgns]<!-- ia0 -->Ruby Console.jpg<!-- ia0 -->[/attachment:3hofwgns]Oxer can you test the ideas outlined in my last post, regarding access and if the 'jar' will 'execute' - adjust the 'Temp' folder and 'plain-text editor' to the MAC's equivalents...
-
Hi TIG,
I have updated to the most recent version of the plugin and tried running it on my PC. I get the following in the Ruby console and it appears the plugin quietly exits.
Error; #<NoMethodError; undefined method `length' for nil;NilClass> C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;241;in `add_edges' C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;220;in `make_edges' C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;170;in `process_image' C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;147;in `initialize' C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;618;in `new' C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;618 C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/image_class.rb;946;in `call' C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/image_class.rb;946
-
@dave r said:
Hi TIG,
I have updated to the most recent version of the plugin and tried running it on my PC. I get the following in the Ruby console and it appears the plugin quietly exits.Error; #<NoMethodError; undefined method `length' for nil;NilClass> > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;241;in `add_edges' > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;220;in `make_edges' > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;170;in `process_image' > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;147;in `initialize' > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;618;in `new' > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb;618 > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/image_class.rb;946;in `call' > C;/Program Files/Google/Google SketchUp 8/Plugins/SKMtools/image_class.rb;946
The error shows that Nil lines were read from the
your_image[Edges].dat
file.
First test - is it writing the original image fileyour_image.png
, andyour_image[Edges].png
andyour_image[Edges].dat
files into a folder called 'TrimmedImages' in your Model's folder ?
Second test - if it is can you 'read' all of them ?
Open the .dat with a plain-text-editor and see if it has 01s in it...
Does the Image you are processing have transparent areas?
Even if it did not it should still make a .dat file [just random ideas at the moment]...
Do you have appropriate permissions to read/write to the SKMtools folder and Model's folder ?
Do you have 'from.ini' and 'to.ini' files left in your ../Plugins/SKMtools folder?
If so read them with a plain-text-editor does the first saypath_to_model_folder\TrimmedImages\your_image.png
and the secondpath_to_model_folder\TrimmedImages\your_image
?
If not edit them to suit, if they don't exist make them containing appropriate paths [one line - no 'carriage-return'].
Also ensure there's a folder called 'TrimmedImages' on the specified path.
If you have the two '[Edges]' 'image' files mentioned above move them out of that folder.
However, you must havepath_to_model_folder\TrimmedImages\your_image.png
in there.
Now double-click on 'EdgeDetector.jar' in the ../Plugins/SKMtools folder - does it make the two files from the in the
'your_image.png' ??
Please test and report back... -
FWIW, When I reported the problem it was on my PC at home. I tried it here at work on this machine (also XP) and got the same results.
First test - is it writing the original image file your_image.png, and your_image[Edges].png and your_image[Edges].dat files into a folder called 'TrimmedImages' in your Model's folder ?
Yes it does do those things.
Second test - if it is can you 'read' all of them ?
Open the .dat with a plain-text-editor and see if it has 01s in it...
Yes. I can read all of the files and the .DAT file contains a lot of 0s and a few 1s.
Does the Image you are processing have transparent areas?
Yes. At least I can see the axes through the transparent areas.
Even if it did not it should still make a .dat file [just random ideas at the moment]...
Do you have appropriate permissions to read/write to the SKMtools folder and Model's folder ?It's XP and I have admin rights. An earlier version of the plugin worked fine.
Do you have 'from.ini' and 'to.ini' files left in your ../Plugins/SKMtools folder?
No. those files aren't there.
If so read them with a plain-text-editor does the first say path_to_model_folder\TrimmedImages\your_image.png and the second path_to_model_folder\TrimmedImages\your_image ?
If not edit them to suit, if they don't exist make them containing appropriate paths [one line - no 'carriage-return'].**Uh.... Can I do this in NotePad? Type, "path_to_model_folder\TrimmedImages\your_image.png" and save it as from.ini?
For the to.ini file is there an extension on your_image?[b]
Also ensure there's a folder called 'TrimmedImages' on the specified path.
If you have the two '[Edges]' 'image' files mentioned above move them out of that folder.
However, you must have path_to_model_folder\TrimmedImages\your_image.png in there.[b]The .dat file stays or goes? I've moved the one image file with [Edges] in the name out of the folder but haven't continued because I need to make the INI files.**
-
I beg to report that I tried with a different PNG image and it work. There must be something wrong with the other image I used. Is there a way to tell what that something is?
-
@unknownuser said:
To see if anything is messing with .jar files double-click on ../Plugins/EdgeDetector.jar and see what happens - if it opens with say 'WinRar' then edit that App's options to NOT open jar files... 'Jar' files should 'open' [execute] with Java...
It doesn't do anything once I click on it.@unknownuser said:
Can you edit the permissions to that folder to allow you full access.
By everything I can tell I have full permission to the folders. Far as for all the other, I'm not sure I've done it right but nothing happens. -
@tig said:
First test - is it writing the original image file
your_image.png
, andyour_image[Edges].png
andyour_image[Edges].dat
files into a folder called 'TrimmedImages' in your Model's folder ?
Second test - if it is can you 'read' all of them ?
Open the .dat with a plain-text-editor and see if it has 01s in it...
Does the Image you are processing have transparent areas?
Even if it did not it should still make a .dat file [just random ideas at the moment]...
Do you have appropriate permissions to read/write to the SKMtools folder and Model's folder ?
Do you have 'from.ini' and 'to.ini' files left in your ../Plugins/SKMtools folder?
If so read them with a plain-text-editor does the first saypath_to_model_folder\TrimmedImages\your_image.png
and the secondpath_to_model_folder\TrimmedImages\your_image
?
If not edit them to suit, if they don't exist make them containing appropriate paths [one line - no 'carriage-return'].
Also ensure there's a folder called 'TrimmedImages' on the specified path.
If you have the two '[Edges]' 'image' files mentioned above move them out of that folder.
However, you must havepath_to_model_folder\TrimmedImages\your_image.png
in there.
Now double-click on 'EdgeDetector.jar' in the ../Plugins/SKMtools folder - does it make the two files from the in the
'your_image.png' ??
Please test and report back...Hi TIG again,
I have probed the before instructions and now the two files ( my_image[Edges].dat & my_image[Edges].png) appear into TrimmedImages folder with the original image my_image.png, what i do now?
Thanks TIG. -
@oxer said:
@tig said:
First test - is it writing the original image file
your_image.png
, andyour_image[Edges].png
andyour_image[Edges].dat
files into a folder called 'TrimmedImages' in your Model's folder ?
Second test - if it is can you 'read' all of them ?
Open the .dat with a plain-text-editor and see if it has 01s in it...
Does the Image you are processing have transparent areas?
Even if it did not it should still make a .dat file [just random ideas at the moment]...
Do you have appropriate permissions to read/write to the SKMtools folder and Model's folder ?
Do you have 'from.ini' and 'to.ini' files left in your ../Plugins/SKMtools folder?
If so read them with a plain-text-editor does the first saypath_to_model_folder\TrimmedImages\your_image.png
and the secondpath_to_model_folder\TrimmedImages\your_image
?
If not edit them to suit, if they don't exist make them containing appropriate paths [one line - no 'carriage-return'].
Also ensure there's a folder called 'TrimmedImages' on the specified path.
If you have the two '[Edges]' 'image' files mentioned above move them out of that folder.
However, you must havepath_to_model_folder\TrimmedImages\your_image.png
in there.
Now double-click on 'EdgeDetector.jar' in the ../Plugins/SKMtools folder - does it make the two files from the in the
'your_image.png' ??
Please test and report back...Hi TIG again,
I have probed the before instructions and now the two files ( my_image[Edges].dat & my_image[Edges].png) appear into TrimmedImages folder with the original image my_image.png, what i do now?
Thanks TIG.OK... so we now know that the '
EdgeDetector.jar
' file IS working when it's double-clicked - as it does 'execute' and it makes the files we need.
We now need to find why it isn't 'executing' withUI.openURL()
like it should.
Please try this in the Ruby Console...
Move the two '..[Edges].png' and ..[Edges]'.dat' files out of the 'TrimmedImages' folder temporarily.
To get a file to 'execute' on a MAC it's usual to change to the appropriate directory first - type
Dir.chdir(path_to_SKMtools)
[you add the full path to the SKM folder]
To check where you are typeDir.pwd
- it should now show you are 'in' the 'SKMtools' folder.
and then use
jar="EdgeDetector.jar" File.chmod(0777, jar)
- to make sure it is 'executable'.
then type
UI.openURL("file:///"+jar)
The jar should 'open' - execute - and make the two '[Edges]' files we need.
If not can you try other options like
UI.openURL(jar)
or
UI.openURL(full_path_to_SKMtools/EdgeDetetcor.jar)
where the 'path' is the 'full path' to the required jar-file in the SKMtools folder...
any other permutations you can think of for trying to 'run' the 'EdgeDetetcor.jar' file would be appreciated...I am a bit at a loss to sort out MAC problems like this direct - I don't have access to a MAC... BUT if you can help resolve this I'm sure lots of other MAC users will be grateful, as will I...
Advertisement