Skip to content

Suggestion: Improve docstring for DDA algorithm #13905

@jeanne-boussonniere

Description

@jeanne-boussonniere

Feature description

Hello,

I was reviewing the code for the DDA algorithm (found in graphics/digital_differential_analyzer_line.py).

The current docstring is very minimal. It only says: Draws a line between two points using the DDA algorithm. For students or new developers discovering this algorithm, this isn't very helpful. It explains what it does, but not how or why it's notable.

I suggest improving this docstring to add more context. A better docstring could include:

  1. A brief, one-sentence explanation of the principle (e.g., "It works by calculating the dx and dy and then iteratively steps along the dominant axis, incrementing the other axis by a fractional amount.").
  2. A note on its main disadvantage: its reliance on floating-point arithmetic and rounding at every step.
  3. A mention that it is generally outperformed by the Bresenham algorithm, which uses integer-only math.Adding these details would significantly improve the educational value of this file.

A good external resource, like the Wikipedia page, could also be referenced for users who want to learn more.
https://en.wikipedia.org/wiki/Digital_differential_analyzer_(graphics_algorithm)

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementThis PR modified some existing files

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions