acornejo / cdl Goto Github PK
View Code? Open in Web Editor NEWC++ Development Library
License: GNU General Public License v2.0
C++ Development Library
License: GNU General Public License v2.0
CDL - C++ Development Library ------------------------------ This library is intended to simplify development of any application, in particular mathematical and graphical applications. One of my principal concerns is portability. When using this library the same source code can be compiled under Windows, Linux or Solaris and will produce exactly the same output. The library is divided into the following modules: Window ------ A wrapper for opening OpenGL and buffered windows, these windows handle all keyboard and mouse events internally. All windows created with this class will be fixed size, at creation time the programmer can choose to create the window normally or fullscreened. There are some other options when creating the windows, such as hiding the cursor or centering it permanently. The window interface is actually very simple it hides all OS specific details, it is as optimized as possible without loosing generality. Image ----- The image class is able to load and save images in a variety of formats, including jpeg, png, tiff, tga, pcx, bmp, xpm and ppm. You can convert between formats by just loading in one format and saving in another, completly transparent to the programmer. This class also allows for some basic image filtering (BLUR, SHARPEN, EMBOSS, etc), blending, converting between color modes (GRAY, RGB, BGR, RGBA, etc), modulating, interlacing, flipping, etc. Util ---- In this module I've included some of the most usefull but usually unportable code to do all kinds of programs. Most of the classes included in here are for multithreaded applications, and these include a class Thread, Mutex and CondVar (Condition Variable). There are also classes for streams (Stream, File, etc) and sockets for network programming (Socket). I've also included a class to handle configuration files in a simple yet powerfull manner, this class is called Variable, and it reads and writes XML style files. Also a Timer class with milli second accuracy. Math ---- Well by the na me you've probably guessed what we have in this module, but I'll list it anyway. A complex number class, a FFT class (Fast Fourier Transform, and obviously its inverse, both in 1 and 2 dimensions), a Quaternion class, a Random number class which can generate random numbers in quite a few distributions (including Possion, Gaussian,etc). A vector and matrix class, with optimized versions for 2, 3 and 4 dimensions. And finally a set of geometry class for primitive intersection, with Ray, Sphere, Plane, Polygon, etc).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.