Skip to content

Add 'Circle' to the Shape tool and its associated gizmos #2914

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

Merged
merged 11 commits into from
Aug 2, 2025
Merged

Conversation

0SlowPoke0
Copy link
Collaborator

@0SlowPoke0 0SlowPoke0 commented Jul 20, 2025

  • Add circle mode in shape tool along with the associated radius gizmo to change the radius

Copy link

github-actions bot commented Jul 20, 2025

Performance Benchmark Results

compile_demo_art_iai::compile_group::compile_to_proto with_setup_0:load_from_name(isometric-fountain)
Instructions: 26,726,063 (master) -> 25,413,449 (HEAD) : $$\color{lime}-4.91\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     328,559|    315,514          -3.97%
D1mw                     103,008|     99,043          -3.85%
DLmr                      32,756|     29,347         -10.41%
DLmw                      46,396|     49,472          +6.63%
Dr                     6,483,013|  6,151,066          -5.12%
Dw                     4,587,584|  4,354,183          -5.09%
EstimatedCycles       42,117,240| 40,198,378          -4.56%
I1mr                      48,443|     57,718         +19.15%
ILmr                         866|        867          +0.12%
Ir                    26,726,063| 25,413,449          -4.91%
L1hits                37,316,650| 35,446,423          -5.01%
LLhits                   399,992|    392,589          -1.85%
RamHits                   80,018|     79,686          -0.41%
TotalRW               37,796,660| 35,918,698          -4.97%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_1:load_from_name(painted-dreams)
Instructions: 13,653,583 (master) -> 13,132,990 (HEAD) : $$\color{lime}-3.81\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     162,535|    157,838          -2.89%
D1mw                      51,594|     50,363          -2.39%
DLmr                         991|        510         -48.54%
DLmw                      19,007|     15,739         -17.19%
Dr                     3,314,081|  3,180,908          -4.02%
Dw                     2,334,535|  2,242,106          -3.96%
EstimatedCycles       20,873,255| 20,013,904          -4.12%
I1mr                      23,130|     28,954         +25.18%
ILmr                         736|        727          -1.22%
Ir                    13,653,583| 13,132,990          -3.81%
L1hits                19,064,940| 18,318,849          -3.91%
LLhits                   216,525|    220,179          +1.69%
RamHits                   20,734|     16,976         -18.12%
TotalRW               19,302,199| 18,556,004          -3.87%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_2:load_from_name(procedural-string-lights)
Instructions: 2,264,488 (master) -> 2,207,684 (HEAD) : $$\color{lime}-2.51\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                      23,134|     22,662          -2.04%
D1mw                      10,957|     10,944          -0.12%
DLmr                          19|         20          +5.26%
DLmw                       2,814|      1,307         -53.55%
Dr                       523,295|    510,333          -2.48%
Dw                       382,573|    372,594          -2.61%
EstimatedCycles        3,433,756|  3,309,975          -3.60%
I1mr                       5,104|      5,950         +16.58%
ILmr                         721|        711          -1.39%
Ir                     2,264,488|  2,207,684          -2.51%
L1hits                 3,131,161|  3,051,055          -2.56%
LLhits                    35,641|     37,518          +5.27%
RamHits                    3,554|      2,038         -42.66%
TotalRW                3,170,356|  3,090,611          -2.52%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_3:load_from_name(parametric-dunescape)
Instructions: 14,818,409 (master) -> 14,461,684 (HEAD) : $$\color{lime}-2.41\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     193,192|    186,591          -3.42%
D1mw                      66,296|     65,766          -0.80%
DLmr                         140|         52         -62.86%
DLmw                      18,111|     17,266          -4.67%
Dr                     3,565,118|  3,465,622          -2.79%
Dw                     2,551,468|  2,481,621          -2.74%
EstimatedCycles       22,623,815| 22,053,665          -2.52%
I1mr                      19,467|     22,605         +16.12%
ILmr                         849|        845          -0.47%
Ir                    14,818,409| 14,461,684          -2.41%
L1hits                20,656,040| 20,133,965          -2.53%
LLhits                   259,855|    256,799          -1.18%
RamHits                   19,100|     18,163          -4.91%
TotalRW               20,934,995| 20,408,927          -2.51%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_4:load_from_name(red-dress)
Instructions: 32,233,531 (master) -> 30,722,639 (HEAD) : $$\color{lime}-4.69\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     408,453|    392,598          -3.88%
D1mw                     136,225|    129,298          -5.08%
DLmr                      46,305|     42,397          -8.44%
DLmw                      63,807|     57,072         -10.56%
Dr                     7,754,907|  7,378,533          -4.85%
Dw                     5,501,949|  5,233,932          -4.87%
EstimatedCycles       51,211,893| 48,685,682          -4.93%
I1mr                      53,386|     63,146         +18.28%
ILmr                         863|        878          +1.74%
Ir                    32,233,531| 30,722,639          -4.69%
L1hits                44,892,323| 42,750,062          -4.77%
LLhits                   487,089|    484,695          -0.49%
RamHits                  110,975|    100,347          -9.58%
TotalRW               45,490,387| 43,335,104          -4.74%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_5:load_from_name(valley-of-spires)
Instructions: 20,280,647 (master) -> 19,251,191 (HEAD) : $$\color{lime}-5.08\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     249,369|    238,923          -4.19%
D1mw                      82,041|     77,862          -5.09%
DLmr                      14,575|     12,763         -12.43%
DLmw                      31,075|     29,082          -6.41%
Dr                     4,903,266|  4,645,271          -5.26%
Dw                     3,471,498|  3,289,643          -5.24%
EstimatedCycles       31,519,713| 29,904,473          -5.12%
I1mr                      36,238|     43,067         +18.84%
ILmr                         807|        787          -2.48%
Ir                    20,280,647| 19,251,191          -5.08%
L1hits                28,287,763| 26,826,253          -5.17%
LLhits                   321,191|    317,220          -1.24%
RamHits                   46,457|     42,632          -8.23%
TotalRW               28,655,411| 27,186,105          -5.13%

Copy link

github-actions bot commented Jul 20, 2025

Performance Benchmark Results

compile_demo_art_iai::compile_group::compile_to_proto with_setup_0:load_from_name(isometric-fountain)
Instructions: 26,727,306 (master) -> 25,411,701 (HEAD) : $$\color{lime}-4.92\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     328,547|    315,452          -3.99%
D1mw                     103,023|     99,099          -3.81%
DLmr                      32,759|     29,344         -10.42%
DLmw                      46,390|     49,473          +6.65%
Dr                     6,483,213|  6,150,796          -5.13%
Dw                     4,587,646|  4,354,175          -5.09%
EstimatedCycles       42,118,667| 40,196,268          -4.56%
I1mr                      48,443|     57,718         +19.15%
ILmr                         866|        867          +0.12%
Ir                    26,727,306| 25,411,701          -4.92%
L1hits                37,318,152| 35,444,403          -5.02%
LLhits                   399,998|    392,585          -1.85%
RamHits                   80,015|     79,684          -0.41%
TotalRW               37,798,165| 35,916,672          -4.98%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_1:load_from_name(painted-dreams)
Instructions: 13,653,445 (master) -> 13,132,893 (HEAD) : $$\color{lime}-3.81\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     162,632|    157,968          -2.87%
D1mw                      51,660|     50,387          -2.46%
DLmr                         991|        512         -48.34%
DLmw                      19,009|     15,744         -17.18%
Dr                     3,314,064|  3,180,897          -4.02%
Dw                     2,334,531|  2,242,106          -3.96%
EstimatedCycles       20,873,808| 20,014,622          -4.12%
I1mr                      23,130|     28,954         +25.18%
ILmr                         736|        727          -1.22%
Ir                    13,653,445| 13,132,893          -3.81%
L1hits                19,064,618| 18,318,587          -3.91%
LLhits                   216,686|    220,326          +1.68%
RamHits                   20,736|     16,983         -18.10%
TotalRW               19,302,040| 18,555,896          -3.87%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_2:load_from_name(procedural-string-lights)
Instructions: 2,264,226 (master) -> 2,208,231 (HEAD) : $$\color{lime}-2.47\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                      23,173|     22,669          -2.17%
D1mw                      10,963|     10,953          -0.09%
DLmr                          19|         20          +5.26%
DLmw                       2,813|      1,309         -53.47%
Dr                       523,269|    510,453          -2.45%
Dw                       382,596|    372,725          -2.58%
EstimatedCycles        3,433,641|  3,310,897          -3.57%
I1mr                       5,104|      5,950         +16.58%
ILmr                         721|        711          -1.39%
Ir                     2,264,226|  2,208,231          -2.47%
L1hits                 3,130,851|  3,051,837          -2.52%
LLhits                    35,687|     37,532          +5.17%
RamHits                    3,553|      2,040         -42.58%
TotalRW                3,170,091|  3,091,409          -2.48%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_3:load_from_name(parametric-dunescape)
Instructions: 14,817,514 (master) -> 14,461,777 (HEAD) : $$\color{lime}-2.40\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     193,092|    186,662          -3.33%
D1mw                      66,321|     65,784          -0.81%
DLmr                         140|         52         -62.86%
DLmw                      18,117|     17,267          -4.69%
Dr                     3,564,991|  3,465,668          -2.79%
Dw                     2,551,423|  2,481,649          -2.73%
EstimatedCycles       22,622,628| 22,054,218          -2.51%
I1mr                      19,467|     22,605         +16.12%
ILmr                         849|        845          -0.47%
Ir                    14,817,514| 14,461,777          -2.40%
L1hits                20,655,048| 20,134,043          -2.52%
LLhits                   259,774|    256,887          -1.11%
RamHits                   19,106|     18,164          -4.93%
TotalRW               20,933,928| 20,409,094          -2.51%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_4:load_from_name(red-dress)
Instructions: 32,234,006 (master) -> 30,727,237 (HEAD) : $$\color{lime}-4.67\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     408,546|    392,629          -3.90%
D1mw                     136,206|    129,237          -5.12%
DLmr                      46,304|     42,395          -8.44%
DLmw                      63,813|     57,086         -10.54%
Dr                     7,754,978|  7,379,152          -4.85%
Dw                     5,501,944|  5,233,986          -4.87%
EstimatedCycles       51,212,880| 48,691,193          -4.92%
I1mr                      53,386|     63,146         +18.28%
ILmr                         863|        878          +1.74%
Ir                    32,234,006| 30,727,237          -4.67%
L1hits                44,892,790| 42,755,363          -4.76%
LLhits                   487,158|    484,653          -0.51%
RamHits                  110,980|    100,359          -9.57%
TotalRW               45,490,928| 43,340,375          -4.73%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_5:load_from_name(valley-of-spires)
Instructions: 20,278,834 (master) -> 19,254,312 (HEAD) : $$\color{lime}-5.05\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     249,346|    239,124          -4.10%
D1mw                      82,058|     77,819          -5.17%
DLmr                      14,582|     12,767         -12.45%
DLmw                      31,074|     29,084          -6.40%
Dr                     4,903,068|  4,645,613          -5.25%
Dw                     3,471,511|  3,289,590          -5.24%
EstimatedCycles       31,517,871| 29,908,695          -5.11%
I1mr                      36,238|     43,067         +18.84%
ILmr                         807|        787          -2.48%
Ir                    20,278,834| 19,254,312          -5.05%
L1hits                28,285,771| 26,829,505          -5.15%
LLhits                   321,179|    317,372          -1.19%
RamHits                   46,463|     42,638          -8.23%
TotalRW               28,653,413| 27,189,515          -5.11%

@Keavon Keavon changed the title Circle Shape and Circle Gizmos Add "Circle" to the Shape tool and its associated gizmos Jul 31, 2025
Copy link
Member

@Keavon Keavon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Drawing a circle usually results in the circle being drawn from the origin, not the drag start position. Once that is fixed, we can merge, my code review is done.

@Keavon Keavon changed the title Add "Circle" to the Shape tool and its associated gizmos Add 'Circle' to the Shape tool and its associated gizmos Aug 2, 2025
@Keavon Keavon merged commit 523132d into master Aug 2, 2025
5 checks passed
@Keavon Keavon deleted the spirl-arc branch August 2, 2025 05:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants