MCPcopy Create free account
hub / github.com/AcademySoftwareFoundation/Imath

github.com/AcademySoftwareFoundation/Imath @v3.2.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.2.2 ↗ · + Follow
2,545 symbols 5,958 edges 245 files 82 documented · 3% updated 18d agov3.2.2 · 2025-10-08★ 47955 open issues

Browse by type

Functions 2,179 Types & classes 366
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

License CII Best Practices OpenSSF Scorecard Build Status Analysis Status Quality Gate Status

Imath

Imath is a basic, light-weight, and efficient C++ representation of 2D and 3D vectors and matrices and other simple but useful mathematical objects, functions, and data types common in computer graphics applications, including the “half” 16-bit floating-point type.

Imath also includes optional python bindings for all types and functions, including optimized implementations of vector and matrix arrays.

Project Mission

The goals of the Imath project are simplicity, ease of use, correctness and verifiability, performance, and breadth of adoption. Imath is not intended to be a comprehensive linear algebra or numerical analysis package.

Project Governance

OpenEXR is a project of the Academy Software Foundation. See the project's governance policies, contribution guidelines, and code of conduct for more information.

The OpenEXR project is dedicated to promoting a harassment-free community. Read our code of conduct.

Supported Platforms

Imath builds on Linux, macOS, Microsoft Windows, and is cross-compilable on other systems.

A Note about Versioning

Because Imath was originally distributed as a part of OpenEXR, it has already had two major release versions, as a part of OpenEXR v1 and v2. To avoid confusion with these original releases, the first version of Imath released independently of OpenEXR is Version v3.0. To be clear, the versioning and release of Imath is no longer tied to OpenEXR.

Quick Start

Technical documentation for the Imath classes and functions can be found at https://imath.readthedocs.io.

See the Install instructions for how to download, install, or build Imath from source.

If you encounter problems compiling code or building projects written with an earlier release of Imath, the porting guide explains some of the differences and how to address them.

Community

  • Ask a question:

  • Email: openexr-dev@lists.aswf.io

  • Slack: academysoftwarefdn#openexr

  • Attend a meeting:

  • Technical Steering Committee meetings are open to the public, fortnightly on Thursdays, 1:30pm Pacific Time.

  • Calendar: https://lists.aswf.io/g/openexr-dev/calendar

  • Report a bug:

  • Submit an Issue: https://github.com/AcademySoftwareFoundation/Imath/issues

  • Report a security vulnerability:

  • Email to security@openexr.com

  • Contribute a Fix, Feature, or Improvement:

  • Read the Contribution Guidelines and Code of Conduct

  • Sign the Contributor License Agreement

  • Submit a Pull Request: https://github.com/AcademySoftwareFoundation/Imath/pulls

Resources

License

Imath is released under OpenEXR's BSD-3-Clause license.


aswf

Core symbols most depended-on inside this repo

Shape

Function 1,552
Method 627
Class 362
Enum 4

Languages

C++85%
Python14%
C1%

Modules by API surface

src/pybind11/PyBindImathTest/pyBindImathTest.py151 symbols
src/python/PyImathTest/pyImathTest.py149 symbols
src/python/PyImath/PyImathAutovectorize.h107 symbols
src/python/PyImath/PyImathMatrix44.cpp95 symbols
src/python/PyImath/PyImathFixedArrayTraits.h95 symbols
src/python/PyImath/PyImathQuat.cpp93 symbols
src/python/PyImath/PyImathOperators.h78 symbols
src/python/PyImath/PyImathFunOperators.h76 symbols
src/python/PyImath/PyImathMatrix33.cpp66 symbols
src/python/PyImath/PyImathVec2Impl.h62 symbols
src/python/PyImath/PyImathVec3Impl.h56 symbols
src/python/PyImath/PyImathVec4Impl.h52 symbols

For agents

$ claude mcp add Imath \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page