-
-
Notifications
You must be signed in to change notification settings - Fork 975
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Request to add a simple resize tool. #1777
Comments
This is exactly, what Modify - Scale does. |
Thanks for your quick response, Thank you and sorry for the inconvenience if I'm not doing things right. |
Sorry, my bad. Seems I've mixed up things, Rotate works this way, with two points, I'd expected, that Scale works the same way. Or maybe it was changed in the past and my memories fooled me. But this cuts both ways, for the Rotate tool we have regularly requests to change it to use one reference only, because entering the parameter in the dialog is more accurate. |
Thank you again @lordofbikes, While waiting for the implementation of the new features, I continue using the available tools. |
We can add a button to the scale dialog, so the end user can select a reference and a target point to fill the numbers automatically. |
It would help. |
I am in the process of implementation, but looks like I get a busy week ahead. Will try to get it work by this weekend. |
Issue #1777: Experimental feature: for the scaling tool, allow to specify a source point and a target point, so the scaling would scale the source to the target point. If the coordinate difference from the scaling center is zero in any direction(x- or y-), no scaling is applied in that direction. Negative factors are allowed, and this may not work well with all entity types.
The implementation is ready for testing. I think we should set the relative zero to the scaling center when selecting the source and target points. A button is added next to the factor input fields. If you gets a better icon for the button, please upload an SVG version here, or create a pull request. |
Question: do we need to consider maintaining aspect ratio(isotropic) in the new methods? If the x/y lead to different factors, it's not clear on which one to use, if isotropic scaling is intended |
Great question 🤔 |
That's not actually my question. My question is: 1, if user chooses isotropic scaling in dialog, then click "find factors"; Currently, the isotropic selection is ignored, if points lead to different scaling factors in xy- directions. To improve: If isotropic scaling is set, the target selection is limited on the line by the center and the source points; Some minor issues: avoid selecting the center as source or target; More improvement: allow selecting two source points and two target points (by auto selection xy- directions of the scaling), so the scaling is defined by points not by the current coordinate system. The overall effect, rotate to one direction, scale by xy-factors, rotate it back. |
For scaling by points: 1. support isotropic scaling; 2. avoid selecting the scaling center as source or taget; 3. move relative zero to the scaling center.
What this tool does is incredible 🤩. Regarding your Question,
|
Hi @NabilAKROUD, The current behavior is chosen so based on the easiest for implementation by reusing the current "scale" method, so there's no change to previous scaling workflow for scaling by ratios, where a reference point is not necessary. It's interesting to investigate how to provide behaviors for other transforms: 1, isometrics (translation, rotation, and mirroring) by reference and target; |
Expected behavior
I miss a tool to RESIZE objects by selecting, for example, two points: the initial and the final.
I created a simple shape in PowerPoint imagining how it should work.
The tool would greatly simplify the work when the drawing is too large and would avoid using cross your heart method , which always leaves much to be desired.
Operating System and LibreCAD version info
Any
Resizing.tool.LC.mp4
The text was updated successfully, but these errors were encountered: