Skip to content

Commit c6e9e7b

Browse files
committed
june 13 before merge with s-dev
1 parent 5ed3fdf commit c6e9e7b

10 files changed

Lines changed: 132 additions & 856 deletions

File tree

examples/example.ipynb

Lines changed: 93 additions & 843 deletions
Large diffs are not rendered by default.

mapmanagercore/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@
1212
__version_tuple__: VERSION_TUPLE
1313
version_tuple: VERSION_TUPLE
1414

15-
__version__ = version = '0.0.post94'
15+
__version__ = version = '0.0.post103'
1616
__version_tuple__ = version_tuple = (0, 0)

mapmanagercore/annotations/mutation.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Tuple, Union
1+
from typing import Tuple, Union, Optional
22
from mapmanagercore.lazy_geo_pandas.schema import MISSING_VALUE
33
from ..schemas import Spine, Segment
44
from ..config import SegmentId, SpineId
@@ -16,16 +16,20 @@ class AnnotationsBaseMut(AnnotationsBase):
1616
def deleteSpine(self, spineId: Keys, skipLog=False) -> None:
1717
self._drop("Spine", spineId, skipLog=skipLog)
1818

19-
def deleteSegment(self, segmentId: Keys, skipLog=False) -> None:
19+
def deleteSegment(self, segmentId: Keys, skipLog=False) -> bool:
2020
try:
2121
if not self.points[["segmentID"]].reset_index().set_index(["segmentID", "t"]).loc[segmentId].empty:
22-
raise ValueError(
23-
f"Cannot delete segment(s) {segmentId} as it has an attached spine(s)")
22+
# abb
23+
logger.info(f'Cannot delete segment(s) {segmentId} as it has an attached spine(s)')
24+
return False
25+
# raise ValueError(
26+
# f"Cannot delete segment(s) {segmentId} as it has an attached spine(s)")
2427
except KeyError:
2528
pass
2629

2730
self._drop("Segment", segmentId, skipLog=skipLog)
28-
31+
return True
32+
2933
def updateSpine(self, spineId: Keys, value: Spine, replaceLog=False, skipLog=False):
3034
"""
3135
Set the spine with the given ID to the specified value.

mapmanagercore/annotations/single_time_point/base.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,14 @@ def __init__(self, annotations: Annotations, t: int) -> None:
150150

151151
def __str__(self):
152152
logger.info('')
153-
numTimepoints = len(self._images._imagesSrcs.keys())
153+
154+
# get the number of time points
155+
numTimepoints = 'abb ???'
156+
try:
157+
numTimepoints = len(self._images._imagesSrcs.keys())
158+
except (AttributeError) as e:
159+
logger.error(e)
160+
154161
numPnts = len(self._annotations._points._rootDf)
155162
numSegments = len(self._annotations._segments._rootDf)
156163
return f't:{numTimepoints}, points:{numPnts} segments:{numSegments}'

mapmanagercore/annotations/single_time_point/interactions.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,10 +130,11 @@ def addSpine(self, segmentId: SpineId, x: int, y: int, z: int) -> Union[SpineId,
130130
"""
131131
point = Point(x, y, z)
132132

133+
logger.error(f'1 FutureWarning: The `drop` keyword ...')
133134
anchor = self.nearestAnchor(segmentId, point, findBrightest=True)
134135

135136
spineId = self.newUnassignedSpineId()
136-
137+
137138
self.updateSpine(spineId, Spine.withDefaults(
138139
segmentID=segmentId,
139140
point=Point(point.x, point.y),
@@ -144,6 +145,7 @@ def addSpine(self, segmentId: SpineId, x: int, y: int, z: int) -> Union[SpineId,
144145
yBackgroundOffset=0.0,
145146
))
146147

148+
logger.error(f'4 FutureWarning: The `drop` keyword ...')
147149
self.snapBackgroundOffset(spineId)
148150

149151
return spineId

mapmanagercore/layers/polygon.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import geopandas as gp
77
from shapely.geometry import Polygon, Point
88

9+
from mapmanagercore.logger import logger
910

1011
class PolygonLayer(Layer):
1112
def box(minx, miny, maxx, maxy):

mapmanagercore/lazy_geo_pandas/lazy.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -392,8 +392,17 @@ def __getitem__(self, items):
392392

393393
@timer
394394
def _getFiltered(self, key):
395-
return self._df[key]
396-
395+
try:
396+
return self._df[key]
397+
except(KeyError) as e:
398+
# abb
399+
logger.error('KeyError requesting key:')
400+
print(key)
401+
logger.error('available keys are self._df.columns:')
402+
print(self._df.columns)
403+
logger.error('returning full _df')
404+
return self._df
405+
397406
def undo(self) -> None:
398407
self._store.undo()
399408

mapmanagercore/lazy_geo_pandas/schema.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from shapely.geometry.base import BaseGeometry
77
from .attributes import ColumnAttributes, _ColumnAttributes
88

9+
from mapmanagercore.logger import logger
910

1011
class MISSING_VALUE:
1112
def __repr__(self):
@@ -120,6 +121,7 @@ def setColumnTypes(cls, df: pd.DataFrame) -> gp.GeoDataFrame:
120121

121122
if df.index.nlevels != len(cls._index):
122123
if len(cls._index) != 0:
124+
logger.info('drop=True')
123125
df.set_index(cls._index, inplace=True, drop=True)
124126
if df.index.nlevels > 1:
125127
df.sort_index(level=0, inplace=True)

mapmanagercore/schemas/spine.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,6 @@ def spineSide(frame: LazyGeoFrame):
181181
segmentFrame = frame.getFrame("Segment")
182182
df = frame[["segmentID", "point"]].join(
183183
segmentFrame[["segment", "radius"]], on=["segmentID", "t"])
184-
# print(df)
185184
_ret = df.apply(lambda d: getSpineSide(d["segment"], d["point"]), axis=1)
186185

187186
return _ret
@@ -199,7 +198,6 @@ def angle(frame: LazyGeoFrame):
199198
segmentFrame = frame.getFrame("Segment")
200199
df = frame[["segmentID", "point", "anchorLine"]].join(
201200
segmentFrame[["segment"]], on=["segmentID", "t"])
202-
print("spineAngle df:", df)
203201

204202
# # Create a dataframe of
205203
_ret = df.apply(lambda d: getSpineAngle(d["segment"], d["anchorLine"]), axis=1)

setup.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,15 @@
1515
'numpy',
1616
'pandas',
1717
'shapely',
18-
'geopandas==1.0.0a1',
18+
# 'geopandas==1.0.0a1', # removed 20240608
19+
'geopandas',
1920
'scikit-image',
2021
'zarr',
2122
'platformdirs', # to get platform specific App paths
2223
'plotly',
2324
'brightest-path-lib',
25+
#'bioimage',
26+
#
2427
]
2528

2629
testRequirements = [

0 commit comments

Comments
 (0)