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

1 participant