def __add__(self, other_pt):
        """Add two Points together.

        Parameters
        ----------
        other_pt : :obj:`Point` or :obj:`numpy.ndarray` of float
            The other point to add to this one.

        Returns
        -------
        :obj:`Point`
            The result of adding the two points together.

        Raises
        ------
        ValueError
            If the shape and/or frames of the two points does not match.
        """
        # Handle point adds
        if isinstance(other_pt, Point) and other_pt.dim == self.dim:
            if self._frame != other_pt.frame:
                raise ValueError('Frames must be the same for addition')
            return Point(self.data + other_pt.data, frame=self._frame)
        # Handle numpy adds
        elif isinstance(other_pt, np.ndarray) and other_pt.shape == self.data.shape:
            return Point(self.data + other_pt, frame=self._frame)
        raise ValueError('Can only add to other Point objects or numpy ndarrays of the same dim')
def __add__ ( self , other_pt ) : if isinstance ( other_pt , Point ) and other_pt . dim == self . dim : if self . _frame != other_pt . frame : raise ValueError ( 'Frames must be the same for addition' ) return Point ( self . data + other_pt . data , frame = self . _frame ) elif isinstance ( other_pt , np . ndarray ) and other_pt . shape == self . data . shape : return Point ( self . data + other_pt , frame = self . _frame ) raise ValueError ( 'Can only add to other Point objects or numpy ndarrays of the same dim' )
Add two Points together.

        Parameters
        ----------
        other_pt : :obj:`Point` or :obj:`numpy.ndarray` of float
            The other point to add to this one.

        Returns
        -------
        :obj:`Point`
            The result of adding the two points together.

        Raises
        ------
        ValueError
            If the shape and/or frames of the two points does not match.