Clockmender / Precision-Drawing-Tools

Precision Drawing Tools (PDT) Add-on for Blender 2.8 and above
GNU General Public License v3.0
143 stars 16 forks source link

Orhtogonal mode for drawing in X,Y and Z direction. #23

Open rajq123 opened 3 years ago

rajq123 commented 3 years ago

Is your feature request related to a problem? Please describe. No. Describe the solution you'd like If you can write a code to extrude in X,Y or Z direction based on the view (top, front etc) and with the movement of mouse just like in skethup or any 3d CAD program.

Describe alternatives you've considered just like snap toggle, we can have a toggle for ortho mode. and there is nothing more to do in writing code. For example: we move any object by pressing "G" key and constrain the movement in X,Y,Z direction by holding down MMB. but if we make a toggle button which by default constrain the movement then it will be super helpful. Benefits of it-

  1. very easy to move
  2. Combine with Snap option it will really help workflow faster.
  3. we can make extrusion very fast for walls as they usually drawn in x, y directions. and if we enable snap too then any floor plan will take couple extrusion of walls to make in a minute only.

Additional context Add any other context or screenshots about the feature request here.

Clockmender commented 3 years ago

There are several options here, for example I could add a "View" button, which always extrudes, or moves, etc. any selected geometry in the axis normal to the view. This would extrude in Z axis in Top view, Y axis in front view, etc. This could also be carried over to the Command Line section, so a command like "ev10" in front view would extrude the selected geometry 10 units along positive Y axis without you having to work out which axis that would be.

The "View" button would do the same, but use the value from the Distance box. So:

Screenshot 2020-09-23 at 12 29 43

There would be a separate View button as well as Absolute and Delta & Direction that would use the value in Distance to perform the operation.

This would be very easy and fast to implement, altering PDT to take mouse inputs is also doable, but more work as I would have to set up a modal operator for that so the distance is set by the mouse movement (no button presses are required as far as I know) instead of the Distance input, snapping setting would also be accommodated here.

This would also work in any other view orientation, always working normal to your screen, so if you had the view rotated 45 degrees about X axis it would project along a line at 45 degrees to Y axis in the Y-Z plane, for example.

This new "View" option could also work for any other operation, like moving the cursor, duplicating geometry, placing new vertices, etc.

How does that sound?

Cheers, Clock.