Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 20 additions & 5 deletions map2loop/mapdata.py
Original file line number Diff line number Diff line change
Expand Up @@ -995,9 +995,17 @@ def parse_fault_map(self) -> tuple:
# crop
faults = faults.loc[faults.geometry.length >= self.minimum_fault_length]

if config["structtype_column"] in self.raw_data[Datatype.FAULT]:
if config["structtype_column"] in self.raw_data[Datatype.FAULT]:
faults["FEATURE"] = self.raw_data[Datatype.FAULT][config["structtype_column"]]
faults = faults[faults["FEATURE"].astype(str).str.contains(config["fault_text"])]
# Check if the string contains commas indicating multiple substrings
if ',' in config["fault_text"]:
import re
fault_text = config["fault_text"].split(',')
search_terms = [term.strip().strip("'").strip('"') for term in fault_text]
escaped_terms = [re.escape(term) for term in search_terms]
# Combine the escaped terms using the pipe '|' symbol for alternation
fault_text_pattern = '|'.join(escaped_terms)
faults = faults[faults["FEATURE"].astype(str).str.contains(fault_text_pattern, case=False, regex=True, na=False)]
if self.verbose_level > VerboseLevel.NONE:
if len(faults) < len(self.raw_data[Datatype.GEOLOGY]) and len(faults) == 0:
msg = f"Fault map reduced to 0 faults as structtype_column ({config['structtype_column']}) does not contains as row with fault_text \"{config['fault_text']}\""
Expand Down Expand Up @@ -1132,9 +1140,16 @@ def parse_fold_map(self) -> tuple:
folds[config["structtype_column"]] = self.raw_data[Datatype.FOLD][
config["structtype_column"]
]
folds = folds[
folds[config["structtype_column"]].astype(str).str.contains(config["fold_text"])
]
if ',' in config["fold_text"]:
import re
fold_text = config["fold_text"].split(',')
search_terms = [term.strip().strip("'").strip('"') for term in fold_text]
escaped_terms = [re.escape(term) for term in search_terms]
# Combine the escaped terms using the pipe '|' symbol for alternation
fold_text_pattern = '|'.join(escaped_terms)
folds = folds[
folds[config["structtype_column"]].astype(str).str.contains(fold_text_pattern, case=False, regex=True, na=False)
]
if self.verbose_level > VerboseLevel.NONE:
if len(folds) < len(self.raw_data[Datatype.GEOLOGY]) and len(folds) == 0:
msg = f"Fold map reduced to 0 folds as structtype_column ({config['structtype_column']}) does not contains any row with fold_text \"{config['fold_text']}\""
Expand Down
Loading