Skip to content

Arc3D

Class full 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.

Attributes

Center: Point3D property writable

Get center.

CenterRel: Point3D property writable

Get center in relative coordinate system

CounterClockwise: bool property writable

Returns winding direction counterclockwise true/false

DeltaAngle: Angle property writable

Get the delta angle

EndAngle: Angle property writable

Get end angle.

EndPoint: Point3D property writable

Get end point in world coordinates

EndRelPoint: Point3D property

Get end point in relative coordinates

MajorRadius: float property writable

Get major radius.

MinorRadius: float property writable

Get minor radius.

NormVector: Vector3D property writable

Get normvector.

Origin: Point3D property writable

Get Origin.

RefPlacement: AxisPlacement3D property writable

Get the reference placement

RefPlacementRel: AxisPlacement3D property writable

Get the reference placement

RefPoint: Point3D property writable

Get the reference point

StartAngle: Angle property writable

Get start angle.

StartPoint: Point3D property writable

Get start point in world coordinates

StartRelPoint: Point3D property

Get start point in relative coordinates

Functions

Close()

Close the arc.

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

EqualRef(arc)

Test for equal reference point

Parameters:

Name Type Description Default
arc Arc3D

Arc3D to compare with

required

Returns:

Type Description
bool

result as bool.

GetCenter()

Get center.

Returns:

Type Description
Point3D

Point3D center point

GetCenterRel()

Get center in relative coordinate system

Returns:

Type Description
Point3D

Point3D center point

GetDeltaAngle()

Get the delta angle

Returns:

Type Description
Angle

delta angle

GetEndAngle()

Get end angle.

Returns:

Type Description
Angle

angle as const Angle.

GetEndPoint()

Get end point in world coordinates

Returns:

Type Description
Point3D

end point.

GetEndRelPoint()

Get end point in relative coordinates

Returns:

Type Description
Point3D

End Point in relative coordinates.

GetLocalPoint(point)

Get the local coordinates of a global world point

Parameters:

Name Type Description Default
point Point3D
required

Returns:

Type Description
Point3D

point angle

GetMajorAxis()

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

Returns:

Type Description
Vector3D

major axis as Vector3D

GetMajorRadius()

Get major radius.

Returns:

Type Description
float

major radius as const double.

GetMinorAxis()

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

Returns:

Type Description
Vector3D

minor axis as Vector3D

GetMinorRadius()

Get minor radius.

Returns:

Type Description
float

minor radius as const double.

GetNormVector()

Get normvector.

Returns:

Type Description
Vector3D

normvector as const Vector3D.

GetOrigin()

Get Origin.

Returns:

Type Description
Point3D

Point3D Origin

GetPoint(angle)

Get point on arc with given angle in world coordinates

Parameters:

Name Type Description Default
angle Angle

central angle of the point

required

Returns:

Type Description
Point3D

point on arc as Point3D.

GetPointAngle(point)

Get the angle of a point

Parameters:

Name Type Description Default
point Point3D
required

Returns:

Type Description
Angle

point angle

GetPointRel(angle)

Get point on arc with given angle in relative coordinates

Parameters:

Name Type Description Default
angle Angle

central angle of the point

required

Returns:

Type Description
Point3D

point on arc as Point3D.

GetRefPlacement()

Get the reference placement

Returns:

Type Description
AxisPlacement3D

reference placement

GetRefPlacementRel()

Get the reference placement

Returns:

Type Description
AxisPlacement3D

reference placement

GetRefPoint()

Get the reference point

Returns:

Type Description
Point3D

reference point

GetStartAngle()

Get start angle.

Returns:

Type Description
Angle

angle as const Angle.

GetStartPoint()

Get start point in world coordinates

Returns:

Type Description
Point3D

start point

GetStartRelPoint()

Get start point in relative coordinates

Returns:

Type Description
Point3D

start point in relative coordinates

GetXAxis()

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

Returns:

Type Description
Vector3D

Major axis as const Vector3D.

GetZAxis()

Get Normal vector of the placement.

Returns:

Type Description
Vector3D

Normal vector as const Vector3D.

IsAngleOnArc(angle)

Checks if the given angle lies on the arc

Parameters:

Name Type Description Default
angle Angle

angle angle to test

required

Returns:

Type Description
bool

Angle on arc true/false

IsCircle()

Check if minor radius equals major radius

Returns:

Type Description
bool

result of check as bool.

IsClockwise()

Returns winding direction clockwise true/false

Returns:

Type Description
bool

Is winding direction clockwise true/false

IsClosed()

Check delta angle is 2pi

Returns:

Type Description
bool

result of check as bool.

IsCounterClockwise()

Returns winding direction counterclockwise true/false

Returns:

Type Description
bool

Is winding direction counterclockwise true/false

IsEpsilonClosed()

Check delta angle is 2pi

Returns:

Type Description
bool

result of check as bool.

IsValid()

Checks if the arc is valid

Returns:

Type Description
bool

Validity true/false

Reverse()

Reverse of current arc

Method reverse Arc, start with end angle and orientation.

RotateAroundLocalZAxis(angle)

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

Parameters:

Name Type Description Default
angle Angle

Rotation angle

required

SetCenter(center)

Set center point.

Parameters:

Name Type Description Default
center Point3D

center point

required

SetCenterRel(center)

Set center point in local coordinate system

Parameters:

Name Type Description Default
center Point3D

center point

required

SetClockwise overload

SetClockwise(cw)

Set the winding direction of the arc

Parameters:

Name Type Description Default
cw bool

winding clockwise true/false

required
SetClockwise()

Set the winding direction of the arc to CW

SetCounterClockwise overload

SetCounterClockwise(ccw)

Set the winding direction of the arc

Parameters:

Name Type Description Default
ccw bool

winding counterclockwise true/false

required
SetCounterClockwise()

Set the winding direction of the arc to CCW

SetDeltaAngle(deltaAngle)

Set the delta angle.

Set the delta angle

Parameters:

Name Type Description Default
deltaAngle Angle

angle which will be set.

required

SetEndAngle overload

SetEndAngle(angle)

Set end angle.

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

Parameters:

Name Type Description Default
angle Angle

angle which will be set.

required
SetEndAngle(angle, ccw)

Set end angle.

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

Parameters:

Name Type Description Default
angle Angle

angle which will be set.

required
ccw bool

in counterclockwise winding

required

SetEndPoint(endpoint)

Set the end point of an object in world coordinates

Parameters:

Name Type Description Default
endpoint Point3D

New end point of curve

required

SetMajorRadius(radius)

Set major radius.

Parameters:

Name Type Description Default
radius float

major radius

required

SetMinorRadius(radius)

Set minor radius.

Parameters:

Name Type Description Default
radius float

minor radius

required

SetNormVector(normalVec)

Set the normvector

Set the plane normal and normalizes it to unit vector

Parameters:

Name Type Description Default
normalVec Vector3D

Vector3D to be set

required

SetOrigin(center)

Set Origin

Parameters:

Name Type Description Default
center Point3D

Origin

required

SetRefPlacement overload

SetRefPlacement(refPlacement)

Set the reference placement

Parameters:

Name Type Description Default
refPlacement AxisPlacement3D

reference placement

required
SetRefPlacement(center, xAxis, normalVec)

Set the reference placement

Parameters:

Name Type Description Default
center Point3D

center point

required
xAxis Vector3D

X-axis of the arc

required
normalVec Vector3D

normal vector (Z-axis) of the arc

required

SetRefPlacementRel(refPlacement)

Set the reference placement relative to the refPoint

Parameters:

Name Type Description Default
refPlacement AxisPlacement3D

reference placement

required

SetRefPoint(refPoint)

Set the reference point

Parameters:

Name Type Description Default
refPoint Point3D

reference point

required

SetStartAngle overload

SetStartAngle(angle)

Set start angle

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

Parameters:

Name Type Description Default
angle Angle

angle which will be set.

required
SetStartAngle(angle, ccw)

Set start angle.

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

Parameters:

Name Type Description Default
angle Angle

angle which will be set.

required
ccw bool

in counterclockwise winding

required

SetStartPoint(startpoint)

Set the start point of an object in world coordinates

Parameters:

Name Type Description Default
startpoint Point3D

New start point of curve

required

__eq__(arc)

Comparison of arcs without tolerance.

Be careful, this method work without tolerance!

Parameters:

Name Type Description Default
arc Arc3D

Compared arc.

required

Returns:

Type Description
object

True when arcs are equal, otherwise false.

__init__ overload

__init__()

initialize

__init__(arc)

Copy constructor.

Parameters:

Name Type Description Default
arc Arc3D

Arc3D which will be copied.

required
__init__(center, xDir, normVector, minor, major, startAngle, deltaAngle)

Constructor

Parameters:

Name Type Description Default
center Point3D

Center point

required
xDir Vector3D

X-axis

required
normVector Vector3D

Normal vector

required
minor float

Minor radius

required
major float

Major radius

required
startAngle float

Start angle

required
deltaAngle float

Delta angle

required
__init__(center, xDir, normVector, minor, major, startAngle, endAngle, counterClockwise)

Constructor

Parameters:

Name Type Description Default
center Point3D

Center point

required
xDir Vector3D

X-axis

required
normVector Vector3D

Normal vector

required
minor float

Minor radius

required
major float

Major radius

required
startAngle float

Start angle

required
endAngle float

End angle

required
counterClockwise bool

Winding direction

required
__init__(center, minor, major, startAngle, deltaAngle)

Constructor

Parameters:

Name Type Description Default
center Point3D

Center point

required
minor float

Minor radius

required
major float

Major radius

required
startAngle float

Start angle

required
deltaAngle float

Delta angle

required
__init__(center, minor, major, startAngle, endAngle, counterClockwise)

Constructor

Parameters:

Name Type Description Default
center Point3D

Center point

required
minor float

Minor radius

required
major float

Major radius

required
startAngle float

Start angle

required
endAngle float

End angle

required
counterClockwise bool

Winding direction

required
__init__(placement, minor, major, startAngle, deltaAngle)

Constructor

Parameters:

Name Type Description Default
placement AxisPlacement3D

3D Placement

required
minor float

Minor radius

required
major float

Major radius

required
startAngle float

Start angle

required
deltaAngle float

Delta angle

required
__init__(placement, minor, major, startAngle, endAngle, counterClockwise)

Constructor

Parameters:

Name Type Description Default
placement AxisPlacement3D

3D Placement

required
minor float

Minor radius

required
major float

Major radius

required
startAngle float

Start angle

required
endAngle float

End angle

required
counterClockwise bool

Winding direction

required
__init__(arc2D)

Constructor

Parameters:

Name Type Description Default
arc2D Arc2D

Arc to copy

required

__repr__()

Convert to string