FreeCAD / src /Base /Axis.pyi
AbdulElahGwaith's picture
Upload folder using huggingface_hub
985c397 verified
# SPDX-License-Identifier: LGPL-2.1-or-later
from __future__ import annotations
from Metadata import export
from PyObjectBase import PyObjectBase
from Vector import Vector
from Placement import Placement
from typing import overload
@export(
Constructor=True,
Delete=True,
)
class Axis(PyObjectBase):
"""
Base.Axis class.
An Axis defines a direction and a position (base) in 3D space.
The following constructors are supported:
Axis()
Empty constructor.
Axis(axis)
Copy constructor.
axis : Base.Axis
Axis(base, direction)
Define from a position and a direction.
base : Base.Vector
direction : Base.Vector
"""
Base: Vector = ...
"""Base position vector of the Axis."""
Direction: Vector = ...
"""Direction vector of the Axis."""
# fmt: off
@overload
def __init__(self) -> None: ...
@overload
def __init__(self, axis: Axis) -> None: ...
@overload
def __init__(self, base: Vector, direction: Vector) -> None: ...
# fmt: on
def copy(self) -> Axis:
"""
Returns a copy of this Axis.
"""
...
def move(self, vector: Vector, /) -> None:
"""
Move the axis base along the given vector.
vector : Base.Vector
Vector by which to move the axis.
"""
...
def multiply(self, placement: Placement, /) -> Axis:
"""
Multiply this axis by a placement.
placement : Base.Placement
Placement by which to multiply the axis.
"""
...
def reversed(self) -> Axis:
"""
Compute the reversed axis. This returns a new Base.Axis with
the original direction reversed.
"""
...