Age | Commit message (Collapse) | Author |
|
The `recalcData` function is defined in `transform_convert.c`, so the
header is most expected to be `transform_convert.h`.
|
|
`t->obedit_type` is read to indicate if we are in uv edit mode.
Also fixes a crash introduced in {rBdd14ea18190ff27082009f73a556569a43377a71}.
|
|
|
|
This shows the text as part of the assertion message.
|
|
Also use doxy style function reference `#` prefix chars when
referencing identifiers.
|
|
`t->values` does not necessarily represent a final value of the
transformation, as each mode treats this value differently.
So, unfortunately, we cannot have a generic offset solution for modal
transform operations. Offset needs to be handled by each mode.
Note: Currently only, `Move`, `Rotate` and `Resize` support this.
|
|
|
|
When activated in modal, `translate`, `resize`, `rotate`, `shear` and
`edge_rotate_normal` use a different orientation than the set in scene.
This orientation needed to match since some of these modes can be switched
during operation.
The default orientation for these modes was `V3D_ORIENT_VIEW`.
And this changed when finishing the `translate` and `resize` to
`V3D_ORIENT_GLOBAL`.
But this could cause inconsistencies when inputting values from the
keyboard.
The solution now is to change the orientation when you change the mode.
---
Note: Although the user can expect the value entered to reflect the
orientation set in the scene, it would require a lot of changes and would
not be really useful.
|
|
|
|
The "orient_matrix" parameter was only used when contraint was defined.
This change will hardly be noticed by the user, but it can be useful for
addon developers.
Possibly resolves T85734.
|
|
The constraint was not set when redoing.
This commit also removes `postInputRotation`. I really couldn't see a use for it.
|
|
Currently, `createTransData` is doing much more than the name implies.
This commit makes it clearer through smaller and more specific functions
what the real purpose of that function.
|
|
The local orientation chosen was that of the active object, but as
confirmed in other parts of the code, the orientation of the selected
Bone has priority.
|
|
Flags unified:
T_CURSOR -> CTX_CURSOR
T_TEXTURE -> CTX_TEXTURE
Flags moved:
T_CAMERA -> CTX_CAMERA
T_POSE -> CTX_POSE_BONE
T_OBJECT -> CTX_OBJECT
T_TEXTURE -> CTX_TEXTURE_SPACE
Flag renamed:
CTX_EDGE -> CTX_EDGE_DATA
|
|
The code takes many turns to get a suitable "target" for the snap to grid.
Perhaps there were other reasons awaited for `transformCenter_from_type`
and `TransCenterData center_cache[5]`.
But since nothing is defined, it is better to simplify the code.
No user functional changes
|
|
|
|
The rotation direction was flipped recently.
This meant that rotation on a single axis gave negative results compared
with previous Blender releases.
This partially reverts a9b53daf23ba8b6cb4c930e06154ffd35522b00d.
Differential Revision: https://developer.blender.org/D10299
|
|
This function is only being used by the constraint code.
|
|
Despite the wrong value, this change is harmless since the direction of
the vector is not really required.
|
|
engages axis-constraining on release"
This reverts commit c0677b662f4b13429c0738b99ace85403385ff38.
|
|
axis-constraining on release
Release confirm did not consider modal keymap events.
|
|
Some modes were always using `"Global"` orientation as the default.
|
|
Differential Revision: https://developer.blender.org/D8660
This patch is the result of the GSoC 2020 "Editing Grease Pencil Strokes
Using Curves" project. It adds a submode to greasepencil edit mode that
allows for the transformation of greasepencil strokes using bezier
curves. More information about the project can be found
here: https://wiki.blender.org/wiki/User:Filedescriptor/GSoC_2020.
|
|
The radius is now calculated based on the vertices being transformed
by proportional editing, updated when the falloff changes.
|
|
Follow our code style guide by using C-comments for text descriptions.
|
|
Improves the organization and identification of the API.
|
|
|
|
Checking if `t->values[i] != 0.0f;` is not the best solution for all
transform cases.
|
|
This was the behavior in old versions of blender.
During a transformation operation, when pressing a contrain key, the chosen
orientation is that of the scene.
If you press the same key, the orientation changes to Global or Local.
However, if you choose another contrain axis with the orientation changed,
the orientation does not return to the set for the scene.
It remains Global or Local.
Now when changing a contrain axis, no matter what the current orientation is,
it always returns to the scene orientation.
|
|
This adds XYZ symmetry as a property of meshes and updates all modes to
use the mesh symmetry by default to have a consistent tool behavior
between all modes and when switching objects.
Reviewed By: brecht, mano-wii, campbellbarton
Maniphest Tasks: T79785
Differential Revision: https://developer.blender.org/D8587
|
|
This addresses warnings from Clang-Tidy's `readability-else-after-return`
rule in the `source/blender/editors/transform` module.
No functional changes.
|
|
Support custom-data correction based on surrounding geometry for all
transformation modes of the mesh transform operators.
The is the same logic used in Vert and Edge Slide.
In order not to change the current default behavior,
this property does not affect Vert and Edge Slide modes.
|
|
And better identify what is bool and what is flag in the
proportional edit properties.
|
|
This reverts commit 5c48592ccde08e18d13255e89d09067d5dc0f771.
Ii introduced a stupid error.
Fix T78352
|
|
This is a long-standing bug, possibly proportional editing never worked
in particle mode.
Some parameter definitions in the transform code are scattered and
sometimes duplicated.
Proportional editing is a parameter that depends only on the Convert
type and not `spacetype`, `CTX_` or `obedit_type`.
|
|
|
|
|
|
|
|
This caused an additional argument when exiting object modes
and many other low level functions which don't need to access context.
This simplifies fixing T77073.
|
|
|
|
|
|
|
|
orientation is set to 'Local'
Scene orientation is used only for 3DView.
|
|
|
|
|
|
|
|
transform orientation"
|
|
|
|
During the refactor of the transform operations, in an attempt to
maintain previous behavior, the default orientation of the translate
and resize operations became `Global` and the rotate operation became
`View`.
Now the default is always `View`, and on redo, the translate and rotate
operations are saved as `Global`.
|
|
If the orietation is setted as a parameter, it is best to refer
to it as a constraint orietation so that it can be reused in
successive axis presses.
This is useful to retrieve the orientation of the extrude for example.
|