eulumdat-plot 1.0.3__py3-none-any.whl → 1.0.4__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: eulumdat-plot
3
- Version: 1.0.3
3
+ Version: 1.0.4
4
4
  Summary: Photometric polar diagram generator for EULUMDAT (.ldt) files — extension to eulumdat-py
5
5
  Author: 123VincentB
6
6
  License: MIT
@@ -25,9 +25,9 @@ License-File: LICENSE
25
25
  Requires-Dist: eulumdat-py>=1.0.0
26
26
  Requires-Dist: numpy>=1.21
27
27
  Requires-Dist: svgwrite>=1.4
28
+ Requires-Dist: vl-convert-python>=1.6
29
+ Requires-Dist: Pillow>=9.0
28
30
  Provides-Extra: export
29
- Requires-Dist: vl-convert-python>=1.6; extra == "export"
30
- Requires-Dist: Pillow>=9.0; extra == "export"
31
31
  Provides-Extra: cubic
32
32
  Requires-Dist: scipy>=1.7; extra == "cubic"
33
33
  Provides-Extra: full
@@ -107,13 +107,16 @@ pip install "eulumdat-plot[full]"
107
107
  ## Quick start
108
108
 
109
109
  ```python
110
- from eulumdat_plot import plot_ldt
110
+ from eulumdat_plot import plot_ldt, plot_ldt_svg
111
111
 
112
- # Generate an SVG next to the source file
113
- svg = plot_ldt("luminaire.ldt")
112
+ # Generate an SVG file next to the source file
113
+ path = plot_ldt("luminaire.ldt")
114
114
 
115
115
  # With a distribution code in the banner centre
116
- svg = plot_ldt("luminaire.ldt", code="D53")
116
+ path = plot_ldt("luminaire.ldt", code="D53")
117
+
118
+ # Get the SVG as a string (for inline HTML embedding, no file written)
119
+ svg_str = plot_ldt_svg("luminaire.ldt")
117
120
  ```
118
121
 
119
122
  ## Scaling
@@ -169,6 +172,23 @@ def plot_ldt(
169
172
  | `interp_method` | `"linear"` | `"linear"` or `"cubic"` (requires scipy) |
170
173
  | `debug` | `False` | Colour-code C-planes for visual validation |
171
174
 
175
+ ### `plot_ldt_svg()`
176
+
177
+ Same as `plot_ldt()` but returns the SVG as a **string** instead of writing to
178
+ disk. Useful for inline HTML embedding (no temporary file created).
179
+
180
+ ```python
181
+ def plot_ldt_svg(
182
+ ldt_path: str | Path,
183
+ *,
184
+ code: str = "",
185
+ layout: Layout | None = None,
186
+ interpolate: bool = True,
187
+ interp_step_deg: float = 1.0,
188
+ interp_method: str = "linear",
189
+ ) -> str
190
+ ```
191
+
172
192
  ### `Layout.for_size()`
173
193
 
174
194
  ```python
@@ -221,15 +241,20 @@ eulumdat-plot/
221
241
  └── README.md
222
242
  ```
223
243
 
224
- ## EULUMDAT ecosystem
244
+ ## eulumdat-* ecosystem
245
+
246
+ > **New to the ecosystem?** [eulumdat-quickstart](https://github.com/123VincentB/eulumdat-quickstart) — a step-by-step guide covering all 8 packages with working examples.
225
247
 
226
- | Package | Status | Description |
227
- | ------------------------------------------------------------------ | ------- | -------------------------------------------- |
228
- | [`eulumdat-py`](https://pypi.org/project/eulumdat-py/) | v0.1.4 | Read / write EULUMDAT files |
229
- | [`eulumdat-symmetry`](https://pypi.org/project/eulumdat-symmetry/) | v1.0.0 | Symmetrise EULUMDAT files |
230
- | `eulumdat-plot` | v1.0.0 | Photometric polar diagram — **this package** |
231
- | `eulumdat-luminance` | planned | Luminance table cd/m² 55°–85°) |
232
- | `eulumdat-ugr` | planned | UGR calculation (CIE 117, CIE 190) |
248
+ | Package | Description |
249
+ |---|---|
250
+ | [eulumdat-py](https://pypi.org/project/eulumdat-py/) | Read / write EULUMDAT files |
251
+ | [eulumdat-symmetry](https://pypi.org/project/eulumdat-symmetry/) | Symmetrise and detect ISYM |
252
+ | **`eulumdat-plot`** | **Polar intensity diagram (SVG/PNG) — this package** |
253
+ | [eulumdat-luminance](https://pypi.org/project/eulumdat-luminance/) | Luminance table and polar diagram |
254
+ | [eulumdat-ugr](https://pypi.org/project/eulumdat-ugr/) | UGR catalogue (CIE 117/190) |
255
+ | [eulumdat-analysis](https://pypi.org/project/eulumdat-analysis/) | Beam half-angle, FWHM |
256
+ | [eulumdat-report](https://pypi.org/project/eulumdat-report/) | Full photometric datasheet (HTML/PDF) |
257
+ | [eulumdat-ies](https://pypi.org/project/eulumdat-ies/) | LDT ↔ IES LM-63-2002 conversion |
233
258
 
234
259
  ## Requirements
235
260
 
@@ -2,8 +2,8 @@ eulumdat_plot/__init__.py,sha256=CBuQ_h9whhzjHicXgDruduTsagbCbnzZJ459EpigZy8,164
2
2
  eulumdat_plot/export.py,sha256=UOgugmd1jkFqoEkuQlY1dPatcMhv_JVQfV3Uv7oGkPg,4454
3
3
  eulumdat_plot/plot.py,sha256=a4zcg8yUbFLczenzYQ_CjplrKyr3VPi_GGN0nULjuaA,14881
4
4
  eulumdat_plot/renderer.py,sha256=YLM7D-_zRWNDPJbUoZz734_rdaSuRWIVRh-3emXlyHM,19609
5
- eulumdat_plot-1.0.3.dist-info/licenses/LICENSE,sha256=C7zou5wilUMnyyvwyhL_QY0gLMRKlRiAgqw7ViCxNtc,1068
6
- eulumdat_plot-1.0.3.dist-info/METADATA,sha256=r9vbNROPJVmyCLrG7e1mC29lVzcZ265Qtd8tddDZfjE,9516
7
- eulumdat_plot-1.0.3.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
8
- eulumdat_plot-1.0.3.dist-info/top_level.txt,sha256=AsBUEzqi7316GhS_tHqXncJ5_pUaXb0Gm2ozfpeNQBA,14
9
- eulumdat_plot-1.0.3.dist-info/RECORD,,
5
+ eulumdat_plot-1.0.4.dist-info/licenses/LICENSE,sha256=C7zou5wilUMnyyvwyhL_QY0gLMRKlRiAgqw7ViCxNtc,1068
6
+ eulumdat_plot-1.0.4.dist-info/METADATA,sha256=MzLh5x4RA663ek2tRBIV87DYbi9IGzsaN8RQpdo1wic,10098
7
+ eulumdat_plot-1.0.4.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
8
+ eulumdat_plot-1.0.4.dist-info/top_level.txt,sha256=AsBUEzqi7316GhS_tHqXncJ5_pUaXb0Gm2ozfpeNQBA,14
9
+ eulumdat_plot-1.0.4.dist-info/RECORD,,