virtual_knitting_machine.visualizer.visualizer_elements.diagram_elements.needle_box module

Module containing the Needle_Group class

class Needle_Box(needle, bed_element, **shape_kwargs)[source]

Bases: Rect_Element

__init__(needle, bed_element, **shape_kwargs)[source]

Initialize the Rectangle SVG element.

Parameters:
  • width (float) – The width of the rectangle in pixels.

  • height (float) – The height of the rectangle in pixels.

  • x (float) – The x coordinate of the rectangle’s top left corner.

  • y (float) – The y coordinate of the rectangle’s top left corner.

  • name (str) – The name-id of the shape.

  • stroke_width (int) – The width of the outline of the shape.

  • fill (str | int, optional) – The fill color of the shape or the factor to lighten the stroke color by. Defaults to no fill color.

  • stroke (str | float, optional) – The color of the outline of the shape or the factor to darken the fill color by. Defaults to darkening the fill color by a factor of 0.7.

  • **shape_kwargs (Any) – Additional keyword arguments to pass to the shape.

property is_front: bool

Returns: bool: True if this represents a front bed needle. False otherwise.

property is_back: bool

Returns: bool: True if this represents a back bed needle. False otherwise.

property is_slider: bool

Returns: bool: True if this represents a slider bed needle. False otherwise.

property position: int

Returns: int: The index of this needle in its bed.

property all_needle_rack: bool

Returns: bool: True if the needle bed is set for all needle racking.

property settings: Diagram_Settings

Returns: Diagram_Settings: The settings of the diagram.

add_to_drawing(drawing)

Adds this element to the given svg drawing. :param drawing: The drawing to add. :type drawing: Drawing

static darken_color(color='none', factor=0.7)

Darken a hex or named color.

Parameters:
  • color (str) – The color to darken. Either a named color or a hex representation of the color.

  • factor (float, optional) –

    A factor to darken. Defaults to 0.7.

    • 0.0 = No change.

    • 1.0 = black.

Returns:

The color-string of the darkened color. If “none” color is given, this will return “black”.

Return type:

str

static fill_from_stroke(stroke, lighten_factor=0.3)
Parameters:
  • stroke (str) – The color string of the stroke to be lightened for infill.

  • lighten_factor (float, optional) – The factor to lighten the stroke color by. Defaults to 0.3.

Returns:

The fill color string created by lightening the stroke color.

Return type:

str

property global_x: float

Returns: float: The global x coordinate of this element based on its parent’s coordinates.

global_x_position(x)
Parameters:

x (float) – An X-coordinate position relative to this element’s coordinate system.

Returns:

The x-coordinate adjusted to the global coordinate system.

Return type:

float

property global_y: float

Returns: float: The global y coordinate of this element based on its parent’s coordinates.

global_y_position(y)
Parameters:

y (float) – An Y-coordinate position relative to this element’s coordinate system.

Returns:

The y-coordinate adjusted to the global coordinate system.

Return type:

float

static lighten_color(color='none', factor=0.3)

Lighten a hex or named color.

Parameters:
  • color (str, optional) – The color to lighten. Either a named color or a hex representation of the color. Defaults to transparent (“none”).

  • factor (float, optional) –

    A factor to lighten (0.0 to 1.0). Defaults to 0.3.

    • 0.0 = no change.

    • 1.0 = white.

Returns:

The color-string of the lightened color. If “none” color is given, this will return “black”.

Return type:

str

property name: str

Returns: str: The unique name of this element. This will match the id of the svg element being wrapped.

static stroke_from_fill(fill, darken_factor=0.7)
Parameters:
  • fill (str) – The color string of the fill to be darkened for an outline.

  • darken_factor (float, optional) – The factor to darken the fill color by. Defaults to 0.7.

Returns:

The stroke color string created by darkening the fill color.

Return type:

str

property x: float

Returns: float: The x coordinate of this element relative to its parent (or globally).

property y: float

Returns: float: The y coordinate of this element relative to its parent (or globally).