@@ -434,7 +434,8 @@ def feature_names(self):
434434 return self .feature_name_index .keys ()
435435
436436 def fault_names (self ):
437- pass
437+
438+ return [f .name for f in self .faults ]
438439
439440 def check_inialisation (self ):
440441 if self .data is None :
@@ -485,7 +486,8 @@ def _add_feature(self, feature):
485486 f"Adding { feature .name } to model at location { len (self .features )} "
486487 )
487488 self ._add_domain_fault_above (feature )
488- self ._add_unconformity_above (feature )
489+ if feature .type == FeatureType .INTERPOLATED :
490+ self ._add_unconformity_above (feature )
489491 feature .model = self
490492
491493 def data_for_feature (self , feature_name ):
@@ -882,8 +884,6 @@ def create_and_add_dtm(self, series_surface_data, **kwargs):
882884 series_feature = series_builder .feature
883885 series_builder .build_arguments = kwargs
884886 series_feature .type = "dtm"
885- # see if any unconformities are above this feature if so add region
886- # self._add_unconformity_above(series_feature)self._add_feature(series_feature)
887887 self ._add_feature (series_feature )
888888 return series_feature
889889
@@ -921,8 +921,7 @@ def create_and_add_fold_frame(self, foldframe_data, tol=None, **kwargs):
921921 kwargs ["tol" ] = tol
922922 fold_frame_builder .setup (** kwargs )
923923 fold_frame = fold_frame_builder .frame
924- # for i in range(3):
925- # self._add_unconformity_above(fold_frame[i])
924+
926925 fold_frame .type = FeatureType .STRUCTURALFRAME
927926 fold_frame .builder = fold_frame_builder
928927 self ._add_feature (fold_frame )
@@ -983,9 +982,7 @@ def create_and_add_folded_foliation(
983982 series_builder .build_arguments = kwargs
984983 series_feature .type = FeatureType .INTERPOLATED
985984 series_feature .fold = fold
986- # see if any unconformities are above this feature if so add region
987- # self._add_unconformity_above(series_feature)self._add_feature(series_feature)
988- # result['support'] = series_feature.get_interpolator().support
985+
989986 self ._add_feature (series_feature )
990987 return series_feature
991988
@@ -1049,9 +1046,6 @@ def create_and_add_folded_fold_frame(
10491046 folded_fold_frame .builder = fold_frame_builder
10501047
10511048 folded_fold_frame .type = "structuralframe"
1052- # see if any unconformities are above this feature if so add region
1053- # for i in range(3):
1054- # self._add_unconformity_above(fold_frame[i])
10551049
10561050 self ._add_feature (folded_fold_frame )
10571051
@@ -1255,6 +1249,7 @@ def _add_unconformity_above(self, feature):
12551249 -------
12561250
12571251 """
1252+
12581253 for f in reversed (self .features ):
12591254 if f .type == FeatureType .UNCONFORMITY and f .name != feature .name :
12601255 feature .add_region (lambda pos : f .evaluate (pos ))
@@ -1330,6 +1325,8 @@ def add_unconformity(
13301325 logger .debug (f"Reached unconformity { f .name } " )
13311326 break
13321327 logger .debug (f"Adding { uc_feature .name } as unconformity to { f .name } " )
1328+ if f .type == FeatureType .FAULT :
1329+ continue
13331330 f .add_region (lambda pos : ~ uc_feature .evaluate (pos ))
13341331 # now add the unconformity to the feature list
13351332 self ._add_feature (uc_feature )
@@ -1362,12 +1359,6 @@ def add_onlap_unconformity(
13621359 break
13631360 if f != feature :
13641361 f .add_region (lambda pos : uc_feature .evaluate (pos ))
1365- # for f in self.features:
1366- # f.add_region(lambda pos: uc_feature.evaluate(pos))
1367-
1368- # see if any unconformities are above this feature if so add region
1369- # self._add_unconformity_above(uc_feature)
1370- # self._add_unconformity_below(uc_feature) # , uc_feature)
13711362 self ._add_feature (uc_feature )
13721363
13731364 return uc_feature
0 commit comments