Comments (1)
Can you elaborate on what you mean by "types like all matrixes"? Owned matrices of constant size appear to expose const
constructors for sizes up to 6x6. Not every matrix can be initialized in a const
context because their data may not be const
; for example, you can't have a dynamic matrix in a const
, because its storage is a Vec
, which would require a dynamic allocation.
I suspect the issue with making identity
const
is that it's a generic function over the scalar field; it invokes Zero::zero
and One::one
to populate the relevant entries of the matrix. Without a stable way to parameterize over specifically-const
implementations of these trait functions I don't think it's possible to produce the relevant const?
annotation on identity
. Something like from_diagonal
but that allows specifying both the on-diagonal and off-diagonal entries would be possible, but currently you can explicitly write new(1.0, 0.0, 0.0, 1.0)
to get a const
identity matrix.
I don't believe Rust has custom literals at all, but you can get a similar effect using the matrix!
macro. It invokes new
and so should be usable in a const
context when invoking a const
new
. So you should also be able to write matrix![1.0, 0.0; 0.0, 1.0]
to produce a 2x2 identity matrix.
from nalgebra.
Related Issues (20)
- Add a way to get a column slice HOT 2
- Missed minor version bump? HOT 2
- Wrong result of min() and max() in nalgebra::base::min_max::Matrix when f64::NAN is included HOT 4
- CUDA target is unmaintained HOT 1
- lapack qr factorization HOT 1
- When using nalgebra_glm, how to call transform_point?
- Planes and Culling Frustums HOT 1
- Unable to multiply complex matrix with complex scalar from the left HOT 2
- Allow bitshifting matricies if they are integers HOT 3
- SymmetricEigen produces wrong sign of eigenvector values on Matrix6 HOT 4
- Wrong eigenvector sorting in nalgebra::SymmetricEigen, while correct in nalgebra_lapack::SymmetricEigen HOT 1
- Make some RealField functions const HOT 1
- `tr_solve_upper_triangular` proptest failure
- Hash for Matrix doesn't match `Borrow<[[T; R]; C]>` semantics
- Cannot compute the SVD of an empty matrix. HOT 2
- Matrix Display output alignment is not Unicode-aware HOT 4
- Multiply matrix by vector row-wise HOT 6
- `normalize` docs need expansion HOT 1
- Test flake in `f64::symmetric_eigen`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nalgebra.