os-optics 0.10.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.
- os_optics/__init__.py +65 -0
- os_optics/__main__.py +3 -0
- os_optics/_vendor/MANIFEST.json +154 -0
- os_optics/_vendor/__init__.py +16 -0
- os_optics/_vendor/shared_contracts/__init__.py +9 -0
- os_optics/_vendor/shared_contracts/assembly_detail/__init__.py +164 -0
- os_optics/_vendor/shared_contracts/assembly_detail/detail.py +338 -0
- os_optics/_vendor/shared_contracts/assembly_detail/drawing.py +470 -0
- os_optics/_vendor/shared_contracts/assembly_detail/verify.py +437 -0
- os_optics/_vendor/shared_contracts/assembly_preview/__init__.py +278 -0
- os_optics/_vendor/shared_contracts/assembly_preview/manifest.py +185 -0
- os_optics/_vendor/shared_contracts/assembly_preview/package.py +359 -0
- os_optics/_vendor/shared_contracts/assembly_preview/scene.py +1214 -0
- os_optics/_vendor/shared_contracts/assembly_preview/validation.py +495 -0
- os_optics/_vendor/shared_contracts/base.py +17 -0
- os_optics/_vendor/shared_contracts/client_assembly_artifact/__init__.py +73 -0
- os_optics/_vendor/shared_contracts/client_assembly_artifact/manifest.py +306 -0
- os_optics/_vendor/shared_contracts/common/__init__.py +87 -0
- os_optics/_vendor/shared_contracts/common/_osc1_numbers.py +78 -0
- os_optics/_vendor/shared_contracts/common/decimal_string.py +39 -0
- os_optics/_vendor/shared_contracts/common/frozen_string_map.py +92 -0
- os_optics/_vendor/shared_contracts/common/geometry.py +49 -0
- os_optics/_vendor/shared_contracts/common/hashes.py +139 -0
- os_optics/_vendor/shared_contracts/common/identifiers.py +85 -0
- os_optics/_vendor/shared_contracts/common/ordering.py +75 -0
- os_optics/_vendor/shared_contracts/common/osc1.py +163 -0
- os_optics/_vendor/shared_contracts/common/safe_int.py +30 -0
- os_optics/_vendor/shared_contracts/common/timestamps.py +26 -0
- os_optics/_vendor/shared_contracts/common/unknown.py +19 -0
- os_optics/_vendor/shared_contracts/common/versioning.py +66 -0
- os_optics/_vendor/shared_contracts/design_catalog/__init__.py +213 -0
- os_optics/_vendor/shared_contracts/design_catalog/enums.py +306 -0
- os_optics/_vendor/shared_contracts/design_catalog/manifest.py +110 -0
- os_optics/_vendor/shared_contracts/design_catalog/optical_catalog.py +3308 -0
- os_optics/_vendor/shared_contracts/optical_design/__init__.py +179 -0
- os_optics/_vendor/shared_contracts/optical_design/_ordering.py +29 -0
- os_optics/_vendor/shared_contracts/optical_design/component.py +154 -0
- os_optics/_vendor/shared_contracts/optical_design/compute_budget.py +87 -0
- os_optics/_vendor/shared_contracts/optical_design/design_content.py +244 -0
- os_optics/_vendor/shared_contracts/optical_design/dof.py +109 -0
- os_optics/_vendor/shared_contracts/optical_design/local_validation.py +475 -0
- os_optics/_vendor/shared_contracts/optical_design/optical_model.py +630 -0
- os_optics/_vendor/shared_contracts/optical_design/project.py +160 -0
- os_optics/_vendor/shared_contracts/optical_design/scientific_result.py +128 -0
- os_optics/_vendor/shared_contracts/optical_design/source.py +250 -0
- os_optics/_vendor/shared_contracts/optical_design/workspace.py +718 -0
- os_optics/_vendor/shared_contracts/optical_layout/__init__.py +4 -0
- os_optics/_vendor/shared_contracts/optical_layout/drawing.py +166 -0
- os_optics/_vendor/shared_contracts/optical_layout/package.py +227 -0
- os_optics/_vendor/shared_contracts/optical_view/__init__.py +101 -0
- os_optics/_vendor/shared_contracts/optical_view/scene.py +1063 -0
- os_optics/_vendor/shared_contracts/protected_assembly_delivery/__init__.py +122 -0
- os_optics/_vendor/shared_contracts/protected_assembly_delivery/_common.py +243 -0
- os_optics/_vendor/shared_contracts/protected_assembly_delivery/detail_envelope.py +342 -0
- os_optics/_vendor/shared_contracts/protected_assembly_delivery/envelope.py +326 -0
- os_optics/_version.py +139 -0
- os_optics/assembly/__init__.py +130 -0
- os_optics/assembly/checks.py +569 -0
- os_optics/assembly/interfaces.py +78 -0
- os_optics/assembly/mesh.py +175 -0
- os_optics/assembly/overlap.py +311 -0
- os_optics/assembly/result.py +99 -0
- os_optics/assembly/tolerances.py +33 -0
- os_optics/assembly/transforms.py +143 -0
- os_optics/assembly_drawing/__init__.py +82 -0
- os_optics/assembly_drawing/alignment.py +237 -0
- os_optics/assembly_drawing/canvas.py +114 -0
- os_optics/assembly_drawing/errors.py +60 -0
- os_optics/assembly_drawing/generate.py +439 -0
- os_optics/assembly_drawing/geometry.py +216 -0
- os_optics/assembly_drawing/hidden_lines.py +316 -0
- os_optics/assembly_drawing/i18n.py +774 -0
- os_optics/assembly_drawing/layout.py +191 -0
- os_optics/assembly_drawing/model.py +245 -0
- os_optics/assembly_drawing/pdf.py +175 -0
- os_optics/assembly_drawing/privacy.py +321 -0
- os_optics/assembly_drawing/sheet.py +2516 -0
- os_optics/assembly_drawing/steps.py +488 -0
- os_optics/assembly_drawing/svg.py +84 -0
- os_optics/assembly_drawing/text.py +165 -0
- os_optics/builders.py +328 -0
- os_optics/catalog/__init__.py +94 -0
- os_optics/catalog/errors.py +60 -0
- os_optics/catalog/locking.py +150 -0
- os_optics/catalog/remote.py +187 -0
- os_optics/catalog/service.py +754 -0
- os_optics/catalog/store.py +474 -0
- os_optics/catalog_copy.py +97 -0
- os_optics/cli.py +701 -0
- os_optics/cli_catalog.py +218 -0
- os_optics/cli_commerce.py +1101 -0
- os_optics/cli_doctor.py +486 -0
- os_optics/cli_interop.py +67 -0
- os_optics/cli_layout.py +116 -0
- os_optics/cli_native.py +176 -0
- os_optics/cli_network.py +69 -0
- os_optics/cli_paraxial.py +67 -0
- os_optics/cli_prescription.py +118 -0
- os_optics/cli_project.py +197 -0
- os_optics/cli_results.py +360 -0
- os_optics/cli_solids.py +61 -0
- os_optics/cli_view.py +166 -0
- os_optics/cli_workspace.py +464 -0
- os_optics/client/__init__.py +155 -0
- os_optics/client/api.py +861 -0
- os_optics/client/credentials.py +227 -0
- os_optics/client/errors.py +494 -0
- os_optics/client/transport.py +334 -0
- os_optics/client_artifacts.py +180 -0
- os_optics/compare.py +111 -0
- os_optics/composition/__init__.py +95 -0
- os_optics/composition/document.py +209 -0
- os_optics/composition/errors.py +155 -0
- os_optics/composition/importing.py +861 -0
- os_optics/composition/json_wrappers.py +213 -0
- os_optics/composition/operations.py +1801 -0
- os_optics/composition/rotation.py +209 -0
- os_optics/composition/selection.py +156 -0
- os_optics/composition/validation.py +230 -0
- os_optics/config.py +220 -0
- os_optics/contracts/__init__.py +106 -0
- os_optics/contracts/base.py +53 -0
- os_optics/contracts/components.py +322 -0
- os_optics/contracts/geometry.py +84 -0
- os_optics/contracts/manifest.py +27 -0
- os_optics/contracts/materials.py +141 -0
- os_optics/contracts/metrics.py +46 -0
- os_optics/contracts/network.py +277 -0
- os_optics/contracts/optics.py +742 -0
- os_optics/contracts/outcome.py +89 -0
- os_optics/contracts/polarization.py +77 -0
- os_optics/contracts/project.py +169 -0
- os_optics/contracts/request.py +25 -0
- os_optics/contracts/results.py +1088 -0
- os_optics/control/__init__.py +19 -0
- os_optics/control/actuation.py +73 -0
- os_optics/control/analysis.py +171 -0
- os_optics/control/lm.py +165 -0
- os_optics/control/readings.py +90 -0
- os_optics/control/sensitivity.py +108 -0
- os_optics/errors/__init__.py +30 -0
- os_optics/errors/codes.py +126 -0
- os_optics/errors/exceptions.py +19 -0
- os_optics/errors/issues.py +73 -0
- os_optics/errors/status.py +157 -0
- os_optics/interop/__init__.py +143 -0
- os_optics/interop/entries.py +643 -0
- os_optics/interop/model.py +181 -0
- os_optics/layout/__init__.py +6 -0
- os_optics/layout/checks.py +288 -0
- os_optics/layout/geometry.py +168 -0
- os_optics/local/__init__.py +396 -0
- os_optics/local/advisories.py +126 -0
- os_optics/local/artifacts.py +494 -0
- os_optics/local/bodies.py +26 -0
- os_optics/local/catalog.py +445 -0
- os_optics/local/catalog_update.py +267 -0
- os_optics/local/compile.py +1624 -0
- os_optics/local/declared.py +71 -0
- os_optics/local/errors.py +137 -0
- os_optics/local/example.py +728 -0
- os_optics/local/freshness.py +185 -0
- os_optics/local/json_api.py +1405 -0
- os_optics/local/lowering.py +737 -0
- os_optics/local/network.py +103 -0
- os_optics/local/paraxial.py +519 -0
- os_optics/local/project_ops.py +888 -0
- os_optics/local/record.py +140 -0
- os_optics/local/run.py +315 -0
- os_optics/local/submission.py +124 -0
- os_optics/local/validity.py +1042 -0
- os_optics/manifest/__init__.py +13 -0
- os_optics/manifest/build.py +51 -0
- os_optics/manifest/canonical.py +62 -0
- os_optics/math/__init__.py +45 -0
- os_optics/math/exact_erf.py +92 -0
- os_optics/math/exact_linalg.py +138 -0
- os_optics/math/exact_trig.py +261 -0
- os_optics/math/phase.py +26 -0
- os_optics/math/pose.py +62 -0
- os_optics/math/rng.py +49 -0
- os_optics/math/rotation.py +74 -0
- os_optics/math/vectors.py +204 -0
- os_optics/mounting_sheet.py +286 -0
- os_optics/native_library/__init__.py +90 -0
- os_optics/native_library/common.py +334 -0
- os_optics/native_library/compound.py +240 -0
- os_optics/native_library/errors.py +73 -0
- os_optics/native_library/lenses.py +570 -0
- os_optics/native_library/materials.py +273 -0
- os_optics/native_library/numbers.py +118 -0
- os_optics/native_library/params.py +252 -0
- os_optics/native_library/paraxial.py +109 -0
- os_optics/native_library/plates.py +253 -0
- os_optics/native_library/polarization.py +93 -0
- os_optics/native_library/project.py +76 -0
- os_optics/native_library/refractors.py +257 -0
- os_optics/native_library/registry.py +503 -0
- os_optics/native_library/responses.py +210 -0
- os_optics/native_library/retroreflectors.py +215 -0
- os_optics/native_library/stops.py +136 -0
- os_optics/native_library/trig.py +135 -0
- os_optics/network/__init__.py +28 -0
- os_optics/network/basis.py +49 -0
- os_optics/network/conventions.py +125 -0
- os_optics/network/errors.py +93 -0
- os_optics/network/export.py +1206 -0
- os_optics/network/recorder.py +100 -0
- os_optics/optical_layout/__init__.py +52 -0
- os_optics/optical_layout/angles.py +61 -0
- os_optics/optical_layout/generate.py +938 -0
- os_optics/optical_layout/messages.py +182 -0
- os_optics/optical_layout/privacy.py +98 -0
- os_optics/optical_solids/__init__.py +204 -0
- os_optics/optical_solids/bodies.py +742 -0
- os_optics/optical_solids/checks.py +710 -0
- os_optics/optical_solids/report.py +96 -0
- os_optics/optical_view/__init__.py +40 -0
- os_optics/optical_view/artifacts.py +34 -0
- os_optics/optical_view/builder.py +1072 -0
- os_optics/optical_view/colors.py +42 -0
- os_optics/optical_view/geometry.py +368 -0
- os_optics/optical_view/glb.py +591 -0
- os_optics/optical_view/identity.py +8 -0
- os_optics/optical_view/optic_mesh.py +773 -0
- os_optics/optical_view/section.py +684 -0
- os_optics/optical_view/solids.py +191 -0
- os_optics/optical_view/surface_mesh.py +722 -0
- os_optics/optics/__init__.py +0 -0
- os_optics/optics/attenuation.py +170 -0
- os_optics/optics/gaussian/__init__.py +28 -0
- os_optics/optics/gaussian/ops.py +317 -0
- os_optics/optics/gaussian/state.py +145 -0
- os_optics/optics/gaussian/truncation.py +353 -0
- os_optics/optics/interference/__init__.py +3 -0
- os_optics/optics/interference/coherence.py +273 -0
- os_optics/optics/interference/two_beam.py +314 -0
- os_optics/optics/materials/__init__.py +5 -0
- os_optics/optics/materials/coatings.py +152 -0
- os_optics/optics/materials/group.py +106 -0
- os_optics/optics/materials/index.py +109 -0
- os_optics/optics/materials/library.py +66 -0
- os_optics/optics/polarization/__init__.py +26 -0
- os_optics/optics/polarization/fresnel.py +59 -0
- os_optics/optics/polarization/jones.py +120 -0
- os_optics/optics/polarization/phases.py +122 -0
- os_optics/optics/polarization/routing.py +609 -0
- os_optics/optics/rays/__init__.py +4 -0
- os_optics/optics/rays/envelope.py +72 -0
- os_optics/optics/rays/hits.py +79 -0
- os_optics/optics/rays/path_ids.py +46 -0
- os_optics/optics/rays/pupil.py +30 -0
- os_optics/optics/rays/tracer.py +3785 -0
- os_optics/optics/surfaces/__init__.py +15 -0
- os_optics/optics/surfaces/geometry.py +400 -0
- os_optics/optics/surfaces/interaction.py +74 -0
- os_optics/optics/surfaces/sag.py +253 -0
- os_optics/optics/surfaces/tabulated_lens.py +162 -0
- os_optics/prescription/__init__.py +294 -0
- os_optics/prescription/api.py +92 -0
- os_optics/prescription/csv_table.py +818 -0
- os_optics/prescription/errors.py +180 -0
- os_optics/prescription/glass.py +442 -0
- os_optics/prescription/ir.py +253 -0
- os_optics/prescription/lowering.py +494 -0
- os_optics/protected_delivery.py +343 -0
- os_optics/py.typed +0 -0
- os_optics/results/__init__.py +98 -0
- os_optics/results/export.py +98 -0
- os_optics/results/handoff.py +278 -0
- os_optics/results/irradiance.py +166 -0
- os_optics/results/model.py +729 -0
- os_optics/results/rays.py +321 -0
- os_optics/results/tables.py +727 -0
- os_optics/scene/__init__.py +0 -0
- os_optics/scene/lower.py +304 -0
- os_optics/scene/model.py +132 -0
- os_optics/units.py +6 -0
- os_optics/validation/__init__.py +27 -0
- os_optics/validation/affected.py +134 -0
- os_optics/validation/alignment.py +151 -0
- os_optics/validation/closed_returns.py +349 -0
- os_optics/validation/descriptors.py +323 -0
- os_optics/validation/exposures.py +3565 -0
- os_optics/validation/metrics.py +1240 -0
- os_optics/validation/observations.py +694 -0
- os_optics/validation/outcome.py +166 -0
- os_optics/validation/pipeline.py +443 -0
- os_optics/validation/power.py +266 -0
- os_optics/validation/rating_conditions.py +710 -0
- os_optics/validation/ray_paths.py +316 -0
- os_optics/validation/resonance.py +1600 -0
- os_optics/validation/scope.py +40 -0
- os_optics/validation/superposition.py +296 -0
- os_optics/validation/target_parameters.py +111 -0
- os_optics/validation/untraced.py +558 -0
- os_optics/validation/window_bound.py +547 -0
- os_optics/viewer/__init__.py +124 -0
- os_optics/viewer/assembly.py +168 -0
- os_optics/viewer/assets/THREE_LICENSE.txt +21 -0
- os_optics/viewer/assets/index.html +54 -0
- os_optics/viewer/assets/three.bundle.js +4625 -0
- os_optics/viewer/assets/viewer.css +73 -0
- os_optics/viewer/assets/viewer.js +875 -0
- os_optics/viewer/font.py +121 -0
- os_optics/viewer/model.py +328 -0
- os_optics/viewer/optical.py +225 -0
- os_optics/viewer/page.py +69 -0
- os_optics/viewer/palette.py +101 -0
- os_optics/viewer/png.py +46 -0
- os_optics/viewer/raster.py +630 -0
- os_optics/viewer/section_render.py +143 -0
- os_optics/viewer/server.py +152 -0
- os_optics/viewer/snapshots.py +92 -0
- os_optics-0.10.0.dist-info/METADATA +1274 -0
- os_optics-0.10.0.dist-info/RECORD +320 -0
- os_optics-0.10.0.dist-info/WHEEL +4 -0
- os_optics-0.10.0.dist-info/entry_points.txt +2 -0
- os_optics-0.10.0.dist-info/licenses/LICENSE.txt +79 -0
- os_optics-0.10.0.dist-info/licenses/NOTICE.txt +15 -0
os_optics/__init__.py
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"""OS Optics (``os_optics``) by OpenSci: deterministic, stateless, offline 3D optical / layout / control engineering engine.
|
|
2
|
+
|
|
3
|
+
Pure-optical design on this device (public optical catalog -> Project -> simulation -> local validation record)::
|
|
4
|
+
|
|
5
|
+
from os_optics.local import example_project, load_public_catalog, run_optical_project
|
|
6
|
+
run = run_optical_project(example_project())
|
|
7
|
+
|
|
8
|
+
See ``help(os_optics.local)``. The scientific results of a run directory (monitors, beams, rays, wavefronts, power
|
|
9
|
+
budget, exports): ``help(os_optics.results)``. Low-level Engine use::
|
|
10
|
+
|
|
11
|
+
from os_optics import ValidationRequest, validate
|
|
12
|
+
result = validate(ValidationRequest(project=...))
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
import sys as _sys
|
|
16
|
+
|
|
17
|
+
from ._version import MIN_PYTHON as _MIN_PYTHON
|
|
18
|
+
|
|
19
|
+
if _sys.version_info < _MIN_PYTHON:
|
|
20
|
+
raise ImportError(
|
|
21
|
+
"os-optics needs Python {0}.{1} or newer; this interpreter is Python {2} ({3}). Install it with a supported "
|
|
22
|
+
"Python: 'uv tool install \"os-optics[protected]\"' (uv selects or downloads a compatible Python), or create "
|
|
23
|
+
"a virtual environment from Python {0}.{1}+ and run 'python -m pip install \"os-optics[protected]\"' in it."
|
|
24
|
+
.format(*_MIN_PYTHON, ".".join(str(p) for p in _sys.version_info[:3]), _sys.executable)
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
from ._version import ENGINE_VERSION, MODEL_VERSIONS, NUMERICAL_CONFIG_VERSION, SCHEMA_VERSION, __version__
|
|
28
|
+
from .config import DEFAULT_NUMERICAL_CONFIG, NumericalConfig
|
|
29
|
+
from .contracts.request import EngineConfiguration, ValidationRequest
|
|
30
|
+
from .contracts.results import ValidationResult
|
|
31
|
+
from .errors import ErrorCode, Status, ValidationIssue
|
|
32
|
+
from .validation import (
|
|
33
|
+
RAY_PATHS_VERSION,
|
|
34
|
+
PupilRayPath,
|
|
35
|
+
RayPath,
|
|
36
|
+
RayPathTrace,
|
|
37
|
+
trace_ray_paths,
|
|
38
|
+
validate,
|
|
39
|
+
validate_json,
|
|
40
|
+
validate_with_ray_paths,
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
__all__ = [
|
|
44
|
+
"__version__",
|
|
45
|
+
"ENGINE_VERSION",
|
|
46
|
+
"SCHEMA_VERSION",
|
|
47
|
+
"NUMERICAL_CONFIG_VERSION",
|
|
48
|
+
"MODEL_VERSIONS",
|
|
49
|
+
"NumericalConfig",
|
|
50
|
+
"DEFAULT_NUMERICAL_CONFIG",
|
|
51
|
+
"EngineConfiguration",
|
|
52
|
+
"ValidationRequest",
|
|
53
|
+
"ValidationResult",
|
|
54
|
+
"ValidationIssue",
|
|
55
|
+
"ErrorCode",
|
|
56
|
+
"Status",
|
|
57
|
+
"validate",
|
|
58
|
+
"validate_json",
|
|
59
|
+
"validate_with_ray_paths",
|
|
60
|
+
"trace_ray_paths",
|
|
61
|
+
"RAY_PATHS_VERSION",
|
|
62
|
+
"PupilRayPath",
|
|
63
|
+
"RayPath",
|
|
64
|
+
"RayPathTrace",
|
|
65
|
+
]
|
os_optics/__main__.py
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
{
|
|
2
|
+
"files": {
|
|
3
|
+
"shared_contracts/assembly_detail/__init__.py": {
|
|
4
|
+
"sha256": "f25c27b6af1a786f2d91cea35484b9502ecaa7470a21eac186460475b0ddf3dc"
|
|
5
|
+
},
|
|
6
|
+
"shared_contracts/assembly_detail/detail.py": {
|
|
7
|
+
"sha256": "43b4fdadd739027a6d8e4fcfbeca527212dc564f22e657392f88760a81f6844d"
|
|
8
|
+
},
|
|
9
|
+
"shared_contracts/assembly_detail/drawing.py": {
|
|
10
|
+
"sha256": "14336e6b2659cf0d0195c9038d613a09f89bd0fe75a4641bcb60d61243a137e2"
|
|
11
|
+
},
|
|
12
|
+
"shared_contracts/assembly_detail/verify.py": {
|
|
13
|
+
"sha256": "b2677520ecaa6b91bb98995c1ef13cbc39fb15574a4ced2b80c927ea1be28ef8"
|
|
14
|
+
},
|
|
15
|
+
"shared_contracts/assembly_preview/__init__.py": {
|
|
16
|
+
"sha256": "e399a7b316a13e8f06408c3b73441584d57c918b6489ed2bed6d1710038c22ad"
|
|
17
|
+
},
|
|
18
|
+
"shared_contracts/assembly_preview/manifest.py": {
|
|
19
|
+
"sha256": "f8463be37d1a31f8ce5258b9b91620dfdc88266452318fc0c28956c023e62c65"
|
|
20
|
+
},
|
|
21
|
+
"shared_contracts/assembly_preview/package.py": {
|
|
22
|
+
"sha256": "54ac77fb60e330999549dac8761edb014238fb068204712a455175294ac77867"
|
|
23
|
+
},
|
|
24
|
+
"shared_contracts/assembly_preview/scene.py": {
|
|
25
|
+
"sha256": "fddef5c34c7c52e4f729fe42a0e9ed7d19d4bbfba86b67cf430e1dabc7898289"
|
|
26
|
+
},
|
|
27
|
+
"shared_contracts/assembly_preview/validation.py": {
|
|
28
|
+
"sha256": "31b45137972dc70c16cc6e0fa31b5a241adc6371eada6256086f510dc0a98282"
|
|
29
|
+
},
|
|
30
|
+
"shared_contracts/base.py": {
|
|
31
|
+
"sha256": "91872f403ab5bd60e191aba9c678da3cff959510be96b83751ec4ded17b9fd15"
|
|
32
|
+
},
|
|
33
|
+
"shared_contracts/client_assembly_artifact/__init__.py": {
|
|
34
|
+
"sha256": "38a80f528f6cc1f259a6fbc35a0b16e3f883e3dc6625674563236d60fce3d877"
|
|
35
|
+
},
|
|
36
|
+
"shared_contracts/client_assembly_artifact/manifest.py": {
|
|
37
|
+
"sha256": "8da2304945abecddc3d79a1ffeeb4582e05468a7a3b2f4012099f0db36ca632e"
|
|
38
|
+
},
|
|
39
|
+
"shared_contracts/common/__init__.py": {
|
|
40
|
+
"sha256": "ddf352172fd402fbd7630f8558f09d070d8d93de5c78b024d3aeacc47d6a886c"
|
|
41
|
+
},
|
|
42
|
+
"shared_contracts/common/_osc1_numbers.py": {
|
|
43
|
+
"sha256": "6f1d260101f53286fed7e22c0202fd37145284c487811acabc4229522db43ce1"
|
|
44
|
+
},
|
|
45
|
+
"shared_contracts/common/decimal_string.py": {
|
|
46
|
+
"sha256": "349918de473485480ef009d9e446e3f9f689995c83475f11ed4c86be8e1614ab"
|
|
47
|
+
},
|
|
48
|
+
"shared_contracts/common/frozen_string_map.py": {
|
|
49
|
+
"sha256": "8c5deee99ef308793f619b49673f2dc7341bf54afa42bf5fc0f748f548d11aa0"
|
|
50
|
+
},
|
|
51
|
+
"shared_contracts/common/geometry.py": {
|
|
52
|
+
"sha256": "95780ad905fde84049aa62ec3deb0da2f28b3a62f4e3ff9cfb3484b1ff4df1eb"
|
|
53
|
+
},
|
|
54
|
+
"shared_contracts/common/hashes.py": {
|
|
55
|
+
"sha256": "3113f9bea2ba9148f83fd9ceba5a0605d2c549c99113ded0fa502c14f3cf53bf"
|
|
56
|
+
},
|
|
57
|
+
"shared_contracts/common/identifiers.py": {
|
|
58
|
+
"sha256": "019d1a4c16116375dd6ce5fb18af91d1a0572ec6b68b12be89a48a049980bc9a"
|
|
59
|
+
},
|
|
60
|
+
"shared_contracts/common/ordering.py": {
|
|
61
|
+
"sha256": "65016689504d009e32fa420dae9ba8d5107b90bf04d639128469e7e224c45253"
|
|
62
|
+
},
|
|
63
|
+
"shared_contracts/common/osc1.py": {
|
|
64
|
+
"sha256": "ea62eb3b63edb8d9d5aa45f3da1de2a1b0492abe03406f15605e4d4f2e438b08"
|
|
65
|
+
},
|
|
66
|
+
"shared_contracts/common/safe_int.py": {
|
|
67
|
+
"sha256": "daf26aec847b09265af7bc37ffaa8e859edfff584e794a5654e6261519f18392"
|
|
68
|
+
},
|
|
69
|
+
"shared_contracts/common/timestamps.py": {
|
|
70
|
+
"sha256": "f33b597a04c7d44e247b8bc13712990d35c7168f6077d9d220f457bb03498db9"
|
|
71
|
+
},
|
|
72
|
+
"shared_contracts/common/unknown.py": {
|
|
73
|
+
"sha256": "a76d5622de9eba483702d1479de682dd9bece6ce3da783205a12a7a731fd1fb5"
|
|
74
|
+
},
|
|
75
|
+
"shared_contracts/common/versioning.py": {
|
|
76
|
+
"sha256": "8c039e5d0176784a4e9e4884688fe1a9446c22b04d79f4a3d2a23cb9b13da35c"
|
|
77
|
+
},
|
|
78
|
+
"shared_contracts/design_catalog/__init__.py": {
|
|
79
|
+
"sha256": "9efa0a0f409d717e728bbe0a993fea70214a699ff64b5c1a62a40f3d5f5624e3"
|
|
80
|
+
},
|
|
81
|
+
"shared_contracts/design_catalog/enums.py": {
|
|
82
|
+
"sha256": "138bfd02ecd14e3d42e00d0c360c66b404cc7544ea56c9d5b7a6d5c19b6ef271"
|
|
83
|
+
},
|
|
84
|
+
"shared_contracts/design_catalog/manifest.py": {
|
|
85
|
+
"sha256": "30aaf7a965e5d9292fedde6a246eed6d24ac41f91dc3566a62a242a34915dfbe"
|
|
86
|
+
},
|
|
87
|
+
"shared_contracts/design_catalog/optical_catalog.py": {
|
|
88
|
+
"sha256": "12596468fec693537990727cd097b3e4562a2c845495a26db64a26798f04fe4e"
|
|
89
|
+
},
|
|
90
|
+
"shared_contracts/optical_design/__init__.py": {
|
|
91
|
+
"sha256": "20944c36a75eefe533612334c87d14dd44938dd55a1f0d995bdf954e4062d925"
|
|
92
|
+
},
|
|
93
|
+
"shared_contracts/optical_design/_ordering.py": {
|
|
94
|
+
"sha256": "0c9e65e49056379b3fc5d74f1a18e2db987fe8a3bb3368c747730c9c120ebc8e"
|
|
95
|
+
},
|
|
96
|
+
"shared_contracts/optical_design/component.py": {
|
|
97
|
+
"sha256": "489621d8ac3bc76dc32701c11b2dfdb63ee38bf658a1cc6a666ea8239be517e7"
|
|
98
|
+
},
|
|
99
|
+
"shared_contracts/optical_design/compute_budget.py": {
|
|
100
|
+
"sha256": "e5fc941b045dd906f3a505da99de3aa71eb998cc6c53fd714512c69e1c94b233"
|
|
101
|
+
},
|
|
102
|
+
"shared_contracts/optical_design/design_content.py": {
|
|
103
|
+
"sha256": "bc16d05be05e04493ff26e0bc7e4fe0d25fb5682a8ce41ad473d39575798b588"
|
|
104
|
+
},
|
|
105
|
+
"shared_contracts/optical_design/dof.py": {
|
|
106
|
+
"sha256": "72ae9024ce6e2ff32182b2707ac597dd27fd08300986434868479e7349089fe2"
|
|
107
|
+
},
|
|
108
|
+
"shared_contracts/optical_design/local_validation.py": {
|
|
109
|
+
"sha256": "589c9b51273dddee7fccda3006eaac136b846eaa44de489e4aed92278c1e30e7"
|
|
110
|
+
},
|
|
111
|
+
"shared_contracts/optical_design/optical_model.py": {
|
|
112
|
+
"sha256": "e4fa8d3b6668b9244bc2c974d66541e51c0b133fa3ed7d1d848ae28ff9394676"
|
|
113
|
+
},
|
|
114
|
+
"shared_contracts/optical_design/project.py": {
|
|
115
|
+
"sha256": "8bb6415af8ba9bc474aa79c3cd92bf68e9e40859b58f2056d043ebaecf571ba4"
|
|
116
|
+
},
|
|
117
|
+
"shared_contracts/optical_design/scientific_result.py": {
|
|
118
|
+
"sha256": "d3cb284eda3099aaf55f4e0787bd5bca6f6bd8f0c1d3288d3675e30555b8c3fd"
|
|
119
|
+
},
|
|
120
|
+
"shared_contracts/optical_design/source.py": {
|
|
121
|
+
"sha256": "a771353876db440dba3821a162a7e888ca13b1dec80c8449f160c8f03c0e0448"
|
|
122
|
+
},
|
|
123
|
+
"shared_contracts/optical_design/workspace.py": {
|
|
124
|
+
"sha256": "4f4f0e51dc9684777d18688a4b733528b3b37ed62c14e6fb1fabf3d05711b851"
|
|
125
|
+
},
|
|
126
|
+
"shared_contracts/optical_layout/__init__.py": {
|
|
127
|
+
"sha256": "185df9517389e6a5d2f19cd6d09af7f2c56029ce90bce89ab31920469a5cd0fb"
|
|
128
|
+
},
|
|
129
|
+
"shared_contracts/optical_layout/drawing.py": {
|
|
130
|
+
"sha256": "5002aa975675ce7a112c542690982a24dbddad4befedf2c916c53ea57c462997"
|
|
131
|
+
},
|
|
132
|
+
"shared_contracts/optical_layout/package.py": {
|
|
133
|
+
"sha256": "23c969fc10be518f7a581c574b9ab0e353f79d74360c60f495ebeee3de0e575e"
|
|
134
|
+
},
|
|
135
|
+
"shared_contracts/optical_view/__init__.py": {
|
|
136
|
+
"sha256": "a45aa3c22f5fd0a5761a2154dfe7f1b1f051926aaebd008dd7085b9471e24dbb"
|
|
137
|
+
},
|
|
138
|
+
"shared_contracts/optical_view/scene.py": {
|
|
139
|
+
"sha256": "f321cad56ab338c481d85b3abd36e8034c2a94bff3a97101d34f42dab73469e3"
|
|
140
|
+
},
|
|
141
|
+
"shared_contracts/protected_assembly_delivery/__init__.py": {
|
|
142
|
+
"sha256": "c51696f2936339942dce4cde33914626f91a88c6abe556203b01dac76bae6f98"
|
|
143
|
+
},
|
|
144
|
+
"shared_contracts/protected_assembly_delivery/_common.py": {
|
|
145
|
+
"sha256": "920c4f9c594d79cf5f5f28d8763c8559c9abecea1053f96218ddc8f77efc92f4"
|
|
146
|
+
},
|
|
147
|
+
"shared_contracts/protected_assembly_delivery/detail_envelope.py": {
|
|
148
|
+
"sha256": "8551e8581f32900fef4d88750732379244ee3a2657263d93b742bfed3860c8b9"
|
|
149
|
+
},
|
|
150
|
+
"shared_contracts/protected_assembly_delivery/envelope.py": {
|
|
151
|
+
"sha256": "30b0bc148248e7620122bb074493e239ed8fd4a965b2dcb950491bbd379183d0"
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"""OpenSci contracts bundled with os-optics (generated; do not edit).
|
|
2
|
+
|
|
3
|
+
``shared_contracts/`` holds the contract models the local workflow reads, writes and verifies: the pure-optical Project
|
|
4
|
+
and its Local Validation record (``optical_design``), the public optical catalog and its release manifest
|
|
5
|
+
(``design_catalog``), the Optical Simulation View scene (``optical_view``), the Assembly Preview Package and its local
|
|
6
|
+
validation result (``assembly_preview``), the Assembly Detail Package and the local Detailed Assembly Drawing outputs
|
|
7
|
+
(``assembly_detail``), the protected delivery envelope and decryption grant a client opens in memory
|
|
8
|
+
(``protected_assembly_delivery``), the manifest of a client-generated artifact upload (``client_assembly_artifact``) and
|
|
9
|
+
the Optical Layout Package of an optics-only purchase with its local drawing manifest (``optical_layout``), together
|
|
10
|
+
with the common modules they use. ``MANIFEST.json`` lists the SHA-256 of every contract module except the two
|
|
11
|
+
generated package ``__init__`` files. The public optical catalog itself is versioned data kept in a local catalog store
|
|
12
|
+
(``os_optics.catalog``), not part of this package.
|
|
13
|
+
|
|
14
|
+
This package is an implementation detail: use ``os_optics.local``, ``os_optics.protected_delivery`` and
|
|
15
|
+
``os_optics.client_artifacts`` rather than importing from here.
|
|
16
|
+
"""
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"""OpenSci contract families bundled with os-optics (generated; do not edit).
|
|
2
|
+
|
|
3
|
+
Present: the pure-optical design contracts (``optical_design``), the public optical catalog contract
|
|
4
|
+
(``design_catalog``), the Optical Simulation View scene contract (``optical_view``), the Assembly Preview Package
|
|
5
|
+
contract (``assembly_preview``), the Assembly Detail Package and local drawing output contract (``assembly_detail``),
|
|
6
|
+
the protected delivery contract a client opens (``protected_assembly_delivery``; ``cryptography`` is imported lazily,
|
|
7
|
+
only for the AES-GCM step), the client artifact upload manifest (``client_assembly_artifact``), the Optical Layout
|
|
8
|
+
Package and its local drawing manifest (``optical_layout``) and the modules they import. Nothing is re-exported here.
|
|
9
|
+
"""
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
"""Assembly Detail Package and local Detailed Assembly Drawing outputs.
|
|
2
|
+
|
|
3
|
+
* ``detail`` -- ``AssemblyDetailPackageV1``: the dimensioning supplement of exactly one verified Assembly Preview
|
|
4
|
+
Package. It adds only what the preview cannot supply deterministically -- assembly dimension references between
|
|
5
|
+
scene points with their basis -- plus binding, release and usage terms. It repeats no pose, identity, mate,
|
|
6
|
+
setting, fixation, breadboard or geometry of the preview;
|
|
7
|
+
* ``verify`` -- canonical bytes, ``build_assembly_detail`` (binding copied from the preview manifest) and
|
|
8
|
+
``verify_assembly_detail`` / ``load_assembly_detail`` against the verified preview package, with every dimension
|
|
9
|
+
measured from the preview's own poses;
|
|
10
|
+
* ``drawing`` -- ``AssemblyDrawingResultV1`` and ``AssemblyDrawingManifestV1``: what a local runtime's generated
|
|
11
|
+
drawing shows, and the local output manifest (SVG, PDF, result) that an artifact upload carries.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
from .detail import (
|
|
15
|
+
ASSEMBLY_DETAIL_FILE_NAME,
|
|
16
|
+
ASSEMBLY_DETAIL_MEDIA_TYPE,
|
|
17
|
+
ASSEMBLY_DETAIL_SCHEMA_ID,
|
|
18
|
+
ASSEMBLY_DETAIL_SCHEMA_VERSION,
|
|
19
|
+
AXIS_INDEX,
|
|
20
|
+
DETAIL_PERMITTED_USES,
|
|
21
|
+
DETAIL_USAGE_STATEMENT,
|
|
22
|
+
MAX_DETAIL_BYTES,
|
|
23
|
+
MAX_DIMENSIONS,
|
|
24
|
+
AssemblyDetailPackageV1,
|
|
25
|
+
CustomerFacingName,
|
|
26
|
+
CustomerSuppliedModelV1,
|
|
27
|
+
DetailBindingV1,
|
|
28
|
+
DetailReleaseRefV1,
|
|
29
|
+
DetailUsageTermsV1,
|
|
30
|
+
DimensionBasisV1,
|
|
31
|
+
DimensionKindV1,
|
|
32
|
+
DimensionV1,
|
|
33
|
+
MeasureAxisV1,
|
|
34
|
+
PointKindV1,
|
|
35
|
+
PointRefV1,
|
|
36
|
+
ReleaseBasisV1,
|
|
37
|
+
SettingRefV1,
|
|
38
|
+
detail_content_hash_of,
|
|
39
|
+
)
|
|
40
|
+
from .drawing import (
|
|
41
|
+
ASSEMBLY_DRAWING_GENERATOR_ID,
|
|
42
|
+
ASSEMBLY_DRAWING_MANIFEST_SCHEMA_ID,
|
|
43
|
+
ASSEMBLY_DRAWING_RESULT_SCHEMA_ID,
|
|
44
|
+
ASSEMBLY_DRAWING_SCHEMA_VERSION,
|
|
45
|
+
DRAWING_MANIFEST_PATH,
|
|
46
|
+
DRAWING_DESCRIPTION,
|
|
47
|
+
DRAWING_LOCALES,
|
|
48
|
+
DRAWING_PDF_PATH,
|
|
49
|
+
DRAWING_RESULT_PATH,
|
|
50
|
+
DRAWING_SVG_PATH,
|
|
51
|
+
JSON_MEDIA_TYPE,
|
|
52
|
+
LEGACY_DRAWING_ROLE_ALIASES,
|
|
53
|
+
PDF_MEDIA_TYPE,
|
|
54
|
+
SVG_MEDIA_TYPE,
|
|
55
|
+
AssemblyDrawingManifestV1,
|
|
56
|
+
AssemblyDrawingResultV1,
|
|
57
|
+
AssemblyStepV1,
|
|
58
|
+
CustomerSuppliedRowV1,
|
|
59
|
+
DrawingBalloonV1,
|
|
60
|
+
DrawingBindingV1,
|
|
61
|
+
DrawingDimensionV1,
|
|
62
|
+
DrawingFileRoleV1,
|
|
63
|
+
DrawingGeneratorRefV1,
|
|
64
|
+
DrawingLocaleV1,
|
|
65
|
+
DrawingOutputFileV1,
|
|
66
|
+
DrawingSheetV1,
|
|
67
|
+
DrawingStatusV1,
|
|
68
|
+
DrawingValidationRefV1,
|
|
69
|
+
DrawingViewKindV1,
|
|
70
|
+
DrawingViewV1,
|
|
71
|
+
OpticalSpacingRowV1,
|
|
72
|
+
PartsLegendRowV1,
|
|
73
|
+
PartsLegendV1,
|
|
74
|
+
StepActionV1,
|
|
75
|
+
drawing_manifest_for,
|
|
76
|
+
verify_drawing_outputs,
|
|
77
|
+
)
|
|
78
|
+
from .verify import (
|
|
79
|
+
ALLOWED_BASES,
|
|
80
|
+
MEASURE_TOLERANCE_MM,
|
|
81
|
+
AssemblyDetailPackageError,
|
|
82
|
+
MeasuredDimensionV1,
|
|
83
|
+
VerifiedAssemblyDetailV1,
|
|
84
|
+
build_assembly_detail,
|
|
85
|
+
detail_file_bytes,
|
|
86
|
+
load_assembly_detail,
|
|
87
|
+
measure,
|
|
88
|
+
point_in_world,
|
|
89
|
+
verify_assembly_detail,
|
|
90
|
+
)
|
|
91
|
+
|
|
92
|
+
__all__ = [
|
|
93
|
+
"ALLOWED_BASES",
|
|
94
|
+
"ASSEMBLY_DETAIL_FILE_NAME",
|
|
95
|
+
"ASSEMBLY_DETAIL_MEDIA_TYPE",
|
|
96
|
+
"ASSEMBLY_DETAIL_SCHEMA_ID",
|
|
97
|
+
"ASSEMBLY_DETAIL_SCHEMA_VERSION",
|
|
98
|
+
"ASSEMBLY_DRAWING_GENERATOR_ID",
|
|
99
|
+
"ASSEMBLY_DRAWING_MANIFEST_SCHEMA_ID",
|
|
100
|
+
"ASSEMBLY_DRAWING_RESULT_SCHEMA_ID",
|
|
101
|
+
"ASSEMBLY_DRAWING_SCHEMA_VERSION",
|
|
102
|
+
"AXIS_INDEX",
|
|
103
|
+
"DETAIL_PERMITTED_USES",
|
|
104
|
+
"DETAIL_USAGE_STATEMENT",
|
|
105
|
+
"DRAWING_MANIFEST_PATH",
|
|
106
|
+
"DRAWING_DESCRIPTION",
|
|
107
|
+
"DRAWING_LOCALES",
|
|
108
|
+
"DRAWING_PDF_PATH",
|
|
109
|
+
"DRAWING_RESULT_PATH",
|
|
110
|
+
"DRAWING_SVG_PATH",
|
|
111
|
+
"JSON_MEDIA_TYPE",
|
|
112
|
+
"LEGACY_DRAWING_ROLE_ALIASES",
|
|
113
|
+
"MAX_DETAIL_BYTES",
|
|
114
|
+
"MAX_DIMENSIONS",
|
|
115
|
+
"MEASURE_TOLERANCE_MM",
|
|
116
|
+
"PDF_MEDIA_TYPE",
|
|
117
|
+
"SVG_MEDIA_TYPE",
|
|
118
|
+
"AssemblyDetailPackageError",
|
|
119
|
+
"AssemblyDetailPackageV1",
|
|
120
|
+
"AssemblyDrawingManifestV1",
|
|
121
|
+
"AssemblyDrawingResultV1",
|
|
122
|
+
"AssemblyStepV1",
|
|
123
|
+
"CustomerFacingName",
|
|
124
|
+
"CustomerSuppliedModelV1",
|
|
125
|
+
"CustomerSuppliedRowV1",
|
|
126
|
+
"DetailBindingV1",
|
|
127
|
+
"DetailReleaseRefV1",
|
|
128
|
+
"DetailUsageTermsV1",
|
|
129
|
+
"DimensionBasisV1",
|
|
130
|
+
"DimensionKindV1",
|
|
131
|
+
"DimensionV1",
|
|
132
|
+
"DrawingBalloonV1",
|
|
133
|
+
"DrawingBindingV1",
|
|
134
|
+
"DrawingDimensionV1",
|
|
135
|
+
"DrawingFileRoleV1",
|
|
136
|
+
"DrawingGeneratorRefV1",
|
|
137
|
+
"DrawingLocaleV1",
|
|
138
|
+
"DrawingOutputFileV1",
|
|
139
|
+
"DrawingSheetV1",
|
|
140
|
+
"DrawingStatusV1",
|
|
141
|
+
"DrawingValidationRefV1",
|
|
142
|
+
"DrawingViewKindV1",
|
|
143
|
+
"DrawingViewV1",
|
|
144
|
+
"MeasureAxisV1",
|
|
145
|
+
"MeasuredDimensionV1",
|
|
146
|
+
"OpticalSpacingRowV1",
|
|
147
|
+
"PartsLegendRowV1",
|
|
148
|
+
"PartsLegendV1",
|
|
149
|
+
"PointKindV1",
|
|
150
|
+
"PointRefV1",
|
|
151
|
+
"ReleaseBasisV1",
|
|
152
|
+
"SettingRefV1",
|
|
153
|
+
"StepActionV1",
|
|
154
|
+
"VerifiedAssemblyDetailV1",
|
|
155
|
+
"build_assembly_detail",
|
|
156
|
+
"detail_content_hash_of",
|
|
157
|
+
"detail_file_bytes",
|
|
158
|
+
"drawing_manifest_for",
|
|
159
|
+
"load_assembly_detail",
|
|
160
|
+
"measure",
|
|
161
|
+
"point_in_world",
|
|
162
|
+
"verify_assembly_detail",
|
|
163
|
+
"verify_drawing_outputs",
|
|
164
|
+
]
|