@@ -45,8 +45,14 @@ def vector_cross(vector1, vector2):
45
45
:return: result of the cross product
46
46
:rtype: list
47
47
"""
48
- if not vector1 or not vector2 :
49
- raise ValueError ("Input vectors cannot be empty" )
48
+ try :
49
+ if vector1 is None or len (vector1 ) == 0 or vector2 is None or len (vector2 ) == 0 :
50
+ raise ValueError ("Input vectors cannot be empty" )
51
+ except TypeError as e :
52
+ print ("An error occurred: {}" .format (e .args [- 1 ]))
53
+ raise TypeError ("Input must be a list or tuple" )
54
+ except Exception :
55
+ raise
50
56
51
57
if len (vector1 ) != 3 or len (vector2 ) != 3 :
52
58
raise ValueError ("Input should contain 3 elements" )
@@ -70,8 +76,14 @@ def vector_dot(vector1, vector2):
70
76
:return: result of the dot product
71
77
:rtype: list
72
78
"""
73
- if vector1 is None or len (vector1 ) == 0 or vector2 is None or len (vector2 ) == 0 :
74
- raise ValueError ("Input vectors cannot be empty" )
79
+ try :
80
+ if vector1 is None or len (vector1 ) == 0 or vector2 is None or len (vector2 ) == 0 :
81
+ raise ValueError ("Input vectors cannot be empty" )
82
+ except TypeError as e :
83
+ print ("An error occurred: {}" .format (e .args [- 1 ]))
84
+ raise TypeError ("Input must be a list or tuple" )
85
+ except Exception :
86
+ raise
75
87
76
88
# Compute dot product
77
89
prod = 0
@@ -93,8 +105,14 @@ def vector_normalize(vector_in, decimals=6):
93
105
:return: the normalized vector (i.e. the unit vector)
94
106
:rtype: list
95
107
"""
96
- if vector_in is None or len (vector_in ) == 0 :
97
- raise ValueError ("Input vector cannot be empty" )
108
+ try :
109
+ if vector_in is None or len (vector_in ) == 0 :
110
+ raise ValueError ("Input vector cannot be empty" )
111
+ except TypeError as e :
112
+ print ("An error occurred: {}" .format (e .args [- 1 ]))
113
+ raise TypeError ("Input must be a list or tuple" )
114
+ except Exception :
115
+ raise
98
116
99
117
# Calculate magnitude of the vector
100
118
sq_sum = 0
@@ -126,8 +144,14 @@ def vector_generate(start_pt, end_pt, normalize=False):
126
144
:return: a vector from start_pt to end_pt
127
145
:rtype: list
128
146
"""
129
- if start_pt is None or len (start_pt ) == 0 or end_pt is None or len (end_pt ) == 0 :
130
- raise ValueError ("Input points cannot be empty" )
147
+ try :
148
+ if start_pt is None or len (start_pt ) == 0 or end_pt is None or len (end_pt ) == 0 :
149
+ raise ValueError ("Input points cannot be empty" )
150
+ except TypeError as e :
151
+ print ("An error occurred: {}" .format (e .args [- 1 ]))
152
+ raise TypeError ("Input must be a list or tuple" )
153
+ except Exception :
154
+ raise
131
155
132
156
ret_vec = []
133
157
for sp , ep in zip (start_pt , end_pt ):
@@ -148,8 +172,14 @@ def point_translate(point_in, vector_in):
148
172
:return: translated point
149
173
:rtype: list
150
174
"""
151
- if point_in is None or len (point_in ) == 0 or vector_in is None or len (vector_in ) == 0 :
152
- raise ValueError ("Inputs cannot be empty" )
175
+ try :
176
+ if point_in is None or len (point_in ) == 0 or vector_in is None or len (vector_in ) == 0 :
177
+ raise ValueError ("Input arguments cannot be empty" )
178
+ except TypeError as e :
179
+ print ("An error occurred: {}" .format (e .args [- 1 ]))
180
+ raise TypeError ("Input must be a list or tuple" )
181
+ except Exception :
182
+ raise
153
183
154
184
# Translate the point using the input vector
155
185
point_out = [coord + comp for coord , comp in zip (point_in , vector_in )]
@@ -386,8 +416,14 @@ def normalize_knot_vector(knot_vector, decimals=4):
386
416
:return: normalized knot vector
387
417
:rtype: list
388
418
"""
389
- if knot_vector is None or len (knot_vector ) == 0 :
390
- return knot_vector
419
+ try :
420
+ if knot_vector is None or len (knot_vector ) == 0 :
421
+ raise ValueError ("Input knot vector cannot be empty" )
422
+ except TypeError as e :
423
+ print ("An error occurred: {}" .format (e .args [- 1 ]))
424
+ raise TypeError ("Knot vector must be a list or tuple" )
425
+ except Exception :
426
+ raise
391
427
392
428
first_knot = float (knot_vector [0 ])
393
429
last_knot = float (knot_vector [- 1 ])
@@ -450,8 +486,14 @@ def check_knot_vector(degree, knot_vector, num_ctrlpts):
450
486
:return: True if the knot vector is valid, False otherwise
451
487
:rtype: bool
452
488
"""
453
- if knot_vector is None or len (knot_vector ) == 0 :
454
- raise ValueError ("Input knot vector cannot be empty" )
489
+ try :
490
+ if knot_vector is None or len (knot_vector ) == 0 :
491
+ raise ValueError ("Input knot vector cannot be empty" )
492
+ except TypeError as e :
493
+ print ("An error occurred: {}" .format (e .args [- 1 ]))
494
+ raise TypeError ("Knot vector must be a list or tuple" )
495
+ except Exception :
496
+ raise
455
497
456
498
# Check the formula; m = p + n + 1
457
499
if len (knot_vector ) != degree + num_ctrlpts + 1 :
0 commit comments