[Plugin] ImageTrimmer
-
hi TIG,
I am on my work PC (Windows 10) and using SketchupPro 2020.
I have gone through the entire thread and tried to see what wrong but to no success.
i have made sure Java is installed and all permissions are at full.in one of your post, you ask to paste the code and see what happens...
this is what turns up....
UI.openURL("file:///"+"../full/path/to/EdgeDetector.jar") false
while trying to run imagetrimmer on a file, this is what i see in the RC :
Error: #<Errno::ENOENT: No such file or directory @ rb_sysopen - C:\Users\jenu.varkey\Desktop\TrimmedImages\SS-Poem[Edges].dat> C:/Users/jenu.varkey/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:277:in
readlines'
C:/Users/jenu.varkey/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:277:inmake_edges' C:/Users/jenu.varkey/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:201:in
process_image'
C:/Users/jenu.varkey/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:170:ininitialize' C:/Users/jenu.varkey/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:834:in
new'
C:/Users/jenu.varkey/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:834:inblock in <top (required)>'
any ideas?
-
Could be several things...
Are .jar files definitely set to open in Java - i.e. the file-type suffix hasn't been hijacked by a compression app ?
Assuming that's OK can you post the PNG itself [so I can be sure what's wrong with it]... or try this fix...
If all pixels have some transparency set [even a small amount] then it makes an empty file for 'edges' etc - there aren't any to find.
The way to check this is to use say Gimp flatten the image - to remove all transparency - then add back a transparency [alpha] layer, then select the background pixels [using the magic-wand] and then delete those so you can see the checkerboard pattern...
Crop the image to remove unwanted transparent area around its edges, which will be ignored anyway during the trimming, but which will have to be examined [fruitlessly]
You should now have a usable solid image, with just the background pixels 100% transparent.
Save the PNG and re-import / ImageTrimmer process again...Also note that any solid areas are unlikely survive if they are only 1 pixel wide, so consider this in the PNG...
Good luck...
-
Dear TIG,
Know you must be so sick of answering questions on this...So here's where I'm at:
The Image must be imported as an Image, NOT a texture. - TICK
It must be a PNG. - TICK
It must have a transparency alpha-channel. - TICK
The background pixels to be removed must on that. - TICK
ALL other pixels must be 100% opaque. - TICK
If they have any transparency at all they will also be removed ! - NOTEDSave the PNG and import it as an Image into your SKP. - TICK
Select it. - TICK
Choose ImageTrimmer on the Tools menu. TICK
Answer the prompts... NOPE - NO PROMPTS, HOWEVER, I GET THE THE LINE, DAT AND PNG FILE IN THE SUBFOLDER (SEE ATTACHMENTS)Run with the Ruby Console open to see if there are any error-massages...
HERE'S WHAT I GET:
Error: #<NoMethodError: undefined method
length' for nil:NilClass> C:/Users/nixch/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:278:in
make_edges'
C:/Users/nixch/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:201:inprocess_image' C:/Users/nixch/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:170:in
initialize'
C:/Users/nixch/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:834:innew' C:/Users/nixch/AppData/Roaming/SketchUp/SketchUp 2020/SketchUp/Plugins/SKMtools/ImageTrimmer.rb:834:in
block in <top (required)>'Java installed and enabled on your computer [the usual default]. - TICK
Also check that the .jar file-type is set to open with Java [execute] and NOT to open in your [de]compression application - some hijack various file extensions that are used by things like Java and stop them executing... - TICK
[/attachment]The only slightly untoward event is that my virus protector is giving me a sequence of 3 warnings (I've attached 2). I hit the "Allow" every time (even when I've told it not to prompt me for 30 minutes it still pops up).
Windows 10, Sketchup Pro 2020
Have attempted on 2 other png images and same sequence.Please help...
[attachment=4:9vweqji1]<!-- ia4 -->shrub_Elev_2[Edges].png
[attachment=3]shrub_Elev_2.png<!-- ia4 -->[/attachment:9vweqji1]
-
What you have done so far seems fine.
I repeated it with your PNG and got this result attached...
My SKP was on my Desktop, but ones in my Documents folder work fine too...The main difference seems to be your over-zealous AntiVirus tool which attempts to block the JAR files running - not seen that before !
Do you tick the box to remember the allowance ?
You must allow it to create the files [obviously], when first run you might be causing a glitch by the interruption - but after that if you told it to ignore the JAR's actions it should be OK ??You could also try switching off the AntiVirus briefly while running the tool and see if that is indeed the culprit...
What s your AntiVirus app ? -
So I temporarily switched off Anti-Virus Protector (Kaspersky) and it worked. Hooray!
Weirdly, no matter what I did (allow, remember my preferences etc etc) it kept re-prompting me.
I've had plenty of issues with it being over-zealous. I guess that's preferential to being under-enthusiastic at protecting my computer, just a bit of a faff.Only issue I have now is that when I change the axis in the lovely new component it moves the texture around but that's not a big worry. Can sort that out myself I reckon.
Thanks a mill for your help.
@tig said:
What you have done so far seems fine.
I repeated it with your PNG and got this result attached...
My SKP was on my Desktop, but ones in my Documents folder work fine too...The main difference seems to be your over-zealous AntiVirus tool which attempts to block the JAR files running - not seen that before !
Do you tick the box to remember the allowance ?
You must allow it to create the files [obviously], when first run you might be causing a glitch by the interruption - but after that if you told it to ignore the JAR's actions it should be OK ??You could also try switching off the AntiVirus briefly while running the tool and see if that is indeed the culprit...
What s your AntiVirus app ?[attachment=0:dc4tca6g]<!-- ia0 -->Capture.PNG<!-- ia0 -->[/attachment:dc4tca6g]
-
Why do you need to move the axes ?
If the image has become a component, then select that and explode then remake the component this time setting its axes where you want - at that point the texture shouldn't 'jump' ??
Use the same name to overwrite the original... -
Will do, thanks.
I move the axes upwards slightly for most shrubs so that they "sit" on the planting surface in a more credible way - essentially planting them slightly buried.@tig said:
Why do you need to move the axes ?
If the image has become a component, then select that and explode then remake the component this time setting its axes where you want - at that point the texture shouldn't 'jump' ??
Use the same name to overwrite the original... -
Hi Tig,
As with many I am having problems with the EdgeTrimmer. I am using Google Sketchup Pro 8. Windows 10. Recently installed the latest version of JAVA. All of the Jar files have the JAVA logo which I would guess that it should work. Checked all of the files and their locations and the ToolBox loaded correctly. Full permissions are granted for the plugin folder and subfolders. It does not perform as the directions would indicate. No edges, did not give messages to tilt up, etc.
The following is the Ruby Console output when I ran the ImageTrimmer tool. Any idea what is happening?
Error: #<NoMethodError: undefined method
material' for nil:NilClass> C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/SKMtools/image_class.rb:316:in
use_as_material'
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/SKMtools/image_class.rb:599:insave_imagefile' C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb:191:in
process_image'
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb:170:ininitialize' C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb:834:in
new'
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/SKMtools/ImageTrimmer.rb:834Thank you for your help.
Ron
-
Please attach the PNG image file that you want to trim...
If the JAR files are working OK, then I suspect that perhaps the PNG itself has some transparency [alpha] assigned for all of its pixels - which means all pixels are ignored and the result is 'empty'...
Also even PNGs with some solid pixels can fail if they are in 'filaments' of only 1 pixel wide - again these get skipped in the trimming...
Only the 'background' you want to remove can have any transparent pixels, the ones to be kept must be 100% solid.But seeing the actual PNG will help confirm the problem... otherwise we have to guess...
-
@tig said:
Please attach the PNG image file that you want to trim...
If the JAR files are working OK, then I suspect that perhaps the PNG itself has some transparency [alpha] assigned for all of its pixels - which means all pixels are ignored and the result is 'empty'...
Also even PNGs with some solid pixels can fail if they are in 'filaments' of only 1 pixel wide - again these get skipped in the trimming...
Only the 'background' you want to remove can have any transparent pixels, the ones to be kept must be 100% solid.But seeing the actual PNG will help confirm the problem... otherwise we have to guess...
Attached is the file that has the transparency. Ron
-
You need to fix the PNG...
Then it works OK.
The PNG has an alpha defined for all pixels - although the main background is transparent the remainder are also slightly transparent.
Here's how I fixed it...
Open the PNG in Gimp [or a similar app].
Flatten the image [no alpha at all].
Add an alpha channel layer.
Select the black background using the magic wand.
Note that that tool's sensitivity might need downgrading as her suit is also in shades of black.
Delete those to show a transparent background.
Select a few remaining black islands - e.g. between her calves, in her hair etc...
Delete those too.You also need to crop the PNG's content - otherwise thousands of background pixels will be inspected without any real effect - other than extending the processing time unnecessarily.
I've attached the reworked PNG... and a screenshot of it inside a SKP model...
-
@tig said:
You need to fix the PNG...
Then it works OK.
The PNG has an alpha defined for all pixels - although the main background is transparent the remainder are also slightly transparent.
Here's how I fixed it...
Open the PNG in Gimp [or a similar app].
Flatten the image [no alpha at all].
Add an alpha channel layer.
Select the black background using the magic wand.
Note that that tool's sensitivity might need downgrading as her suit is also in shades of black.
Delete those to show a transparent background.
Select a few remaining black islands - e.g. between her calves, in her hair etc...
Delete those too.You also need to crop the PNG's content - otherwise thousands of background pixels will be inspected without any real effect - other than extending the processing time unnecessarily.
I've attached the reworked PNG... and a screenshot of it inside a SKP model...
Thank you so much!!
-
@flyboy308 said:
@tig said:
You need to fix the PNG...
Then it works OK.
The PNG has an alpha defined for all pixels - although the main background is transparent the remainder are also slightly transparent.
Here's how I fixed it...
Open the PNG in Gimp [or a similar app].
Flatten the image [no alpha at all].
Add an alpha channel layer.
Select the black background using the magic wand.
Note that that tool's sensitivity might need downgrading as her suit is also in shades of black.
Delete those to show a transparent background.
Select a few remaining black islands - e.g. between her calves, in her hair etc...
Delete those too.You also need to crop the PNG's content - otherwise thousands of background pixels will be inspected without any real effect - other than extending the processing time unnecessarily.
I've attached the reworked PNG... and a screenshot of it inside a SKP model...
Thank you so much!!
Tig. Even using your FIXED version of the image, I still could not get it to work. After further investigation, I found that the program would not run with my Google Sketchup Pro version 8, 32-bit, on my Windows 10 64-bit operating system. Go figure. But it does work perfectly on my original image using both Sketchup 2015 and Sketchup 2017 Make. I could not find a 64-bit version of Sketchup 8 to see if that would work. This might help someone else or maybe someone who has success with the older version might respond.
Once again thank you for looking at this issue for me. Ron
-
-
@flyboy308 said:
I could not find a 64-bit version of Sketchup 8 to see if that would work.
There is no such thing.
-
Hello All. I'm having trouble with ImageTrimmer. When I click on a png file, the plugin opens Adobe Illustrator. Adobe doesn't know what to do with the jar file. I believe I selected Adobe when I first installed the SKM Tools plugin when it asked for an external editor. I can't figure out how to change that. Thanks for any help you can give.
-
Please read the recent posts in this thread about this issue...
Sometimes your computer's apps can 'hijack' the .JAR file-type and then they try to open it.
The .JAR file-type should only be assigned to be opened in Java.
When the Ruby code tries to 'open' the JAR file and another app intervenes it will fail.So make sure that your computer's app are not trying to do this...
Typically the apps that do this are 'compression' apps, but others - like your 'Adobe' - can also balls-up the file-type assignments !Having 'Adobe' set as your image-editor in SketchUp's preferences should not be an issue.
-
Hello, first of all, thank you so much for this wonderfull extension
Like most of my friends before, i got an issue using it.The set up is correct, i did everything. So it might be an issue with the png file ?
It comes from illustrator, i did it by myself, here it is.I'm a bit lost, some help would be wonderfull
Thank you
-
@timagin said:
The set up is correct, i did everything.
What version of SketchUp are you using? Your profile indicates a version that does not exist.
-
I assume you have JAR files set to open properly in Java and not some compression apps... ?
I assume you want the PNG's black parts solid and the rest as the punched-holes ?
I took too long - suggesting there's something wrong with the PNG's pixels...I remade the PNG with total opacity and then added back in an alpha-layer for the deleted holes...
I still takes ages to process... But it worked.Here's an image taken of from my SKP.
I've also attached the redone PNG for you to retry...
Advertisement