News:

 

Topic: Stepping > Move Increment  (Read 15868 times)

0 Members and 3 Guests are viewing this topic.

  • No avatar
  • Posts: 2103
  • Polygon
February 07, 2014, 03:13:23 am
Hi IStonia,

Something that has bugged me for a while, so thought time to bring this up.

When I have "Stepping > Move Increment" enabled, I would expect that the distance(value) entered (for the stepping) is what is used for anything controlled via stepping(such as move, inset, fillet etc), but that is not always the case. It appears that stepping distance can be multiplied by such as the objects size or distance from camera. I do not see the point of having a stepping function if it is simply ignored, or its value changed.
For simple examples:-
I create a box 1x1x1, set "Stepping > Move Increment" to 0.005, Zoom to fit. With the manipulator I move the object with stepping enabled, the box will step by the value of 0.005. When I zoom out and move the object again with same stepping distance set, the step increment increases, the further I zoom out the bigger the step increment made.
I get similar problems with tools, such as (for simple example) Steamline tool > Inset Polygon(S), if I have a small value for stepping.
The same problem again if I have larger objects, small stepping values are simply ignored.

One of the main selling points put forward about Nvil, is the addition of streamline tools, which are intended to streamline the workflow. But I do not see that when most of the time I cannot control the tools to what I need(specific distance set in stepping), and have to instead bring up the visual tool popups to have to enter values needed, (because Nvil is over-riding the stepping values I want to use).

Could you please look into this?

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
February 08, 2014, 04:46:29 am
The current implementation is the cursor move distance in screen is convert to scene world distance so visually the cursor move distance will be equal or close to the extrusion distance. The advantage of this behavior is during the extrusion, you can turn stepping on/off through Shift key and the extrusion still work properly without visual disturbing. The program dose not override your stepping value. When you zoom out too much, a little cursor move is a big move in scene so the stepping will be multiplied as the result. If you zoom in tool much, cursor move is not big enough to make a scene move distance that can activate stepping.

I guess you want to use screen interval to control the stepping. I need to find the way.

  • No avatar
  • Posts: 2103
  • Polygon
February 09, 2014, 01:11:08 am
The current implementation is the cursor move distance in screen is convert to scene world distance so visually the cursor move distance will be equal or close to the extrusion distance. The advantage of this behavior is during the extrusion, you can turn stepping on/off through Shift key and the extrusion still work properly without visual disturbing.
My question to that is, what use is the cursor while stepping?
From my using Nvil, the only thing the cursor does while stepping, is limit the (move)distance the stepping can make, due to the cursor stopping at boundary of screen.

Quote
The program dose not override your stepping value. When you zoom out too much, a little cursor move is a big move in scene so the stepping will be multiplied as the result.
and can make it impossible for a small stepping size to be used.

Quote
If you zoom in tool much, cursor move is not big enough to make a scene move distance that can activate stepping.
Due to the cursor stopping at boundary of screen.

Quote
I guess you want to use screen interval to control the stepping.
I just want to be able to use the stepping value I set.


  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
February 09, 2014, 04:56:31 am
I made a clip
http://youtu.be/jWv1wyh8SyA

As you can see, the cursor travel distance is about the same as extrusion distance no matter it's in stepping or non-stepping mode.

Of course, if the stepping value is too big or tool small compare to scene size, it will cause problems like you mentioned.
Do you have any suggestions for the solution, or do you know any other apps that handle this in the way you like. I saw a post in the morning about using composite tools that can fetch values from snapping input. Did you remove the post? I thought it could be a good idea, but I had to go out for work so didn't have time to reply.







« Last Edit: February 09, 2014, 05:10:33 am by IStonia »

  • No avatar
  • Posts: 2103
  • Polygon
February 09, 2014, 05:25:37 am
.......the cursor travel distance is about the same as extrusion distance no matter it's in stepping or non-stepping mode.
But I ask again, "What use is the cursor when stepping"?

If you are moving an object, or extruding a face (as simple examples), then there can be a need for snapping, so the cursor is used for that function. But when stepping, snaps are not functional, so there is actually no need for a cursor(any readout for stepping distance made could be placed at HUD)

Quote
Do you have any suggestions for the solution, or do you know any other apps that handle this in the way you like.
It is not a case of my wanting Nvil to be like another application, I just want to find a good workflow in Nvil. This issue with stepping is stopping me using the streamline tools how I believe I should be able to use them.

Quote
I saw a post about using composite tools that can fetch values from snapping input. Did you remove the post? I thought it could be a good idea, but I had to go out for work so didn't have time to reply.
I did post to see if it was possible(or easier) to create variables that took values from the stepping, and the variable could then be placed in/used by the "P_" functions.
I removed the post as I was not sure about that idea.

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
February 09, 2014, 07:40:29 am
I don't know how to answer your question as I think I still don't understand it correctly.

Would it be a good solution if I make it work in this way

1. Activate the extrude streamline tool.
2. Press down mouse button to activate the basic streamline tool.
3. Drag the cursor into the snapping input box. The program will make the extrusion according to snapping value and close the streamline tool.

  • No avatar
  • Posts: 2103
  • Polygon
February 09, 2014, 09:35:23 am
I don't know how to answer your question as I think I still don't understand it correctly.
OK, maybe some pics will help?

First of all, the vid you posted, it shows a polygon_normal extrusion, moving to the right with the cursor.

So that extrusion type as example:-

A simple box, (default config/settings)
I select the right hand side face of the box, and press the "A" key. The polygon_normal (NMB) extrusion is used, and the polygon extrusion and cursor move together. That is what you keep putting forward a need for.

Extrusion direction red arrow, cursor direction blue arrow.



This time, I select the left side polygon, press "A". I still need to move the mouse/cursor to the right(blue arrow) for correct polygon_normal direction extrude(red arrow).



This time select the top polygon. Press "A" Again, I have to move the mouse to the right(blue arrow) for the polygon_normal to extrude up(red arrow).



I could go on, but as you should already know, that with the polygon_normal extrusion, you always move the cursor to the right(or left for negative). You will also know that the cursor could be anywhere on screen when (with pre-selection) pressing the hotkey "A" for polygon_normal_extrude.

So, if you did not see the cursor at all, or it did not move the same distance as the extrusion, why would it make any difference for that function? (apart from the irritating possibility of the cursor stopping at the edge of the screen)


Quote
Would it be a good solution if I make it work in this way

1. Activate the extrude streamline tool.
2. Press down mouse button to activate the basic streamline tool.
3. Drag the cursor into the snapping input box. The program will make the extrusion according to snapping value and close the streamline tool.
I do not see how. When using such as the polygon_normal extrusion with stepping, I should not need to have to look for the cursor position, or have to position it to a specific place. Doing so just makes the function clunky.(having to check where the cursor is and then moving it in to a small specific window).

Please Note:
You keep putting forward "Extrude", when I am posting concerning "Stepping". Stepping is for various other tools/functions as well as extrude.





« Last Edit: February 09, 2014, 09:47:00 am by steve »

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
February 09, 2014, 10:57:09 am
No mater what, a conversion between cursor movement and the operation movement is needed. That is the key point. That may be the answer to you question.

With the conversion I am using, although extrude direction can be different from cursor move direction, the two distances are close to each other. I think that is better than using a conversion that results in the two distances are big different from each other.

Well back to the point how we can use the stepping values. The current doable way is you need to zoom out/in camera. I know that is a hassle if you don't want to change your view. Even if I solve the cursor viewport boundary problem, that still doesn't solve the problem. You still can't do small stepping and for extra big stepping value you have to keep moving your mouse for a while.


Assume that we have found a solution to use the stepping value without zoom out/in. Because of the view size, for small stepping value, you can't tell the operation is done or not. For big stepping value, the extrusion(or something similar) may shoot out some where out side of viewport, you still need to zoom out to check whether the input value is right or not. you may have input a too big value by accident that the extrusion may have gone beyond the moon.

Edit: I have another idea. Currently, once the extrude streamline tool is activated, just simple click will produce an extrusion with the amount used by last extruding operation. I can make it use the stepping value instead if Space key is pressed. Good solution? you don't have to drag the cursor at all.

Edit: No, Space key will cause the selection group split into individual polygons. But "Redirect key" CapsLock key can be used instead.
« Last Edit: February 09, 2014, 12:21:35 pm by IStonia »

  • No avatar
  • Posts: 130
  • Spline
February 09, 2014, 03:36:32 pm
Edit: I have another idea. Currently, once the extrude streamline tool is activated, just simple click will produce an extrusion with the amount used by last extruding operation. I can make it use the stepping value instead if Space key is pressed. Good solution? you don't have to drag the cursor at all.

I would prefer (either as an option... or default behaviour, but that might conflict with the preferences of others?) that using the Extrude streamline tool with a single click always produces a zero-extrusion (though, I can also see the benefit of being able to toggle that setting to "extrude by last operation").  Then, I will manually move the extruded face into position using my Stepping settings.  For example, I work in millimeter units, and I generally prefer to set my stepping size to 1/10th (0.1) mm, or 1/20 (0.05) mm.  So, if I wanted an 0.2mm extrusion, I would leave my stepping increment to 0.1, perform a zero-extrude and then transform/move the extruded face a distance of 0.2mm while holding down the shift key to constrain my translation increments by 0.1mm.
« Last Edit: February 09, 2014, 03:38:09 pm by JTenebrous »

  • No avatar
  • Posts: 2103
  • Polygon
February 09, 2014, 05:18:02 pm
No mater what, a conversion between cursor movement and the operation movement is needed. That is the key point. That may be the answer to you question.
No it does not. Because you are simply saying, "That is the way it is".
When moving or extruding (or whatever) with stepping, you do not even need a cursor to be shown, It is of no actual use. Showing the cursor does not add functionality, but showing the cursor and attempting (quite badly at times) to make the cursor move at some specific speed/distance is actually removing some functionality of the stepping.

Quote
With the conversion I am using, although extrude direction can be different from cursor move direction, the two distances are close to each other. I think that is better than using a conversion that results in the two distances are big different from each other.
If the cursor was not seen, or did not move, it would make absolutely no difference when using stepping.

Quote
Well back to the point how we can use the stepping values. The current doable way is you need to zoom out/in camera. I know that is a hassle if you don't want to change your view. Even if I solve the cursor viewport boundary problem, that still doesn't solve the problem. You still can't do small stepping and for extra big stepping value you have to keep moving your mouse for a while.
Only because you are locked in this need for a cursor to be seen, and your current implementation is quite bad.


Quote
Assume that we have found a solution to use the stepping value without zoom out/in. Because of the view size, for small stepping value, you can't tell the operation is done or not. For big stepping value, the extrusion(or something similar) may shoot out some where out side of viewport, you still need to zoom out to check whether the input value is right or not. you may have input a too big value by accident that the extrusion may have gone beyond the moon.
What nonsense. There is a readout for the distance made, either with or without stepping. See the pics I posted. But of course you should know that, or do you?

Quote
Edit: I have another idea. Currently, once the extrude streamline tool is activated, just simple click will produce an extrusion with the amount used by last extruding operation. I can make it use the stepping value instead if Space key is pressed. Good solution? you don't have to drag the cursor at all.

Edit: No, Space key will cause the selection group split into individual polygons. But "Redirect key" CapsLock key can be used instead.
Not helpful at all.



  • No avatar
  • Posts: 2103
  • Polygon
February 09, 2014, 05:34:30 pm
OK, another thought.

When using the visual tools, for example, such as "Inset", "Extrude" or "Chamfer" which brings up the options window. You can currently LMB in the numeric input window and WMB up/down, which changes the value, but that change in value is not currently fixed/set, it appears to be random. Could the increment in the change in value (when using WMB up/down) be a fixed increment based on stepping value?

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
February 09, 2014, 06:03:05 pm
No mater what, a conversion between cursor movement and the operation movement is needed. That is the key point. That may be the answer to you question.
No it does not. Because you are simply saying, "That is the way it is".

If there is no conversion at all, how does the program know the amount of extrusion or movement to perform. You can use the mouse move event to trigger the stepping, but when you move the mouse there will be a bunch of mouse move events generated and you will get a series of steppings.

Well, another idea. I can make the program adjust the conversion rate base on the stepping values to ensure the stepping will happen no matter how big or how small(not zero though) it is. Also I can try to solve the boundary issue.

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
February 09, 2014, 06:07:29 pm
OK, another thought.

When using the visual tools, for example, such as "Inset", "Extrude" or "Chamfer" which brings up the options window. You can currently LMB in the numeric input window and WMB up/down, which changes the value, but that change in value is not currently fixed/set, it appears to be random. Could the increment in the change in value (when using WMB up/down) be a fixed increment based on stepping value?

I need to go to work now. I will have a look at it when I get back.

  • No avatar
  • Posts: 2103
  • Polygon
February 09, 2014, 06:34:13 pm
You can use the mouse move event to trigger the stepping, but when you move the mouse there will be a bunch of mouse move events generated and you will get a series of steppings.

Yes, of course, it should work like that. It is a need to be able to control those stepping.
Although stepping is a custom set value, that does not mean it will be a maximum distance used. For example. I have a model that will have lots of support edges(insets). Those insets may be of different sizes. I set the stepping to 0.005 but can make an inset using stepping of any size I want (within reason of course) that has an increment of 0.005.


« Last Edit: February 09, 2014, 06:35:59 pm by steve »

  • No avatar
  • Posts: 2103
  • Polygon
February 09, 2014, 06:37:20 pm
I need to go to work now. I will have a look at it when I get back.

No rush. Look when you have time.

Thanks.