alias_api.AlCurveOnSurfacePoint

class alias_api.AlCurveOnSurfacePoint

Bases: AlPoint

Interface to Alias curve on surface points

A point can be created in the parametric space of a AlCurveOnSurface. This point can be queried for the curve normals, tangent, and position in world coordinate system. This class contains methods for creating, and moving the point in the parametric space of the curve on surface.

If the AlCurveOnSurface or its AlSurface is deleted, the curve on surface point created on it is automatically deleted.

arc_length(self: alias_api.AlCurveOnSurfacePoint) tuple[int, float]

Find the length of the curve on surface on which the point is present.

Returns

A tuple (status, arg_len), where status [AlStatusCode] - the status code result

Success - the arc length was found InvalidObject - the point is not valid

arc_len [float] - the length of the curve

Return type

tuple

attached_to(self: alias_api.AlCurveOnSurfacePoint) alias_api.AlCurveOnSurface

Return the AlCurveOnSurface this AlCurveOnSurfacePoint is associated with.

copy_wrapper(self: alias_api.AlCurveOnSurfacePoint) alias_api.AlObject

Return an exact duplicate of this AlCurveOnSurfacePoint wrapper.

create(self: alias_api.AlCurveOnSurfacePoint, curve_on_surface: alias_api.AlCurveOnSurface, u: SupportsFloat) int

Create an AlCurveOnSurfacePoint on the given AlCurveOnSurface.

Parameters
  • curve_on_surface (AlCurveOnSurface) – The curve on surface on which the point is to be created.

  • u (float) – The parameter at which point is to be created.

Returns

The status code Success - the point was successfully created. AlreadyCreated - object has already been created. Failure - the point could not be created on the curve on surface. InvalidArgument - the curve is not a valid object.

Return type

AlStatusCode

normal1(self: alias_api.AlCurveOnSurfacePoint) tuple[int, float, float, float]

Find the normal vector to the curve on surface at the point.

Returns

A tuple (status, x, y, z), where status [AlStatusCode] - the status code result

Success - the normal was found InvalidObject - the point is not valid

x [float] - the x coordinate of the normal y [float] - the y coordinate of the normal z [float] - the z coordinate of the normal

Return type

tuple

normal2(self: alias_api.AlCurveOnSurfacePoint) tuple[int, float, float, float]

Find the second normal vector to the curve on surface at the point.

Returns

A tuple (status, x, y, z), where status [AlStatusCode] - the status code result

Success - the normal was found InvalidObject - the point is not valid

x [float] - the x coordinate of the second normal y [float] - the y coordinate of the second normal z [float] - the z coordinate of the second normal

Return type

tuple

parameter(self: alias_api.AlCurveOnSurfacePoint) tuple[int, float]

Find the parameter value at which the point is present.

Returns

A tuple (status, u), where status [AlStatusCode] - the status code result

Success - the parameter was found InvalidObject - the point is not valid

u [float] - the curve parameter where point is present

Return type

tuple

set_parameter(self: alias_api.AlCurveOnSurfacePoint, u: SupportsFloat) int

Move the position of a point created on a curve on surface.

Parameters

u (float) – The parameter on the curve on surface where the point has to be moved.

Returns

The status code result Success - the point was moved InvalidObject - the point is not valid

Return type

AlStatuscode

tangent(self: alias_api.AlCurveOnSurfacePoint) tuple[int, float, float, float]

Find the tangent vector to the curve on surface at the point.

Returns

A tuple (status, x, y, z), where status [AlStatusCode] - the status code result

Success - the tangent was found InvalidObject - the point is not valid

x [float] - the x coordinate of the tangent y [float] - the y coordinate of the tangent z [float] - the z coordinate of the tangent

Return type

tuple

type(self: alias_api.AlCurveOnSurfacePoint) alias_api.AlObjectType

Return the AlCurveOnSurfacePoint type identifier.

world_position(self: alias_api.AlCurveOnSurfacePoint) tuple[int, float, float, float]

Find the world coordinates of the point.

Returns

A tuple (status, x, y, z), where status [AlStatusCode] - the status code result

Success - the coordinates was found InvalidObject - the point is not valid

x [float] - the x world coordinate of the point y [float] - the y world coordinate of the point z [float] - the z world coordinate of the point

Return type

tuple