Point.py 652 bytes
# -*- coding: utf-8 -*-

from Model.Except import NotImplementedMethodeError

class Point(object):
    def __init__(self, name:str = ""):
        super(Point, self).__init__()

        self._name = name

    @property
    def name(self):
        return self._name

    @name.setter
    def name(self, name):
        self._name = name

    def point_is_named(self):
        """
        Returns:
            True if the point is named.
        """
        return self._name.strip() != ""

    def is_nan(self):
        raise NotImplementedMethodeError(self, self.is_nan)

    def dist(self, p2):
        raise NotImplementedMethodeError(self, self.dist)