Skip to content

Conversation

@rounittxx
Copy link

@rounittxx rounittxx commented Dec 1, 2025

Resolves #8277

Changes

This PR refactors the implementation of arc() and ellipse() for both 2D and WebGL renderers to use the new ShapePrimitive architecture.
Key updates include:

  • Added Ellipse and Arc ShapePrimitive classes in custom_shapes.js
  • Added visitor support (visitEllipse, visitArc) in PrimitiveToPath2DConverter and PrimitiveToVerticesConverter
  • Updated Renderer2D arc and ellipse functions to use primitive + visitor pattern for consistent tessellation, fill, and stroke handling
  • Improved PIE / CHORD behavior and consistent path construction
  • Updated RendererGL ellipse() to forward to the new arc implementation and generate proper primitives
  • Updated screenshot tests for shape modes to reflect new behavior

PR Checklist

@rounittxx rounittxx changed the base branch from main to dev-2.0 December 1, 2025 12:44
@rounittxx rounittxx marked this pull request as ready for review December 1, 2025 12:45
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.

1 participant