Joshua Lamusga

Brush Factory v1.6 (Oct 29th, 2018)

Recommended Posts

5 hours ago, Eli said:

I do not have a computer with lots of memory so I probably did run out of something.

I didn't dispose bmpBrushRot. For some reason, despite being a local variable, it won't let me. I don't think drawing is asynchronous, but it seems to have trouble like that. I might look at it more after I get done with homework, but it should be fairly simple.

Share this post


Link to post
Share on other sites

Great plug-in. This is what I had been hoping for.

 

However, I have an interesting problem that I need to bring to your attention.

 

I am using a HP laptop with a HDMI, extended monitor.  I have PDN on the extended monitor, but the plug-in window only stays on the laptop's monitor.  When I use, pyrochild's smudge plugin, it opens in the extended monitor.  Trying to move the brush factory window to the extended monitor isn't working.

Share this post


Link to post
Share on other sites

@AnthonyScoffler In EffectConfigDialog_Load() try this ...

 this.DesktopLocation = Owner.PointToScreen(new Point(<x>, <y>));

It sets the location (DesktopLocation) of this (this form = the plugin dialog) to the specified x and y coordinates in relation to the screen the owner (paint.net) is on.

 

See https://msdn.microsoft.com/en-us/library/system.windows.forms.form.desktoplocation(v=vs.110).aspx

 

and https://msdn.microsoft.com/en-us/library/system.windows.forms.control.pointtoscreen(v=vs.110).aspx

Share this post


Link to post
Share on other sites
6 hours ago, TrevorOutlaw said:

Great plug-in. This is what I had been hoping for.

 

However, I have an interesting problem that I need to bring to your attention.

 

I am using a HP laptop with a HDMI, extended monitor.  I have PDN on the extended monitor, but the plug-in window only stays on the laptop's monitor.  When I use, pyrochild's smudge plugin, it opens in the extended monitor.  Trying to move the brush factory window to the extended monitor isn't working.

What a fantastic question; this is the kind of stuff that helps me in the future. I don't have any HD or external monitors to test with, and have always wondered about whether it would work on those (and high-density displays, but that's another story).

 

I just did what @Ego Eram Reputo said to do (thanks), so hopefully that works. I'd like you to tell me if it worked or not so I can decide if I need to do something else or if I should update the plugin itself. Thanks.

BrushFactory.zip

Share this post


Link to post
Share on other sites

I'm afraid it didn't work.  I have PDN in the extended monitor, but the plug in window stays on the main monitor.  I think I had the same problem with TR's Dodge and Burn plugin.

 

Share this post


Link to post
Share on other sites

^^ How strange. I'm using exactly this in a brand new plugin. It works across my dual monitor setup flawlessly. Pyrochild's Smudge plugin uses almost exactly the same thing.

 

I'm positioning the plugin window half-way across each screen, and 20px down from the top edge.

 this.DesktopLocation = Owner.PointToScreen(new Point(Width / 2, 20));

Have you got any monitor managers installed?

Share this post


Link to post
Share on other sites

" Have you got any monitor managers installed?"

 

I am using a HDMI connection.  Like I said earlier, I can use pyrochild's plug-in within the extended monitor and pretty much every other plug-ins.  TechnoRobb's Dodge and Burn plug-in also stays stuck in the main monitor and not move to the extended monitor.

Share this post


Link to post
Share on other sites

Anthony,

 

There is one more feature I would like to see in Brush Factory : a pressure sensitive eraser. I can undo with (Ctrl+z) but sometimes I would like to have a brush that would behave as an eraser with variable hardness.

Edited by Eli

Share this post


Link to post
Share on other sites
On 1/20/2017 at 6:32 AM, Eli said:

Anthony,

 

There is one more feature I would like to see in Brush Factory : a pressure sensitive eraser. I can undo with (Ctrl+z) but sometimes I would like to have a brush that would behave as an eraser with variable hardness.

It's very difficult, and is the reason I haven't made layer masking a thing, though I had thought of it and other blend modes some time ago.

1) I need to draw to an intermediate surface and lockbits and define my own copy mechanism to have blend modes and such, like doing alpha -= value to erase.

2) I was reluctant to bother since I have no stylus or touchscreen, but I can try when I rewrite the app.

 

I plan to rewrite this all in WPF and Direct2D some day, and actually take the ideas from photoshop's dynamic brushes, since I didn't ever look into it until I had version 1.3 of this plugin. But I have the ideas well tied-down in this plugin, so if I rewrite the whole thing, I'll be tightening down every aspect and possibly changing some structures to be more modular, etc. Since that goal will take time and it exists right now, a rewrite will probably be on the backburner.

 

Version 1.4 released

The changelog describes the additions of a line brush and symmetry mode. This update is rather minor and was done because I had free time to satisfy a request.

Edited by Joshua Lamusga
  • Upvote 2

Share this post


Link to post
Share on other sites

Thanks @AndrewDavid, I downloaded it again ant this is the content of the zip file : 

bfactory-zipdll-52ab8ad.png

 

As you can see, the date of the BrushFactory.dll is old (November 2016 and not May 2017). Maybe Joshua Lamusga packed an older dll in the zip file.

Share this post


Link to post
Share on other sites

Yes. I downloaded it from the google drive. 

 

Edit: Maybe we should just wait until Joshua gets back. :) 

Edited by Eli

Share this post


Link to post
Share on other sites

No - It gets weird

BrushFactory2.png.1e255e2ca0351a2900c603e01646571e.png

 

BrushFactory3.png.c38554595741ee5f075d82109af5efab.png

 

No matter what I do - I cant see the time stamp you are showing me.

I downloaded it twice and got 2 versions TODAY? Weird! I blame google. 

 

 

OK - I see what you see now by downloading the ZIP File. 

I don't do that!

I extract it on the google drive - then download the DLL

See if that makes a difference.

 

 

 

Edited by AndrewDavid

Share this post


Link to post
Share on other sites

I have tried extracting  on google drive and then bringing it to my pc but it stil is the old version. :(

Share this post


Link to post
Share on other sites

I just downloaded this (already have it on my computer) and it matches exactly:  12/12/16  File version: 1.0.0.25814

Share this post


Link to post
Share on other sites
2 hours ago, Joshua Lamusga said:

I tested my download link and it appears to be functioning normally. Here's a copy of the .dll for version 1.4 anyway

Hi Joshua, I just tried the new link you provided but for some reason it is not version 1.4. Everytime I try it is one of your older versions .

Spoiler

bfactory-properties-52af5eb.png

 

Share this post


Link to post
Share on other sites

dear josh

what we got with your link is 1.0.0.25814 and not 1.4.0.1645

so if you mean 1.4 = 1.0.0.25814 let us know 

so please we are wondering why you keep telling us this is the 1.4 version of your dll 

 

Snapshot_1.png

Snapshot_2.png

Share this post


Link to post
Share on other sites

I fixed the inconsistency in the version number for the file settings -- I think it was caused by moving from VS 2012 to VS 2017; I don't know what else might cause a change in behavior there.

Edited by Joshua Lamusga

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now