#NEWLINE# def arbitrary_point( self , parameter = 't' ) : #NEWLINE# #INDENT# "A parameterized point on the Line.\n\n        Parameters\n        ==========\n\n        parameter : str, optional\n            The name of the parameter which will be used for the parametric\n            point. The default value is 't'. When this parameter is 0, the\n            first point used to define the line will be returned, and when\n            it is 1 the second point will be returned.\n\n        Returns\n        =======\n\n        point : Point3D\n\n        Raises\n        ======\n\n        ValueError\n            When ``parameter`` already appears in the Line's definition.\n\n        See Also\n        ========\n\n        sympy.geometry.point.Point3D\n\n        Examples\n        ========\n\n        >>> from sympy import Point3D, Line3D\n        >>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)\n        >>> l1 = Line3D(p1, p2)\n        >>> l1.arbitrary_point()\n        Point3D(4*t + 1, 3*t, t)\n\n        " #NEWLINE# t = _symbol ( parameter ) #NEWLINE# if ( t . name in ( f . name for f in self . free_symbols ) ) : #NEWLINE# #INDENT# raise ValueError ( ( 'Symbol %s already appears in object and cannot be used as a parameter.' % t . name ) ) #NEWLINE# #UNINDENT# x = simplify ( ( self . p1 . x + ( t * ( self . p2 . x - self . p1 . x ) ) ) ) #NEWLINE# y = simplify ( ( self . p1 . y + ( t * ( self . p2 . y - self . p1 . y ) ) ) ) #NEWLINE# z = simplify ( ( self . p1 . z + ( t * ( self . p2 . z - self . p1 . z ) ) ) ) #NEWLINE# return Point3D ( x , y , z )