1 Repositories
In this section, repositories are summarized by programming languages.
1.1 C++
1.1.1 Libraries
https://github.com/Hasenpfote/dualcomplex/
“dualcomplex” is a cross-platform C++ template library that provides operations for dual complex numbers. It can be used as a header-only library and supports C++11 or later.
https://github.com/Hasenpfote/dualquat/
“dualquat” is a cross-platform C++ template library that provides operations on dual quaternions using Eigen. It can be used as a header-only library and supports C++11 and later.
https://github.com/Hasenpfote/plucker/
“plucker” is a cross-platform C++ template library that provides operations on Plücker coordinates of lines. It can be used as a header-only library and supports C++11 and later.
1.1.2 Examples
https://github.com/Hasenpfote/CMakeExamples/
This is a collection of examples that use CMake for each case of a C++ project.
https://github.com/Hasenpfote/CPPExamples/
This is a collection of examples that use C++11.
BitonicSort
ComparingFloatingPointNumbers
ConvertString
ExpressionTemplate
HalfPrecisionFloatingPoint
LUDecomposition
Logger
PimplIdiom
ParseFntFile
Range
ServiceLocator
Singleton
SpecificInterface
ThreadPool
Other
https://github.com/Hasenpfote/cpp_examples/
This is a collection of examples that use C++14 or C++17.
- circular_buffer
Circular buffer implemented using only the standard library.
- stack_resource
A stack memory allocator using only the standard library.
- pubsub_event
This is a Publish-Subscribe messaging model implemented using only the standard library.
- dual
Header-only class template for dual numbers using only the standard library.
https://github.com/Hasenpfote/mark-and-sweep-gc/
This is an example of a simple mark-and-sweep garbage collection using C++.
https://github.com/Hasenpfote/OpenGLExamples/
This is a collection of examples of real-time rendering techniques using OpenGL.
It supports C++11 or later and OpenGL 4.x.
AdaptiveTerrainTessellation
BillboardBeam
Bloom
Dithering
KawaseBlur
LightStreak
RadialBlur
ToneMapping
Other
1.2 Java
1.2.1 Examples
https://github.com/Hasenpfote/RecursiveDimensionalClustering/
This is an example of Recursive Dimensional Clustering, one of the fast algorithms for finding collisions or clusters in a dataset.
1.3 Python
1.3.1 Modules
https://github.com/Hasenpfote/fpq/
This package provides modules for manipulating floating point numbers quantization using NumPy.
https://github.com/Hasenpfote/image_packer/
Pack multiple images of different sizes or formats into one image.
https://github.com/Hasenpfote/malloc_tracer/
This is a debugging tool for tracing malloc that occurs inside a function or class.
https://github.com/Hasenpfote/perfbench/
perfbench measures execution time of code snippets with Timeit and uses Plotly to visualize the results.
1.3.2 Examples
https://github.com/Hasenpfote/python-poetry-example/
A simple example of how to use pyenv + poetry + tox + pytest.
https://github.com/Hasenpfote/quaternion/
This package provides a class for manipulating quaternion objects.
2 Code snippets
This section summarizes code snippets by themes/topics.
2.1 Mathematics
Topic | Links | Language / Libraries |
---|---|---|
Complex number | Representation and interpolation of rotations | C++ |
Geometry | Delaunay triangulation | Python |
Normal vectors to a 2D curve | Python (matplotlib / numpy / sympy) | |
Normal vectors to a surface | Python (matplotlib / numpy / sympy) | |
Analysis | Taylor series | Python (matplotlib / numpy / sympy) |
Vector calculus | Laplacian (utils) | Python (matplotlib / numpy) |
Frenet–Serret formulas in 2D | Python (matplotlib / numpy / sympy) | |
Frenet–Serret formulas | Python (matplotlib / numpy / sympy) | |
Set theory | Pairing function | Python (matplotlib / numpy) |
Probability theory | Inverse transform sampling | Python (matplotlib / numpy) |
Monte Carlo Integration | Python (matplotlib / numpy / scipy) |
2.2 Physics
Topic | Links | Language / Libraries |
---|---|---|
Rigid body dynamics | Translational and rotational motions | Python (numpy) |
Translational and rotational motions (using quaternion) | Python (numpy) |
2.3 Computer science
Topic | Links | Language / Libraries |
---|---|---|
Floating point number | Floating-point comparison | C++ |
Color | CIE1931_color_space CIE_daylight_components, BabelColor_spectral_data |
Python (matplotlib / numpy / pandas / scipy) |
Noise | Perlin noise - 1D/2D/3D/4D | Python (matplotlib / numpy) |
Sort | Bitonic sort | C++ |
Russian Roulette | Thoughts on Russian Roulette | Python (altair / numpy / pandas) |
k-d tree | Thoughts on k-d tree | Python (matplotlib / numpy / anytree) |
2.4 Python
Topic | Links | Language / Libraries |
---|---|---|
Python | How to limit concurrency with asyncio | |
How to hook properties with Python3 dataclasses | ||
matplotlib | Customized colormap | |
Discrete colormap | ||
pytorch | Differential | |
Confusion matrix |