Paged Out! is a new experimental (one article == one page) free magazine about programming (especially programming tricks!), hacking, security hacking, retro computers, modern computers, electronics, demoscene, and other similar topics.
This post is part of a series - go here for the index. Welcome back! The previous post gave us a lot of theoretical groundwork on triangles. This time, let's turn it into a working triangle rasterizer. Again, no profiling or optimization this time, but there will be code, and it should get us set…
Great reference with many open-source useful plotting and visualization tools Over the years many different plotting modules and packages have been developed for Python. For most of that time there was no clear favorite package, but recently matplotlib has become the most widely used. Nevertheless, many of the others are still available and may suit your tastes or needs better. Some of these are interfaces to existing plotting libraries while others are Python-centered new implementations.
Veusz is a GUI scientific plotting and graphing package. It is designed to produce publication-ready Postscript or PDF output. SVG, EMF and bitmap formats export are also supported. The program runs under Unix/Linux, Windows or Mac OS X, and binaries are provided. Data can be read from text, CSV or FITS files, and data can be manipulated or examined from within the application.
The goal of the CGAL Open Source Project is to provide easy access to efficient and reliable geometric algorithms in the form of a C++ library. CGAL is used in various areas needing geometric computation, such as: computer graphics, scientific visualization, computer aided design and modeling, geographic information systems, molecular biology, medical imaging, robotics and motion planning, mesh generation, numerical methods... More on the projects using CGAL web page.
matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell (ala matlab or mathematica), web application servers, and six graphical user interface toolkits. matplotlib tries to make easy things easy and hard things possible. You can generate plots, histograms, power spectra, bar charts, errorcharts, scatterplots, etc, with just a few lines of code.
NodeBox is a Mac OS X application that lets you create 2D visuals (static, animated or interactive) using Python programming code and export them as a PDF or a QuickTime movie. NodeBox is free and well-documented.
So, a while ago, I’ve decided to code a library to plot some information I had. The idea was to create simple graphics in a way they would be easy to create, beautiful and good to present to people with no or few backgrounds on math and computers.
Michael Abrash's classic Graphics Programming Black Book is a compilation of Michael's writings on assembly language and graphics programming (including from his "Graphics Programming" column in Dr. Dobb's Journal
Processing is an open source programming language and environment for people who want to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production. It is created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook and professional production tool. Processing is an alternative to proprietary software tools in the same domain.
Processing is free to download and available for GNU/Linux, Mac OS X, and Windows.
Open GPU Documentation: This page contains register level documentation on AMD graphics processors for chip initialization, displays, and overlays. Documents for mobile chips are a superset of the desktop chip documentation; they contain all the desktop chip information as well as any relevant mobile additions.
Consistent with many Linux commands and drivers, there is a manual page with detailed information available for this driver. This is a good place to start to manually set up and trouble shoot the driver - the Option "MonitorLayout" is a good candidate to
OpenVIDIA : GPU accelerated Computer Vision Library The OpenVIDIA project implements computer vision algorithms on computer graphics hardware, using OpenGL and Cg. The project provides useful example programs which run real time computer vision algorit
The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. OpenGL core and extension functionality is exposed in a single header file. GLEW has been tested on a variety of operating systems, including Windows, Linux, Mac OS X, FreeBSD, Irix, and Solaris.
Raster to vector conversion program for Windows 95/98/NT that takes 1 bit x pixel BMP or TIFF images and emit HPGL, DXF, EMF or TXT files. Ras2Vec is released with full source code under GPL license
Netpbm is a toolkit for manipulation of graphic images, including conversion of images between a variety of different formats. There are over 300 separate tools in the package including converters for about 100 graphics formats. Examples of the sort of image manipulation we're talking about are: Shrinking an image by 10%; Cutting the top half off of an image; Making a mirror image; Creating a sequence of images that fade from one image to another.