ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 Curve question

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

View 
UserName:
Password:
Format  Bold Italicized Underline  Align Left Centered Align Right  Horizontal Rule  Insert Hyperlink   Browse for an image to attach to your post Browse for a zip to attach to your post Insert Code  Insert Quote Insert List
   
Message 

 

Emoji
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Black Eye [B)]
Frown [:(] Shocked [:0] Angry [:(!] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

 
Check here to subscribe to this topic.
   

T O P I C    R E V I E W
pierrotsc Posted - Nov 26 2018 : 16:24:05
I modified the color curve demo to be able to add layers.
If i load an image and change the curve, the image gets darker or lighter. now if i add a layer and assign the imageenview, when i move the point on the curve, only the selected layer (new one) gets modified. the background stayed the same as it was before i loaded a new layer.
I thought that all the layers should be modified but i guess not.
Is that the normal behavior ?
Thanks
Pierre
11   L A T E S T    R E P L I E S    (Newest First)
xequte Posted - Jan 27 2019 : 23:18:00
Hi

I investigated this today. TIEColorCurve is only using the TImageEnView for previewing, so it is correct for it to output to the active layer. You should use the LayerChange event of the TImageEnView to ensure the color curve is relevant to the selected layer.

I will improve the documentation.

Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Nov 28 2018 : 15:11:59
Thanks..I did not see anything about that in the latest. No hurry..Thanks
xequte Posted - Nov 28 2018 : 15:09:48
Hi

We'll do some work to improve the color curve handling with layers for the next release.

Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Nov 28 2018 : 11:25:58
ok..There is no Onaddpoint event :)
w2m Posted - Nov 28 2018 : 11:17:02
Actually to apply the existing curve to a layer try this:

procedure TFormCurves.ImageEnView1LayerNotify(Sender: TObject; layer: Integer;
  event: TIELayerEvent);
begin
  if event = ielSelected then
  begin
    ImageEnView1.LayersCurrent := layer;
    IEColorCurve1.AssignSource(ImageEnView1.IEBitmap);
  end;
end;

This will apply the curve to any selected layer.

Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development
pierrotsc Posted - Nov 28 2018 : 11:12:04
will do..working on it. thanks
w2m Posted - Nov 28 2018 : 11:10:38
Try this:

procedure TFormCurves.ImageEnView1LayerNotify(Sender: TObject; layer: Integer;
  event: TIELayerEvent);
begin
  if event = ielSelected then
  begin
    ImageEnView1.LayersCurrent := layer;
    IEColorCurve1.AssignSource(ImageEnView1.IEBitmap);
    IEColorCurve1.ResetAllCurves();
  end;
end;


Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development
pierrotsc Posted - Nov 28 2018 : 08:44:18
yes, that is what i mean but the curve will not revert to the state that created the modification when you switch back to the original layer. No worry, let me play with that.
xequte Posted - Nov 27 2018 : 22:33:58
Hi

The layer should be same as when you last modified it. Is that what you mean?



Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Nov 27 2018 : 08:42:39
Thank you. so let me ask you another question. I have not tried yet. If i modify the curve in layer 0, add another layer and then modify this layer too. it looks like layer 0 still show the original modification. now if i select back layer 0, i assume the curve does not go back to its original setting, the one I had before i created the new layer ?
xequte Posted - Nov 26 2018 : 22:44:29
Hi Pierre

Yes, because ImageEn treats each layer as a separate image for the purposes of editing. You would need to use the ApplyCurve() method to assign the changes to each layer.



Nigel
Xequte Software
www.imageen.com