Skip to content

Latest commit

 

History

History
93 lines (52 loc) · 5.22 KB

File metadata and controls

93 lines (52 loc) · 5.22 KB
graph LR
    Poster_Initiator["Poster Initiator"]
    Internal_Drawing_Track["Internal Drawing Track"]
    Circular_Drawing_Orchestrator["Circular Drawing Orchestrator"]
    Year_Renderer["Year Renderer"]
    Circle_Segment_Drawer["Circle Segment Drawer"]
    Animation_Keyframe_Maker["Animation Keyframe Maker"]
    Geometric_Utilities_Data_Structures["Geometric Utilities/Data Structures"]
    Poster_Initiator -- "initiates" --> Internal_Drawing_Track
    Internal_Drawing_Track -- "delegates to" --> Circular_Drawing_Orchestrator
    Circular_Drawing_Orchestrator -- "orchestrates" --> Animation_Keyframe_Maker
    Circular_Drawing_Orchestrator -- "delegates to" --> Year_Renderer
    Circular_Drawing_Orchestrator -- "depends on" --> Geometric_Utilities_Data_Structures
    Year_Renderer -- "utilizes" --> Circle_Segment_Drawer
    Year_Renderer -- "depends on" --> Geometric_Utilities_Data_Structures
    Circle_Segment_Drawer -- "depends on" --> Geometric_Utilities_Data_Structures
Loading

CodeBoardingDemoContact

Details

The Circular Poster Renderer subsystem is responsible for generating SVG visualizations in a circular format, specifically designed for displaying annual or cyclical activity patterns by arranging data points radially.

Poster Initiator

Acts as the entry point from the main Poster class for circular poster generation. It initializes the SVG drawing canvas, sets the background, and then delegates the detailed drawing to the Internal Drawing Track.

Related Classes/Methods:

Internal Drawing Track

A generic internal method within the Poster class that serves as an abstraction layer. It dispatches the actual drawing operation to the currently selected tracks_drawer (which is an instance of CircularDrawer in this subsystem's context).

Related Classes/Methods:

Circular Drawing Orchestrator

Serves as the primary controller for generating the circular SVG poster. It manages the overall drawing flow, including setting up animation keyframes and delegating the rendering of individual years.

Related Classes/Methods:

Year Renderer

Focuses on rendering the visual elements for a single year within the circular poster. This includes drawing year and month labels, and delegating the drawing of daily data segments.

Related Classes/Methods:

Circle Segment Drawer

Draws individual circular segments, each representing a specific daily activity data point. It calculates the segment's shape and color based on the input data and predefined ranges.

Related Classes/Methods:

Animation Keyframe Maker

Generates the necessary SVG animation keyframes and timing sequences to create a year-by-year animation effect on the circular poster. _make_key_animate constructs the SVG animate element, while make_key_times calculates the precise timing for these animations.

Related Classes/Methods:

Geometric Utilities/Data Structures

Offers foundational data structures for representing 2D coordinates (XY) and value ranges (ValueRange). These are critical for all geometric calculations, positioning, and sizing within the SVG output.

Related Classes/Methods: