Skip to content

Latest commit

 

History

31 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

types-tde4

types-tde4

License Version Related Related Python PyPI

This package contains stubs with Waterloo Docstrings for the tde4 module from 3DE4's Python API.

It is useful when writing 3DE4 scripts outside the embedded 3DE4 Python editor, for example in VS Code. After installation, language servers such as Pylance can use the stubs to provide function signatures, type information, auto-completion, and inline documentation for tde4 API calls.

The package does not provide a runtime implementation of tde4. Scripts still have to run inside 3DEqualizer4, or in an environment where 3DEqualizer4 provides the extension module.

Use Cases

Static Type Checking with mypy

Once the package is installed, type annotations can be validated with a static type checker. Consider the following correctly annotated test script:

from __future__ import annotations

import tde4

def create_ref_camera() -> tde4.CameraID_t:
    return tde4.createCamera("REF_FRAME")

def camera_type(camera_id: tde4.CameraID_t) -> tde4.CameraType_t:
    return tde4.getCameraType(camera_id)

def maybe_current_camera_type() -> tde4.CameraType_t | None:
    camera_id = tde4.getCurrentCamera()
    if camera_id is None:
        return None
    return camera_type(camera_id)

Without types-tde4 installed in the Python environment used by mypy, the check fails because mypy cannot find stubs for the extension module:

/.../test_types_tde4_simplified.py:3: error: Cannot find implementation or library stub for module named "tde4"  [import-not-found]
/.../test_types_tde4_simplified.py:3: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-imports
Found 1 error in 1 file (checked 1 source file)

After installing types-tde4 into that same Python environment, mypy can resolve the tde4 stubs automatically:

Success: no issues found in 1 source file

VS Code / Pylance

With types-tde4 installed, Pylance in VS Code can find signatures and docstrings for functions in tde4. Tooltip rendering is not perfect because the Waterloo Docstring format is not yet supported by Pylance.

types-tde4

Installation

pip install types-tde4

About

Stubs with Waterloo Docstrings for 3DE4 Python

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages