GraphiteEditor / GraphiteEditor/Graphite

Robustness when panning/tilting/zooming during dragging actions

オープン
#3,500 コメント 0 件 リアクション 1 件 担当者 0 名 GitHub で見る
Good First Issue Paper Cut
主要言語
Rust
スター
27.2k
フォーク
1.3k
平均マージ
20時間 5分
マージ済み PR(30日)
57

説明

The user can PTZ...
- Pan (middle mouse drag, or scroll using the scroll wheel)
- Tilt (Alt middle mouse drag)
- Zoom (Ctrl middle mouse drag, or Ctrl scroll with the scroll wheel)
...while performing various dragging operations and those currently don't follow the original document-space start position coordinates:

- [ ] Drag offset (Select tool):

https://github.com/user-attachments/assets/87e63c93-cff5-40e1-a058-75e4461c1e02

- [ ] Selection box (Select tool and Path tool):

https://github.com/user-attachments/assets/20ad0109-e828-4493-a04e-13d97ed8d635

- [ ] Grab transformation (G with an object selected using the Select tool or points selected using the Path tool):

https://github.com/user-attachments/assets/e4699542-8589-419a-889f-5185fe71c62a

https://github.com/user-attachments/assets/93e193c3-e53e-47ee-95f1-ac4745d3fe05

- [ ] Point rotate transformation when tilted (R with points selected using the Path tool):

https://github.com/user-attachments/assets/bd0fe282-395e-4d1b-87d0-51964413a928

- [ ] Scale transformation when tilted (S with an object selected using the Select tool or points selected using the Path tool):

https://github.com/user-attachments/assets/2186ce09-d487-40b5-9e76-71a5f5be981c

https://github.com/user-attachments/assets/7be92f8c-8460-4360-9507-80f4b97237f6

- [ ] Grab transformation when tilted G with an object selected using the Select tool or points selected using the Path tool):

https://github.com/user-attachments/assets/df0f672d-acf5-45e0-8d72-5d27e36937b7

https://github.com/user-attachments/assets/bea3ab95-a230-4b83-8e17-05183ac7f2d6

- [ ] Duplication incorrectly still occurs when Alt middle mouse dragging to tilt the viewport while dragging (once tilting begins, duplication should be canceled):

https://github.com/user-attachments/assets/8d73573d-2552-4cdb-a9f3-f5adb200a926

- [ ] The gray original path ghost outline stays frozen in place under PTZ

https://github.com/user-attachments/assets/f404f74e-af35-47a1-8981-98c1ff1b0baa

- [ ] Transform dial dragging along axis when tilted:

https://github.com/user-attachments/assets/696d6f85-406c-4e71-b603-d88d9586634f

- [ ] Transform dial dragging along axis when panning:

https://github.com/user-attachments/assets/dce212b2-c4b2-4913-a28e-b85ac6626094

- [ ] Transform dial dragging along axis when zooming makes the axis line disappear:

https://github.com/user-attachments/assets/fc8f7cb7-05ef-4a81-bf16-d9cc9b3c3a46

- [ ] Transformation by dragging while holding Shift to lock axes, those axes need to tilt with the canvas:

https://github.com/user-attachments/assets/5ee6dbfb-65a7-476f-87a4-dddc5ab91bdb

- [ ] Transformation by dragging while holding Shift to lock axes, those axes need to pan with the canvas:

https://github.com/user-attachments/assets/3d7ecf31-d90f-4485-84d5-99a1b744042f

- [ ] Transform cage corner rotation while panning, tilting, and zooming:

https://github.com/user-attachments/assets/f941dd0c-478a-4484-9c2e-41363b591dcb

https://github.com/user-attachments/assets/efe907d6-57a9-4d54-a9dd-e76ec927f668

https://github.com/user-attachments/assets/4a8da8eb-0879-46c3-b276-cfaaf1e895d7

- [ ] Transform cage edge scaling while panning, tilting, and zooming:

https://github.com/user-attachments/assets/4c99266e-210d-46f7-83b4-53f661204e86

There may be more I haven't found yet. While solving this issue, you should hopefully become good at finding even more similar cases. This should be solved across multiple PRs each based around several of the related issues shown above, not all in a single PR but also not extremely spread out with one PR per video, since both extremes would make these fixes inconvenient to review.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Start by reproducing the listed PTZ interactions while dragging with the Select and Path tools, including grab, rotate, scale, transform cage, and transform dial operations. Compare each result with the original document-space start position and check the listed duplication and ghost-outline cases. Done means the identified dragging operations remain aligned during panning, tilting, and zooming, with the listed inconsistencies resolved across reviewable groups.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
rust
領域
computer-graphics
issue の種類
バグ
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
30/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。