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
 Move line-endpoints in every direction?

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
PeterPanino Posted - Sep 13 2020 : 05:05:34
I create Line Layers with this code:

ImageEnView1.MouseInteractGeneral := [];
ImageEnView1.MouseInteractLayers := [mlClickCreateLineLayers, mlMoveLayers, mlResizeLayers];
ImageEnView1.Layers[0].Selectable := False;


This works well, and WHILE drawing the line with the mouse, I can draw the line in any direction.

BUT: After having finished drawing the line, when moving one of the line-endpoints with the mouse, allows me to drag only in a range of 90 degrees!

Why this restriction? Is it somehow possible to overcome this restriction and move the line-endpoint in every direction in the full range of 360 degrees like when initially drawing the line?
7   L A T E S T    R E P L I E S    (Newest First)
xequte Posted - Sep 20 2020 : 16:28:06
Hi Peter

I'm not aware of any issues, just that when we designed that we didn't envision them generally being used together, so there might be something we overlooked.

Nigel
Xequte Software
www.imageen.com
PeterPanino Posted - Sep 20 2020 : 07:44:00
 
it might be better not to use mlMoveLayers and mlEditLayerPoints together.


Why? I have not encountered any problems when creating Line Layers with mlMoveLayers and mlEditLayerPoints together.
xequte Posted - Sep 15 2020 : 17:15:52
Hi Peter

ImageEn does have its own set of custom cursors:

https://www.imageen.com/help/TImageEnView.Cursor.html

However there is not one similar, but different from the standard NWSE cursor. We'll look at adding one in a later update.

Also, although the UI does not prevent it, it might be better not to use mlMoveLayers and mlEditLayerPoints together.

Nigel
Xequte Software
www.imageen.com
PeterPanino Posted - Sep 15 2020 : 11:26:42
Hi Nigel,

with this code:
ImageEnView1.MouseInteractLayers := [mlClickCreateLineLayers, mlMoveLayers, mlResizeLayers, mlEditLayerPoints];
it works perfectly as desired.

BTW, just a very small suggestion: When moving the whole layer we have the standard MOVE mouse cursor, which is fine:



But when moving just one of the LINE-END-POINTS (which is a completely different action), currently the SAME standard MOVE mouse cursor is used (which is inconsistent):



I suggest using a slightly different Move cursor for moving line-endpoints (like in the above case). For example, the same MOVE cursor, but in red color:



(After research I found out that Windows 10 has an API to change the mouse cursor color. Or you could just use your own custom cursor).
xequte Posted - Sep 15 2020 : 03:19:06
Hi Peter

Your only specified options are to create, size or move the layer, not to rotate or edit points.

Please see mlEditLayerPoints or mlEditLayerPoints:

https://www.imageen.com/help/TIEMouseInteractLayers.html

Nigel
Xequte Software
www.imageen.com
PeterPanino Posted - Sep 14 2020 : 09:00:57
I do not use "shift key lock". For security, I have added it to my line-layer creation code:

ImageEnView1.MouseInteractGeneral := [];
ImageEnView1.MouseInteractLayers := [mlClickCreateLineLayers, mlMoveLayers, mlResizeLayers];
ImageEnView1.ShiftKeyLock := [];
ImageEnView1.Layers[0].Selectable := False;


Here is a small video of what happens after having created the line-layer with the mouse (activate animated gifs in your browser):



As you can see, the line can only be moved inside an angle of 90 degrees.
xequte Posted - Sep 13 2020 : 20:30:05
That's odd. Have you specified a shift key lock?

https://www.imageen.com/help/TImageEnView.ShiftKeyLock.html

Nigel
Xequte Software
www.imageen.com