cesiumjs-anywidget 0.6.0__py3-none-any.whl → 0.7.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cesiumjs_anywidget/__init__.py +23 -2
- cesiumjs_anywidget/exif_utils.py +281 -0
- cesiumjs_anywidget/geoid.py +299 -0
- cesiumjs_anywidget/index.js +1415 -490
- cesiumjs_anywidget/logger.py +73 -0
- cesiumjs_anywidget/styles.css +24 -1
- cesiumjs_anywidget/widget.py +552 -42
- {cesiumjs_anywidget-0.6.0.dist-info → cesiumjs_anywidget-0.7.0.dist-info}/METADATA +45 -6
- cesiumjs_anywidget-0.7.0.dist-info/RECORD +11 -0
- cesiumjs_anywidget-0.6.0.dist-info/RECORD +0 -8
- {cesiumjs_anywidget-0.6.0.dist-info → cesiumjs_anywidget-0.7.0.dist-info}/WHEEL +0 -0
- {cesiumjs_anywidget-0.6.0.dist-info → cesiumjs_anywidget-0.7.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"""Logging configuration for cesiumjs_anywidget package."""
|
|
2
|
+
|
|
3
|
+
import logging
|
|
4
|
+
import sys
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def get_logger(name: str) -> logging.Logger:
|
|
8
|
+
"""Get a configured logger instance.
|
|
9
|
+
|
|
10
|
+
Parameters
|
|
11
|
+
----------
|
|
12
|
+
name : str
|
|
13
|
+
The name of the logger (typically __name__ from the calling module)
|
|
14
|
+
|
|
15
|
+
Returns
|
|
16
|
+
-------
|
|
17
|
+
logging.Logger
|
|
18
|
+
A configured logger instance
|
|
19
|
+
|
|
20
|
+
Examples
|
|
21
|
+
--------
|
|
22
|
+
>>> from cesiumjs_anywidget.logger import get_logger
|
|
23
|
+
>>> logger = get_logger(__name__)
|
|
24
|
+
>>> logger.info("This is an info message")
|
|
25
|
+
"""
|
|
26
|
+
logger = logging.getLogger(name)
|
|
27
|
+
|
|
28
|
+
# Only configure if this logger hasn't been configured yet
|
|
29
|
+
if not logger.handlers:
|
|
30
|
+
# Set default level to INFO
|
|
31
|
+
logger.setLevel(logging.INFO)
|
|
32
|
+
|
|
33
|
+
# Create console handler
|
|
34
|
+
handler = logging.StreamHandler(sys.stdout)
|
|
35
|
+
handler.setLevel(logging.DEBUG)
|
|
36
|
+
|
|
37
|
+
# Create formatter
|
|
38
|
+
formatter = logging.Formatter(
|
|
39
|
+
'%(levelname)s - %(name)s - %(message)s'
|
|
40
|
+
)
|
|
41
|
+
handler.setFormatter(formatter)
|
|
42
|
+
|
|
43
|
+
# Add handler to logger
|
|
44
|
+
logger.addHandler(handler)
|
|
45
|
+
|
|
46
|
+
return logger
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def set_log_level(level: str | int):
|
|
50
|
+
"""Set the logging level for all cesiumjs_anywidget loggers.
|
|
51
|
+
|
|
52
|
+
Parameters
|
|
53
|
+
----------
|
|
54
|
+
level : str or int
|
|
55
|
+
The logging level ('DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL')
|
|
56
|
+
or a logging constant (logging.DEBUG, logging.INFO, etc.)
|
|
57
|
+
|
|
58
|
+
Examples
|
|
59
|
+
--------
|
|
60
|
+
>>> from cesiumjs_anywidget.logger import set_log_level
|
|
61
|
+
>>> set_log_level('DEBUG') # Show all messages
|
|
62
|
+
>>> set_log_level('WARNING') # Show only warnings and errors
|
|
63
|
+
"""
|
|
64
|
+
if isinstance(level, str):
|
|
65
|
+
level = getattr(logging, level.upper())
|
|
66
|
+
|
|
67
|
+
# Set level for the base logger
|
|
68
|
+
base_logger = logging.getLogger('cesiumjs_anywidget')
|
|
69
|
+
base_logger.setLevel(level)
|
|
70
|
+
|
|
71
|
+
# Update all child loggers
|
|
72
|
+
for handler in base_logger.handlers:
|
|
73
|
+
handler.setLevel(level)
|
cesiumjs_anywidget/styles.css
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
/* Import CesiumJS base styles from official CDN */
|
|
8
|
-
@import url("https://cesium.com/downloads/cesiumjs/releases/1.
|
|
8
|
+
@import url("https://cesium.com/downloads/cesiumjs/releases/1.137/Build/Cesium/Widgets/widgets.css");
|
|
9
9
|
|
|
10
10
|
/* Ensure the widget container has proper dimensions and overflow handling */
|
|
11
11
|
.cesium-widget {
|
|
@@ -30,3 +30,26 @@
|
|
|
30
30
|
display: block;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
/* Custom scrollbar styling for measurement panels */
|
|
34
|
+
.measurement-panel-scrollable {
|
|
35
|
+
scrollbar-width: thin;
|
|
36
|
+
scrollbar-color: rgba(255, 255, 255, 0.3) rgba(0, 0, 0, 0.1);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.measurement-panel-scrollable::-webkit-scrollbar {
|
|
40
|
+
width: 8px;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.measurement-panel-scrollable::-webkit-scrollbar-track {
|
|
44
|
+
background: rgba(0, 0, 0, 0.1);
|
|
45
|
+
border-radius: 4px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.measurement-panel-scrollable::-webkit-scrollbar-thumb {
|
|
49
|
+
background: rgba(255, 255, 255, 0.3);
|
|
50
|
+
border-radius: 4px;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.measurement-panel-scrollable::-webkit-scrollbar-thumb:hover {
|
|
54
|
+
background: rgba(255, 255, 255, 0.5);
|
|
55
|
+
}
|