Skip to content

Arc3D

Canonical path: NemAll_Python_Geometry.Arc3D

Representation class for 3D arc.

The Arc3D is defined like the Arc2D. The only difference is, that the normal of the plane the arc is lying in might be rotated around the x-axis.

Methods:

Attributes:

Center property writable

Center: Point3D

Get center.

CenterRel property writable

CenterRel: Point3D

Get center in relative coordinate system

CounterClockwise property writable

CounterClockwise: bool

Returns winding direction counterclockwise true/false

DeltaAngle property writable

DeltaAngle: Angle

Get the delta angle

EndAngle property writable

EndAngle: Angle

Get end angle.

EndPoint property writable

EndPoint: Point3D

Get end point in world coordinates

EndRelPoint property

EndRelPoint: Point3D

Get end point in relative coordinates

MajorRadius property writable

MajorRadius: float

Get major radius.

MinorRadius property writable

MinorRadius: float

Get minor radius.

NormVector property writable

NormVector: Vector3D

Get normvector.

Origin property writable

Origin: Point3D

Get Origin.

RefPlacement property writable

RefPlacement: AxisPlacement3D

Get the reference placement

RefPlacementRel property writable

RefPlacementRel: AxisPlacement3D

Get the reference placement

RefPoint property writable

RefPoint: Point3D

Get the reference point

StartAngle property writable

StartAngle: Angle

Get start angle.

StartPoint property writable

StartPoint: Point3D

Get start point in world coordinates

StartRelPoint property

StartRelPoint: Point3D

Get start point in relative coordinates

Close

Close()

Close the arc.

Set the delta angle to 2Pi, to close the arc

EqualRef

EqualRef(arc: Arc3D) -> bool

Test for equal reference point

Parameters:

  • arc (Arc3D) –

    Arc3D to compare with

Returns:

  • bool

    result as bool.

GetCenter

GetCenter() -> Point3D

Get center.

Returns:

GetCenterRel

GetCenterRel() -> Point3D

Get center in relative coordinate system

Returns:

GetDeltaAngle

GetDeltaAngle() -> Angle

Get the delta angle

Returns:

GetEndAngle

GetEndAngle() -> Angle

Get end angle.

Returns:

  • Angle

    angle as const Angle.

GetEndPoint

GetEndPoint() -> Point3D

Get end point in world coordinates

Returns:

GetEndRelPoint

GetEndRelPoint() -> Point3D

Get end point in relative coordinates

Returns:

  • Point3D

    End Point in relative coordinates.

GetLocalPoint

GetLocalPoint(point: Point3D) -> Point3D

Get the local coordinates of a global world point

Parameters:

Returns:

GetMajorAxis

GetMajorAxis() -> Vector3D

Get the major axis The major axis is calculated according to the plane normal and the axis angle

Returns:

GetMajorRadius

GetMajorRadius() -> float

Get major radius.

Returns:

  • float

    major radius as const double.

GetMinorAxis

GetMinorAxis() -> Vector3D

Get the minor axis The minor axis is calculated via the cross product of major axis and plane normal

Returns:

GetMinorRadius

GetMinorRadius() -> float

Get minor radius.

Returns:

  • float

    minor radius as const double.

GetNormVector

GetNormVector() -> Vector3D

Get normvector.

Returns:

  • Vector3D

    normvector as const Vector3D.

GetOrigin

GetOrigin() -> Point3D

Get Origin.

Returns:

GetPoint

GetPoint(angle: Angle) -> Point3D

Get point on arc with given angle in world coordinates

Parameters:

  • angle (Angle) –

    central angle of the point

Returns:

  • Point3D

    point on arc as Point3D.

GetPointAngle

GetPointAngle(point: Point3D) -> Angle

Get the angle of a point

Parameters:

Returns:

GetPointRel

GetPointRel(angle: Angle) -> Point3D

Get point on arc with given angle in relative coordinates

Parameters:

  • angle (Angle) –

    central angle of the point

Returns:

  • Point3D

    point on arc as Point3D.

GetRefPlacement

GetRefPlacement() -> AxisPlacement3D

Get the reference placement

Returns:

GetRefPlacementRel

GetRefPlacementRel() -> AxisPlacement3D

Get the reference placement

Returns:

GetRefPoint

GetRefPoint() -> Point3D

Get the reference point

Returns:

GetStartAngle

GetStartAngle() -> Angle

Get start angle.

Returns:

  • Angle

    angle as const Angle.

GetStartPoint

GetStartPoint() -> Point3D

Get start point in world coordinates

Returns:

GetStartRelPoint

GetStartRelPoint() -> Point3D

Get start point in relative coordinates

Returns:

  • Point3D

    start point in relative coordinates

GetXAxis

GetXAxis() -> Vector3D

Get Major axis (X-Axis of the placement).

Returns:

  • Vector3D

    Major axis as const Vector3D.

GetZAxis

GetZAxis() -> Vector3D

Get Normal vector of the placement.

Returns:

  • Vector3D

    Normal vector as const Vector3D.

IsAngleOnArc

IsAngleOnArc(angle: Angle) -> bool

Checks if the given angle lies on the arc

Parameters:

  • angle (Angle) –

    angle to test

Returns:

  • bool

    Angle on arc true/false

IsCircle

IsCircle() -> bool

Check if minor radius equals major radius

Returns:

  • bool

    result of check as bool.

IsClockwise

IsClockwise() -> bool

Returns winding direction clockwise true/false

Returns:

  • bool

    Is winding direction clockwise true/false

IsClosed

IsClosed() -> bool

Check delta angle is 2pi

Returns:

  • bool

    result of check as bool.

IsCounterClockwise

IsCounterClockwise() -> bool

Returns winding direction counterclockwise true/false

Returns:

  • bool

    Is winding direction counterclockwise true/false

IsEpsilonClosed

IsEpsilonClosed() -> bool

Check delta angle is 2pi

Returns:

  • bool

    result of check as bool.

IsValid

IsValid() -> bool

Checks if the arc is valid

Returns:

  • bool

    Validity true/false

Reverse

Reverse()

Reverse of current arc

Method reverse Arc, start with end angle and orientation.

RotateAroundLocalZAxis

RotateAroundLocalZAxis(angle: Angle)

Rotate the arc around the Z-axis (normal vector)

Parameters:

  • angle (Angle) –

    Rotation angle

SetCenter

SetCenter(center: Point3D)

Set center point.

Parameters:

  • center (Point3D) –

    center point

SetCenterRel

SetCenterRel(center: Point3D)

Set center point in local coordinate system

Parameters:

  • center (Point3D) –

    center point

SetClockwise overloaded

SetClockwise(cw: bool)

Set the winding direction of the arc

Parameters:

  • cw (bool) –

    winding clockwise true/false

SetClockwise()

Set the winding direction of the arc to CW

SetCounterClockwise overloaded

SetCounterClockwise(ccw: bool)

Set the winding direction of the arc

Parameters:

  • ccw (bool) –

    winding counterclockwise true/false

SetCounterClockwise()

Set the winding direction of the arc to CCW

SetDeltaAngle

SetDeltaAngle(deltaAngle: Angle)

Set the delta angle.

Set the delta angle

Parameters:

  • deltaAngle (Angle) –

    angle which will be set.

SetEndAngle overloaded

SetEndAngle(angle: Angle)

Set end angle.

Set the end angle and normalize it to [0,2PI[

Parameters:

  • angle (Angle) –

    angle which will be set.

SetEndAngle(angle: Angle, ccw: bool)

Set end angle.

Set the end angle and normalize it to [0,2PI[

Parameters:

  • angle (Angle) –

    angle which will be set.

  • ccw (bool) –

    in counterclockwise winding

SetEndPoint

SetEndPoint(endpoint: Point3D)

Set the end point of an object in world coordinates

Parameters:

  • endpoint (Point3D) –

    New end point of curve

SetMajorRadius

SetMajorRadius(radius: float)

Set major radius.

Parameters:

  • radius (float) –

    major radius

SetMinorRadius

SetMinorRadius(radius: float)

Set minor radius.

Parameters:

  • radius (float) –

    minor radius

SetNormVector

SetNormVector(normalVec: Vector3D)

Set the normvector

Set the plane normal and normalizes it to unit vector

Parameters:

  • normalVec (Vector3D) –

    Vector3D to be set

SetOrigin

SetOrigin(center: Point3D)

Set Origin

Parameters:

SetRefPlacement overloaded

SetRefPlacement(refPlacement: AxisPlacement3D)

Set the reference placement

Parameters:

SetRefPlacement(center: Point3D, xAxis: Vector3D, normalVec: Vector3D)

Set the reference placement

Parameters:

  • center (Point3D) –

    center point

  • xAxis (Vector3D) –

    X-axis of the arc

  • normalVec (Vector3D) –

    normal vector (Z-axis) of the arc

SetRefPlacementRel

SetRefPlacementRel(refPlacement: AxisPlacement3D)

Set the reference placement relative to the refPoint

Parameters:

SetRefPoint

SetRefPoint(refPoint: Point3D)

Set the reference point

Parameters:

  • refPoint (Point3D) –

    reference point

SetStartAngle overloaded

SetStartAngle(angle: Angle)

Set start angle

Set the start angle and normalize it to [0,2PI[

Parameters:

  • angle (Angle) –

    angle which will be set.

SetStartAngle(angle: Angle, ccw: bool)

Set start angle.

Set the start angle and normalize it to [0,2PI[

Parameters:

  • angle (Angle) –

    angle which will be set.

  • ccw (bool) –

    in counterclockwise winding

SetStartPoint

SetStartPoint(startpoint: Point3D)

Set the start point of an object in world coordinates

Parameters:

  • startpoint (Point3D) –

    New start point of curve

__eq__

__eq__(arc: Arc3D) -> bool

Comparison of arcs.

Be careful, this method work without tolerance!

Parameters:

  • arc (Arc3D) –

    arc to be compared.

Returns:

  • bool

    True when arcs are equal, otherwise false.

__init__ overloaded

__init__()

Initialize

__init__(arc: Arc3D)

Copy constructor.

Parameters:

  • arc (Arc3D) –

    Arc3D which will be copied.

__init__(
    center: Point3D,
    xDir: Vector3D,
    normVector: Vector3D,
    minor: float,
    major: float,
    startAngle: float,
    deltaAngle: float,
)

Constructor

Parameters:

  • center (Point3D) –

    Center point

  • xDir (Vector3D) –

    X-axis

  • normVector (Vector3D) –

    Normal vector

  • minor (float) –

    Minor radius

  • major (float) –

    Major radius

  • startAngle (float) –

    Start angle

  • deltaAngle (float) –

    Delta angle

__init__(
    center: Point3D,
    xDir: Vector3D,
    normVector: Vector3D,
    minor: float,
    major: float,
    startAngle: float,
    endAngle: float,
    counterClockwise: bool,
)

Constructor

Parameters:

  • center (Point3D) –

    Center point

  • xDir (Vector3D) –

    X-axis

  • normVector (Vector3D) –

    Normal vector

  • minor (float) –

    Minor radius

  • major (float) –

    Major radius

  • startAngle (float) –

    Start angle

  • endAngle (float) –

    End angle

  • counterClockwise (bool) –

    Winding direction

__init__(
    center: Point3D,
    minor: float,
    major: float,
    startAngle: float,
    deltaAngle: float,
)

Constructor

Parameters:

  • center (Point3D) –

    Center point

  • minor (float) –

    Minor radius

  • major (float) –

    Major radius

  • startAngle (float) –

    Start angle

  • deltaAngle (float) –

    Delta angle

__init__(
    center: Point3D,
    minor: float,
    major: float,
    startAngle: float,
    endAngle: float,
    counterClockwise: bool,
)

Constructor

Parameters:

  • center (Point3D) –

    Center point

  • minor (float) –

    Minor radius

  • major (float) –

    Major radius

  • startAngle (float) –

    Start angle

  • endAngle (float) –

    End angle

  • counterClockwise (bool) –

    Winding direction

__init__(
    placement: AxisPlacement3D,
    minor: float,
    major: float,
    startAngle: float,
    deltaAngle: float,
)

Constructor

Parameters:

  • placement (AxisPlacement3D) –

    3D Placement

  • minor (float) –

    Minor radius

  • major (float) –

    Major radius

  • startAngle (float) –

    Start angle

  • deltaAngle (float) –

    Delta angle

__init__(
    placement: AxisPlacement3D,
    minor: float,
    major: float,
    startAngle: float,
    endAngle: float,
    counterClockwise: bool,
)

Constructor

Parameters:

  • placement (AxisPlacement3D) –

    3D Placement

  • minor (float) –

    Minor radius

  • major (float) –

    Major radius

  • startAngle (float) –

    Start angle

  • endAngle (float) –

    End angle

  • counterClockwise (bool) –

    Winding direction

__init__(arc2D: Arc2D)

Constructor

Parameters:

  • arc2D (Arc2D) –

    Arc to copy

__repr__

__repr__() -> str

Convert to string