LineCurve ========= .. py:class:: py3dm.LineCurve LineCurve(line: Line) LineCurve(start: Point3d, end: Point3d) Bases: :py:obj:`Geometry` Python bindings for the openNURBS ``ON_LineCurve`` class. .. py:attribute:: line :type: Line .. py:method:: dimension() -> int Returns ``2`` or ``3`` (``2`` so ``ON_LineCurve`` can be uses as a trimming curve). .. py:method:: is_valid(text_log: TextLog | None = None) -> bool Returns ``True`` if start ``!=`` end and both start and end are valid points. .. py:method:: reverse() -> bool Reverses the parameterization. Domain changes from ``[a, b]`` to ``[-b, -a]``. .. py:method:: set_end_point(new_end: Point3d) -> bool Forces the curve to end at a specified point. :param new_end: The new end point. :type new_end: Point3d :returns: **success** -- ``True`` if successful, ``False`` otherwise. :rtype: bool .. rubric:: Notes Some end points cannot be moved. Be sure to check return code. .. py:method:: set_start_point(new_end: Point3d) -> bool Forces the curve to start at a specified point. :param new_start: The new start point. :type new_start: Point3d :returns: **success** -- ``True`` if successful, ``False`` otherwise. :rtype: bool .. rubric:: Notes Some start points cannot be moved. Be sure to check return code. .. py:method:: swap_coordinates(index_i: int, index_j: int) -> bool Swaps the coordinates of the given indices. :returns: **success** -- ``True`` if successful, ``False`` otherwise. :rtype: bool