Development of Path, Ellipse, Rectangle, and Text Primitives #114
Merged
Vtec234 merged 1 commit intoleanprover-community:mainfrom Apr 22, 2025
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Files Changed
ProofWidgets/Data/Svg.lean: Added new primitivesProofWidgets/Demos/Svg.lean: Added examples of usageThis PR introduces new SVG primitives to the
Shapedata structure. The following primitives have been added:pathellipserecttextEach of these primitives is defined as follows:
path: Defined by the attributed = "path data".ellipse: Defined by its center and radii (rxandry).rect: Defined by its corner point, width, and height.text: Defined by its position, content, and font size.Note: In SVG 1.1, the
pathandtextelements are specified in different sections under basic shapes. Here, I have considered them as shapes.Additionally, the
toHtmlDatafunction has been updated to handle the new primitives and generate appropriate HTML attributes:The
Element.toHtmlfunction has also been modified to incorporate these changes:As done for the initial primitives, we have also defined the functions for the new ones: