Skip to content

Slot

The Slot model records an elongated hole with round ends (a slotted hole, German "Langloch") that the drawing sizes by its own width and length, for example 2x Slot 14x15 or 3x Slot Ø10. It stores the width, the length where the drawing states it, the quantity, a normalised label and a confidence score.

  • width is the width of the slot, which is also the diameter of its round ends. When the callout gives two sizes, width is the smaller one, whichever order the drawing writes them in: Slot 20x6 has width 6 and length 20. A width written with Ø (Slot Ø10) is reported as a linear size; the label keeps the Ø.
  • length is the overall length of the slot: the larger of the two sizes. It is null when the callout gives only one size (Slot Ø10); the length is then shown by dimensions elsewhere on the drawing.

A keyway for a parallel key (DIN 6885 A 8x7x56) is not a Slot: it is reported in key_slots as a KeySlot.

Requires werk24 2.9.0 or newer; see Minimum client version.

Example

[
  {
    "reference_id": 17,
    "label": "2x SLOT 14x15",
    "confidence": {"score": "1.0"},
    "quantity": 2,
    "width": {"value": "14", "unit": "millimeter", "size_type": "LINEAR", "tolerance": null},
    "length": {"value": "15", "unit": "millimeter", "size_type": "LINEAR", "tolerance": null}
  },
  {
    "reference_id": 18,
    "label": "3x SLOT Ø10",
    "confidence": {"score": "1.0"},
    "quantity": 3,
    "width": {"value": "10", "unit": "millimeter", "size_type": "LINEAR", "tolerance": null},
    "length": null
  }
]

Bases: Feature

Represents an elongated hole with round ends (German "Langloch"), e.g. 3x Langloch Ø 10 or 2x Langloch 14x15.

This is a through or blind slot sized by its own width and length. It is distinct from a KeySlot, which is the keyway for a parallel key and is specified by a standard.

PARAMETER DESCRIPTION
reference_id

Reference ID to identify the object.

TYPE: int

label

A short description of the feature in a human-readable format.

TYPE: str

confidence

Confidence in the feature extraction or interpretation.

TYPE: Confidence | None

quantity

The number of slots or instances. Must be at least 1.

TYPE: int

width

The width of the slot, which is also the diameter of its round ends (e.g. 10 in Slot Ø10, 14 in 14x15). When two sizes are written, the smaller. Reported as a linear size even when it is written with Ø; the label keeps the Ø.

TYPE: Size

length

The overall length of the slot as written on the drawing (e.g. 15 in 14x15), if stated. When two sizes are written, the larger.

TYPE: Size | None DEFAULT: None

Source code in werk24/models/v2/models.py
class Slot(Feature):
    """
    Represents an elongated hole with round ends (German "Langloch"), e.g.
    `3x Langloch Ø 10` or `2x Langloch 14x15`.

    This is a through or blind slot sized by its own width and length. It is
    distinct from a `KeySlot`, which is the keyway for a parallel key and is
    specified by a standard.
    """

    quantity: int = Field(
        ...,
        ge=1,
        description="The number of slots or instances. Must be at least 1.",
        examples=[3],
    )
    width: Size = Field(
        ...,
        description=(
            "The width of the slot, which is also the diameter of its round "
            "ends (e.g. `10` in `Slot Ø10`, `14` in `14x15`). When two sizes "
            "are written, the smaller. Reported as a linear size even when it "
            "is written with `Ø`; the label keeps the `Ø`."
        ),
        examples=[
            Size(
                size_type=SizeType.LINEAR,
                value=Decimal("10"),
                tolerance=None,
                unit="millimeter",
            )
        ],
    )
    length: Optional[Size] = Field(
        None,
        description=(
            "The overall length of the slot as written on the drawing (e.g. "
            "`15` in `14x15`), if stated. When two sizes are written, the "
            "larger."
        ),
        examples=[
            Size(
                size_type=SizeType.LINEAR,
                value=Decimal("15"),
                tolerance=None,
                unit="millimeter",
            )
        ],
    )