@classmethod
def from_frame_point(cls, tcp_frame, cog_pt=None, **kwargs):
    """Create RapidToolData object from :class:`compas.Geometry.Primitive` objects.

        Parameters
        ----------
        tcp_frame : :class:`compas.geometry.Frame`
            Frame at tool center plane.
        cog_pt : :class:`compas.geometry.Point`, optional
            Point at tool center of gravity.
        name : :class:`str`, optional
        weight : :class:`float`, optional
            Tool weight in kg

        Returns
        -------
        :class:`RapidToolData`
        """
    tcp_coord = tcp_frame.point.data
    tcp_quaternion = tcp_frame.quaternion.wxyz
    if cog_pt:
        kwargs.update({'cog_coord': cog_pt.data})
    return cls(tcp_coord, tcp_quaternion, **kwargs)
