From 97545e6394ffcffa217066a51805c190f10d447c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Orvisk=C3=BD?= <orvisky.tomas@centrum.cz>
Date: Sun, 28 Jan 2024 12:02:45 +0100
Subject: [PATCH] Empty edge tip fix

---
 src/pyplaml/diagram_edge.py | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/src/pyplaml/diagram_edge.py b/src/pyplaml/diagram_edge.py
index d9b46b9..9606caf 100644
--- a/src/pyplaml/diagram_edge.py
+++ b/src/pyplaml/diagram_edge.py
@@ -159,20 +159,21 @@ class DiagramEdge(DiagramObject):
         _dir = self.get_dir()
         def_params = {"tip_length": 0.2, "tip_width": 0.2}
 
-        if _dir == Direction.LEFT:
+        if _dir == Direction.LEFT and self.source_rel is not Relation.NONE:
             self.mo_line.add_tip(self.__get_line_tip(self.source_rel), **def_params)
-
-        elif _dir == Direction.RIGHT:
+        elif _dir == Direction.RIGHT and self.target_rel is not Relation.NONE:
             self.mo_line.add_tip(self.__get_line_tip(self.target_rel), **def_params)
-
         else:
             if self.dotted:
-                self.mo_line.add_tip(self.__get_line_tip(self.source_rel), **def_params)
-                self.mo_line.add_tip(self.__get_line_tip(self.target_rel), **def_params, at_start=True)
-
+                if self.source_rel is not Relation.NONE:
+                    self.mo_line.add_tip(self.__get_line_tip(self.source_rel), **def_params)
+                if self.target_rel is not Relation.NONE:
+                    self.mo_line.add_tip(self.__get_line_tip(self.target_rel), **def_params, at_start=True)
             else:
-                self.mo_line.add_tip(self.__get_line_tip(self.target_rel), **def_params, at_start=True)
-                self.mo_line.add_tip(self.__get_line_tip(self.source_rel), **def_params)
+                if self.source_rel is not Relation.NONE:
+                    self.mo_line.add_tip(self.__get_line_tip(self.target_rel), **def_params, at_start=True)
+                if self.target_rel is not Relation.NONE:
+                    self.mo_line.add_tip(self.__get_line_tip(self.source_rel), **def_params)
 
     @staticmethod
     def __get_line_tip(rel: Relation):
-- 
GitLab