Ignore:
Timestamp:
Sep 15, 2004, 1:49:49 PM (21 years ago)
Author:
ole
Message:

Added check for point inside triangle

File:
1 edited

Legend:

Unmodified
Added
Removed
  • inundation/ga/storm_surge/pyvolution/least_squares.py

    r301 r302  
    5858
    5959                #Compute interpolation
    60                
    6160                sigma2 = dot((x-xi0), n2)/dot((xi2-xi0), n2)
    6261                sigma0 = dot((x-xi1), n0)/dot((xi0-xi1), n0)
     
    6665                assert abs(sigma0 + sigma1 + sigma2 - 1.0) < epsilon
    6766
    68                 #Assign values to matrix
    69                 v0 = self.vertices[k,0]
    70                 self.matrix[i, v0] = sigma0
     67               
     68                #Check that this trinagle contains data point
     69                if sigma0 >= 0 and sigma1 >= 0 and sigma2 >= 0:
    7170
    72                 v1 = self.vertices[k,1]
    73                 self.matrix[i, v1] = sigma1
     71                    #Assign values to matrix
     72                    v_id = self.vertices[k,0]
     73                    self.matrix[i, v_id] = sigma0
    7474
    75                 v2 = self.vertices[k,2]
    76                 self.matrix[i, v2] = sigma2
     75                    v_id = self.vertices[k,1]
     76                    self.matrix[i, v_id] = sigma1
     77
     78                    v_id = self.vertices[k,2]
     79                    self.matrix[i, v_id] = sigma2
    7780
    7881               
Note: See TracChangeset for help on using the changeset viewer.