virtual_knitting_machine.visualizer.visualizer_elements.diagram_elements.needle_bed_visualizer_group module

Module containing the Needle Bed Group class.

class Needle_Bed_Group(leftmost_slot, rightmost_slot, render_sliders, diagram_settings, machine_state)[source]

Bases: Visualizer_Group

Wrapper class for the groupings that form the Needle Bed diagram.

render_sliders

True if the slider beds are rendered, False otherwise.

Type:

bool

leftmost_slot

The leftmost needle slot to render from.

Type:

int

rightmost_slot

The rightmost needle slot to render to.

Type:

int

settings

The machine diagram settings.

Type:

Diagram_Settings

__init__(leftmost_slot, rightmost_slot, render_sliders, diagram_settings, machine_state)[source]

Constructor for the Needle Bed Group class. :param leftmost_slot: The leftmost needle slot to render from. :type leftmost_slot: int :param rightmost_slot: The rightmost needle slot to render to. :type rightmost_slot: int :param render_sliders: True if the slider beds are rendered, False otherwise. :type render_sliders: bool :param diagram_settings: The machine diagram settings. :type diagram_settings: Diagram_Settings :param machine_state: The machine state being displayed. :type machine_state: Knitting_Machine_State

property rack: int

Returns: int: Racking value of the machine state.

property all_needle_rack: bool

Returns: bool: True if the machine state is set for all needle rack. False otherwise.

property carriage_direction: Carriage_Pass_Direction

Returns: Carriage_Pass_Direction: The last direction of movement of the carriage.

property back_leftmost: int
Returns:

The leftmost position on the back bed.

Return type:

int

Notes

Racking Calculations: * R = F - B * F = R + B * B = F - R.

property back_rightmost: int
Returns:

The rightmost position on the back bed.

Return type:

int

Notes

Racking Calculations: * R = F - B * F = R + B * B = F - R.

property slot_count: int
Returns:

The slot count for the needle beds.

Return type:

int

Returns:

property width: float

Returns: float: The width of the needle bed element including any rendered labels.

property height: float

Returns: float: The height of the needle bed element including any rendered labels.

has_slot(slot)[source]
Parameters:

slot (int) – The slot index of the needle bed.

Returns:

True if that slot exists on the needle bed. False, otherwise.

Return type:

bool

has_needle(needle)[source]
Parameters:

needle (Needle) – The needle to find in the bed group.

Returns:

True if the needle is rendered. False, otherwise.

Return type:

bool

get_needle_box(needle)[source]
Parameters:

needle (Needle) – The needle to source in the needle bed.

Returns:

The needle box on the needle bed.

Return type:

Needle_Box

Raises:

KeyError – The needle is not in the needle bed.

add_child(child)

Add the given child element as a sub element to this element. :param child: The child element to add. :type child: Visualizer_Element

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).