From 246bd4a23b052722d3f633960a26ca7ee5cf1f13 Mon Sep 17 00:00:00 2001 From: marceloprates Date: Tue, 8 Nov 2022 10:16:21 -0300 Subject: [PATCH] Fixed problem with presets folder location on draw.py and setup.py --- prettymaps/draw.py | 30 ++++++++++++------------------ setup.py | 20 ++++++++++---------- 2 files changed, 22 insertions(+), 28 deletions(-) diff --git a/prettymaps/draw.py b/prettymaps/draw.py index e931b16..67f4a6c 100644 --- a/prettymaps/draw.py +++ b/prettymaps/draw.py @@ -16,14 +16,13 @@ You should have received a copy of the GNU Affero General Public License along with this program. If not, see . """ -import prettymaps import re import os import json import yaml -#import vsketch import IPython +import pathlib import warnings import matplotlib import shapely.ops @@ -43,6 +42,9 @@ from shapely.geometry import Point, LineString, MultiLineString, Polygon, MultiP from shapely.geometry.base import BaseGeometry +#import vsketch + + class Subplot: """ Class implementing a prettymaps Subplot. Attributes: @@ -587,6 +589,10 @@ def draw_text( ) +def presets_directory(): + return os.path.join(pathlib.Path(__file__).resolve().parent.parent, 'presets') + + def create_preset( name: str, layers: Optional[Dict[str, dict]] = None, @@ -607,15 +613,10 @@ def create_preset( dilate (Optional[Union[float, bool]], optional): prettymaps.plot() 'dilate' parameter. Defaults to None. """ - base_path = os.path.abspath(os.path.join( - os.path.dirname(prettymaps.__file__), - os.path.pardir - )) - # if not os.path.isdir('presets'): # os.makedirs('presets') - path = os.path.join(base_path, 'presets', f"{name}.json") + path = os.path.join(presets_directory(), f"{name}.json") with open(path, "w") as f: json.dump( { @@ -640,11 +641,7 @@ def read_preset(name: str) -> Dict[str, dict]: Returns: (Dict[str,dict]): parameters dictionary """ - base_path = os.path.abspath(os.path.join( - os.path.dirname(prettymaps.__file__), - os.path.pardir - )) - path = os.path.join(base_path, 'presets', f"{name}.json") + path = os.path.join(presets_directory(), f"{name}.json") with open(path, "r") as f: # Load params from JSON file params = json.load(f) @@ -658,11 +655,8 @@ def delete_preset(name: str) -> None: Args: name (str): Preset name """ - base_path = os.path.abspath(os.path.join( - os.path.dirname(prettymaps.__file__), - os.path.pardir - )) - path = os.path.join(base_path, 'presets', f"{name}.json") + + path = os.path.join(presets_directory(), f"{name}.json") if os.path.exists(path): os.remove(path) diff --git a/setup.py b/setup.py index 9ac11e5..8428215 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,6 @@ -from setuptools import setup, find_packages -from pathlib import Path import os +from pathlib import Path +from setuptools import setup, find_packages parent_dir = Path(__file__).resolve().parent presets_dir = os.path.abspath(os.path.join(os.path.pardir, 'presets')) @@ -23,13 +23,13 @@ setup( "Intended Audience :: Science/Research", ], data_files=[(presets_dir, [ - 'presets/barcelona-plotter.json', - 'presets/barcelona.json', - 'presets/cb-bf-f.json', - 'presets/default.json', - 'presets/heerhugowaard.json', - 'presets/macao.json', - 'presets/minimal.json', - 'presets/minimal.json', + os.path.join(presets_dir, 'barcelona-plotter.json'), + os.path.join(presets_dir, 'barcelona.json'), + os.path.join(presets_dir, 'cb-bf-f.json'), + os.path.join(presets_dir, 'default.json'), + os.path.join(presets_dir, 'heerhugowaard.json'), + os.path.join(presets_dir, 'macao.json'), + os.path.join(presets_dir, 'minimal.json'), + os.path.join(presets_dir, 'minimal.json'), ])], )