From 25fa90e3f71e4811f81d4c7cc9519fbeee98e8e1 Mon Sep 17 00:00:00 2001
From: ojs1g14 <ojs1g14@soton.ac.uk>
Date: Fri, 28 Sep 2018 14:35:35 +0100
Subject: [PATCH] Update trim.py

---
 AmpScan/trim.py | 41 ++++++++++++++++++++++-------------------
 1 file changed, 22 insertions(+), 19 deletions(-)

diff --git a/AmpScan/trim.py b/AmpScan/trim.py
index 76509e1..6c146c4 100644
--- a/AmpScan/trim.py
+++ b/AmpScan/trim.py
@@ -30,22 +30,25 @@ class trimMixin(object):
         >>> amp.planarTrim(100, 2)
 
         """
-        # planar values for each vert on face 
-        fv = self.vert[self.faces, plane]
-        # Number points on each face are above cut plane
-        fvlogic = (fv > height).sum(axis=1)
-        # Faces with points both above and below cut plane
-        adjf = self.faces[np.logical_or(fvlogic == 2, fvlogic == 1)]
-        # Get adjacent vertices
-        adjv = np.unique(adjf)
-        # Get vert above height and set to height
-        abvInd = adjv[self.vert[adjv, plane] > height]
-        self.vert[abvInd, plane] = height
-        # Find all verts above plane
-        delv = self.vert[:, plane] > height
-        # Reorder verts to account for deleted one
-        vInd = np.cumsum(~delv) - 1
-        self.faces = self.faces[fvlogic != 3, :]
-        self.faces = vInd[self.faces]
-        self.vert = self.vert[~delv, :]
-        self.calcStruct()
\ No newline at end of file
+        if isinstance(height, float) and isinstance(plane, int):
+            # planar values for each vert on face 
+            fv = self.vert[self.faces, plane]
+            # Number points on each face are above cut plane
+            fvlogic = (fv > height).sum(axis=1)
+            # Faces with points both above and below cut plane
+            adjf = self.faces[np.logical_or(fvlogic == 2, fvlogic == 1)]
+            # Get adjacent vertices
+            adjv = np.unique(adjf)
+            # Get vert above height and set to height
+            abvInd = adjv[self.vert[adjv, plane] > height]
+            self.vert[abvInd, plane] = height
+            # Find all verts above plane
+            delv = self.vert[:, plane] > height
+            # Reorder verts to account for deleted one
+            vInd = np.cumsum(~delv) - 1
+            self.faces = self.faces[fvlogic != 3, :]
+            self.faces = vInd[self.faces]
+            self.vert = self.vert[~delv, :]
+            self.calcStruct()
+        else:
+            raise TypeError("height arg must be a float and plane arg must be an int")
\ No newline at end of file
-- 
GitLab